2008年2月18日月曜日

Javaの問題点

Javaの問題点はライブラリにある。
こういうとライブラリ(API)こそJavaの最大の利点ではないかと反論する人がいるだろう。
その通りだが、長所は時として短所となる。
Javaのライブラリは便利だが、世の中にはもっと便利なライブラリがある。例えばPerlのCPANだ。そのようなライブラリと比較すると短所に見えるということだ。
Javaライブラリは年々肥大化している。中には全く利用しないライブラリもある。無駄なライブラリに資源を占有されるのはよくない。
確かにHDDは1TBに達し、資源は余裕があるように見える。しかし、Javaが動作するPCには4GBのSSDしか搭載していない機種もある。その差は1000倍近いので資源に対する制約条件も大きく違う。プラットフォーム独立とは、どのようなプラットフォームにも対応できなければならないということだ。4GBのPCでもJ2SEが効率よく動作しなければならない。
そこで、パッケージごとに選択してインストールできるようにし、さらに動的にインストールできるようにする必要がある。完全インストールかオンデマンドインストールかを選択できるようにするわけだ。また、オンデマンドインストールの場合はダウンロード及びインストールを安全に行う方法を提供する必要がある。
そうなると、J2SE,J2EEの区別はほとんど意味がなくなる。ついでにJ2MEをPC用Profileとして統合すればエディションを統合できる。
Javaこそクロスプラットフォーム開発の機能が必要だ。コードは同じだが、対象によって使用するProfileが違う。一般にJ2MEの方が低レベル(抽象度が低い)だが、その分高性能だ。
また、オンデマンドインストールが可能となれば、ライブラリのレポジトリを一般に公開することもできる。つまり、サードパーティのライブラリも同様の仕組みで流布することができる。これはEclipseのしくみに似ている。
本音を言えばEclipseよりCPANの方が整合性が取れているように思える。どうせならJava版CPAN(CJAN?)を目指したほうがよい。
そのとき問題となるのが、Javaのライセンスだ。しかし、オープンソース化するという話なので解決できるだろう。

0 件のコメント: