Javaはアプリケーション開発言語として行き詰まっている、とアナリスト

2010年11月24日

「Javaによるビジネスアプリケーションの開発は複雑すぎる。開発チームはJavaからの逃避を検討すべきだ」という内容のレポート「Java Is A Dead-End For Enterprise App Development」(Javaはエンタープライズアプリケーション開発に行き詰まっている)を調査会社フォレスターのアナリストMike Gualtieri氏がブログで公開しています。

Java Is A Dead-End For Enterprise App Development | Forrester Blogs

Gualtieri氏は、Javaはビジネスアプリケーションの開発言語として確固たる地位を築いており、COBOLが消え去らないのと同じように急に消え去ったりはしないけれど、Java以外の選択肢を検討した方がよいとしています。

ビジネス要件が変わり、プレゼンテーションレイヤで失敗した

Javaが行き詰まっているというGualtieri氏のおもな理由をピックアップしてみましょう。

  • ビジネスの要件が変わってきた
    変化のスピードが高まっている
  • 開発に使える言語が限られている
    Javaプラットフォームの上でGroovyやJRubyといった言語は使えるが、限られた選択肢しか提供されない。
  • Javaはプレゼンテーションレイヤで失敗した
    SwingやJavaFXは失敗し、プレゼンテーションレイヤでのリーダーシップを失っている。
  • Javaの複雑さをフレームワークが明らかにした
    Hibernate、Spring、Strutsなどのフレームワークは、Javaの強さよりも機能不足を証明している。
  • JavaはC++を基にした20年前の言語
    それが本当にこれからのビジネスアプリケーション開発の最善な言語なのか?

そして、Java以外にも選択肢があるとしています。ただしC#はマイクロソフト的なJavaであるとして、その選択肢にC#は含まれていません。リストには、Visual Studio Lightswitchなどが含まれています。以下、Gualtieri氏があげた選択肢をリストアップしました。

コーディングよりももっと早く生成できるツールを

これらのツールをざっくりとまとめてみると、できるだけコードを書かず、モデルやより抽象化された言語でアプリケーションを生成できたり、バックエンドとプレゼンテーションレイヤを同時に生成するといった特徴があります。

ここから、このレポートの主張が見えてきます。つまり、ビジネスの変化が早くなってきたため、Javaのコーディングでビジネスアプリケーションを開発するよりももっと早く、効率的にアプリケーションを生成する方法を検討すべきだということ。そして、そのためにはバックエンドとプレゼンテーションをまとめて生成したり、ビジネスモデルやデータモデルからの生成といった新たなアプローチの開発ツールを検討すべきだ、ということなのでしょう。

振り返れば、こうしたアプローチやツールへのチャレンジは、ずっと以前から何度も繰り返されてきたことです。クラウド、Ajaxといった技術の変化と、ビジネスの変化がずっと早くなってきたという環境の変化、そして着実に積み重ねられてきたモデル言語やフレームワークの進化は、今度こそこうしたチャレンジを成功させることになるのでしょうか?

このエントリーをはてなブックマークに追加
follow us in feedly




カテゴリ

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本