HaxeのGenericsは安全かつ簡潔
ごめんよHaxe、お前のすごさをわかったつもりでいたけど、まだまだ知らないことだらけだった。
どういうことか?
ジェネリクスを使ったコーディングに於いて、これまでこんなコードを書いてました。
class Hoge
{
function new ()
{
var param:Array = ['ein','zwei','drei'];
doSom(param);
}
function doSom(param:Array)
{
trace(param);
}
}
上記コードはAS3経験者はこうやって書いてしまうと思う。java経験者もじゃないかな?でもね、もっとシンプルでいいんだ。
class Hoge
{
function new ()
{
doSom(['ein','zwei','drei']);
}
function doSom(param:Array)
{
trace(param);
}
}
型推論の恩恵は偉大だ。doSom()の引数はArrayタイプセーフかつ可読性が高い。Commandパターンで配列にcommandを生成/挿入した後、実行する場合など、爆速でコーディングできる。非常に幸せ。

