型情報のあり・なし
Javaでビジネスロジックを作る場合、型情報を持つObjectでデータを定義するのが一般的です。ところが私のまわりでは型情報のないObject(Mapとか)でデータ定義をする方式が一般的です。
型情報がありの利点としては、
- コンパイル時に静的チェックができる。ランタイムだとデバッグが大変。
とよく言われていると思います。一方型情報なし派の人達は
- 型情報ありだと項目が後で追加になった場合にソースに手を入れるのがやだ。
- JavaBeanをたくさんつくることになるので管理が大変。
- 分散構成にする場合、Objectをシリアライズ・デシリアライズするために複数の筐体にモジュールを配置しないといけないのは運用上よくない。
といったことを言います。
コンパイル時にチェックが可能という利点はそれほど大きくなさそうと考えているようです。
SeasarとかDIコンテナをフルに活用した開発に早く変えたいとは思っていますが、こんなところで意見が分かれてつまずいています。