R・田中一郎さんのエントリに端を発した型推論の是非。
議論が盛り上がってきましたね。個人的には型推論なんて不要と考えています。
そもそも型推論なんてなんらメリットがないじゃないかと思っていたのですが、
菊池さんの仕様は変わっても真理は変わらない
を読んでなるほどと思ったわけです。
しかし、それでもやっぱり型推論は不要だと思うわけです。Javaだと(Javaに限らないけど)
List<String> list = new ArrayList<String>();
といったコードをよく記述します。変数型は具象型ではなく、抽象型のjava.util.Listとして宣言する。
そして、newするのは具象型となるわけです。具象型特有のメソッドでも使うのでない限り、より抽象的な型として
宣言し扱うのがセオリーというものです。
おや、型推論の話と似ていますね。菊池さんのエントリには
「汎用的で可搬性の高いコードを書くためには型の決定はできうる限り遅らせるべき」なのです。
という記述がありました。この話には同意します。これは抽象型であるListで変数を宣言する感性を持っている人なら
基本的にみな同意できる事項だと思います。
しかし、私は抽象型で宣言する方がvarを用いて型推論するよりもメリットがあると考えます。
このあたり抽象と具象の線引きをどこでするのかという話題でしょうが、varは抽象が過ぎると思うのです。
投稿日時 : 2007年12月26日 21:29