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