言語を選ぶ基準
前回のエントリで私は Ruby 党と言いながら Ruby を批判したかのようにもとれるので、改めて Web アプリにおける私の採用言語の選定基準(というほど厳密ではないが)について書いてみます。
まず、本番稼動環境がどういうところなのかというのが最大のポイントです。当たり前ですね。
- 俗にいう「ふつうの」レンタルサーバで稼動するインターネット向けサービスの場合 → PHP
- 多くても同時に使うのが10人前後ぐらいのイントラ向けサービスの場合 → Ruby(on Rails)
- インターネット向けサービスでかなり自由度のあるサーバが使える場合 → Java
- アクセス数がそんなになさそうなら Ruby on Rails。正直、高負荷下での Ruby on Rails の稼動ノウハウがまだ少ない。
それから、多人数(特に複数の会社)が関わるプロジェクトならばまず Java が選択肢にあがります。それは周辺ツールの充実さですね。Java はコーディング規約も「これ!」というのがありますし(私のオススメは↓の本)、そのチェックツール(CheckStyle)の入手性も良好です。
- 作者: 電通国際情報サービス開発技術部,エクスメディア
- 出版社/メーカー: エクスメディア
- 発売日: 2004/04
- メディア: 単行本
- 購入: 1人 クリック: 40回
- この商品を含むブログ (8件) を見る
JUnit、Maven、Continuum、FindBugs などのテストツール、構成管理ツールで高品質なものも容易に入手できます。これが Java の強み。ある程度以上の規模になってくると、こういったツールの便利さが身にしみてきますね。
逆にこういったツールを Ruby でも容易に入手できて、Eclipse などの単一の IDE から使用できれば、かなり Ruby on Rails がしめる割合が増えるだろうなと思っています。