「Java2Ruby」読了
読み終わった。
この本が言いたかったこと。
興味深かったこと。
- JavaはC++の技術者を確保する為、言語的妥協を選んだ
- Javaはスキルの未熟な技術者が失敗しないことに重点を置きすぎている(Martin Fowler)
- 本質的複雑性(業務ルール等)と非本質的複雑性(偶発的複雑性)を区別すると、Javaは後者への労力が大きい。EJBの失敗が典型(Martin Fowler)
- Javaはインフラストラクチャ構築用言語。アプリケーション開発には向かない
- 4人の低スキル技術者ではなく1人のトップレベル技術者を確保するトップヘビー戦略
- 開発期間が長いこと自体がリスク。資金の浪費、スコープリーク(仕様外の要求)が発生する
- チームがPerlやPHP,Visual Basicのような言語の発揮する短期的な生産性向上に陶酔しているような場合には、開発したアプリケーションは時が経つにつれて、だんだんと保守が難しくなるでしょう
非本質的複雑性というのが面白かったな。
ただ、OOPそのものが非本質的複雑性を含有してはいないのかしら。