|
@IT Java Solutionフォーラムでは、Java開発環境に関する読者調査を定期的に実施している。このような定点調査では、通常緩やかな傾向変化が観測できるものだが、今回2003年3月に実施した調査では、過去に類のない大きな変化も見ることができた。Java開発スタイルの最新トレンドはどうなっているのか、さっそくその結果を報告しよう。
■野火のように広がるEclipseユーザー
まずJavaエンジニアにとって一番身近な存在である“開発ツール”の利用状況を尋ねたところ、「エディタ+JDK」の利用率が7割に達し、1年前の2002年3月に実施した第5回調査同様にトップとなった(図1 青棒)。しかし1年前と比べて大きく変化したものが、その隣にある。オープンソースのIDE(統合開発環境)、「Eclipse」の使用率だ。
Eclipseは2001年11月にオープンソース化された新しいツールであるだけに、前回調査時点での使用率はわずか1%にすぎなかった。それがたったの1年で、JBuilderなど先行する諸製品を追い抜き、“もっとも使われるJava IDE”の座に就いてしまった。また読者が“今後使いたい”開発ツール(図1 黄棒)を見ても、Eclipseの数字はダントツに高くなっている。
図1 Java開発ツールの使用状況(複数回答 n=540) |
これまでのJava IDE市場は、「Visual Studio」を擁するマイクロソフト環境に比べて“決定打に欠ける”状況にあったが、このままいけばEclipseが一気にその中心的存在となる可能性も見えてきた。ではいままでのIDEと比べたEclipseの特徴/魅力とはなんなのだろうか?
■エンジニアを引きつけるEclipseの魅力とは?
Eclipseの特徴として最初に思い浮かぶのは、“商用製品クラスの機能を備えたオープンソースのIDE”ということだ。確かに魅力的な特徴ではあるが、この点だけなら同じくオープンソースの「NetBeans」も、同様な評価を受けてしかるべきだろう。しかし両者の使用状況は、図1のとおりいまのところ大きく乖離(かいり)している。
ではオープンソース以外の特徴に目を向けると、まずEclipseプロジェクトが提供するGUIツールキット「SWT(Standard Widget Toolkit)」の存在が挙げられる。SWTによるアプリケーションは、“Swingと違ってOSのネイティブAPIを使用するため、軽快に動作する”といわれている。そこで読者にSWTを利用した開発への興味度を尋ねたところ、全体の45%が「たいへん興味がある/今後使ってみたい」、同38%が「まだよく知らないので、情報が欲しい」とSWT利用に積極的な関心を寄せていることが分かった(図2)。逆に「Pure Javaでないため、興味がない」との回答が3%にとどまったことからは、原理原則よりもパフォーマンス向上を求める開発者の現実的なニーズがうかがえる。Eclipseと並行してSWT活用が進めば、“Java=サーバサイドの言語”という“常識”を覆す事態も起こり得るだろう。
図2 SWTによる開発への興味度(n=540) |
オープンソース/SWTに加えて、Eclipse最大の特徴といえるのが、そのプラグイン構造だ。その魅力について、ここでは読者の“生の声”を紹介しよう。
Eclipseを使い出しましたが、プラグイン指向の柔軟さが気に入っています。これまで、テキストエディタ+Ant+CVSと別々にツールを使っていますが、これらを統合環境としてEclipse化することを考えています(受託開発:SE)。 テキストエディタ+JDKでガリガリ行っていた開発が、ant、JUnitなどが加わり……と思うまもなく、Eclipseが脚光を浴び、移行したところこれがまたとても便利。プラグインの充実に期待しています(受託開発:SE)。 |
Eclipseが“新時代のEmacs”と評されるのは、その柔軟な拡張性が「エディタ+JDK」派の開発者にも評価されているためだろう。なおEclipseのプラグイン拡張については以下の参考記事に詳しいので、興味ある方はご参照されたい。
連載「快適なXPドライビングのすすめ」
|
■MVCフレームワーク:導入が進むStruts
次に、サーバサイドJava開発用フレームワークの使用状況を見てみよう。この分野では、近年多くのSIベンダから商用製品が発売されているが、現在最も使われているのはオープンソースの「Struts」であった(図3 青棒)。また今後の導入予定についても、Strutsおよび「Turbine」といったオープンソース製品への注目度が高くなっている(図3 黄棒)。Strutsについては、
現在Webアプリケーションフレームワークの開発を担当しています。自分で作りながら見てみるとやはりStrutsは非常に強力で、次回はぜひ導入を検討したいと考えています(受託開発:プログラマ)。 |
との声もあり、コストメリットにとどまらない機能的な価値が認められているようだ。
図3 Java開発フレームワークの使用状況(複数回答 n=540) |
■アプリケーションサーバ:伸び続けるTomcat、今後の注目は…
では、アプリケーションサーバの使用状況はどうなっているだろうか? まず現在の状況を見ると、オープンソース「Tomcat」の使用率が昨年の54%から今回72%にまで上昇し、JSP/Servlet実装の標準的地位を固めていることが分かる(図4 青棒)。一方、今後の導入予定では、多くの製品にポイントが分散する中、「JBoss」の導入予定率が上位に挙げられている点に注目したい(図4 黄棒)。JBossはオープンソースのEJBサーバであり、Tomcatと組み合わせることで、J2EE対応のアプリケーションサーバ環境を構築できる。今後JBossなどのオープンソースEJBサーバが普及すれば、いままで機能的な面ですみ分けられていた商用製品の領域に、オープンソース製品が参入していく可能性もあるだろう。
図4 Javaアプリケーションサーバの使用状況(複数回答 n=540) |
ここまで見てきたとおり、現在のJavaの開発環境は、アプリケーションサーバ/フレームワーク/開発ツールといった全域で、オープンソース化が進行している。TomcatやStruts、Eclipseといった優れた製品の登場が、その流れをドライブしていることは間違いない。
しかしJava開発のオープンソース化が定着するためには、クリティカルな領域への適用に耐える拡張性/可用性の確保、サポート体制の確立、乏しい日本語情報の中でスキルを習得するエンジニアの学習コストなど、乗り越えるべきハードルも多い。このままオープンソース化が進んでいくのか、あるいはまた違う流れが巻き起こるのか。動きの速いJava開発環境に、引き続き注目していきたい。
■Java開発関連ツール活用意向:IDE+UMLの連携/統合に期待
では最後に、Javaによるソフトウェア開発の生産性を向上させるうえで、読者が今後積極的に利用したいと考えているツール/製品分野を紹介しておこう。複数回答で尋ねた結果、読者の7割以上が「統合開発環境(IDE)ツール」および「UMLモデリングツール」の利用に前向きであることが分かった(図5)。IDEとUMLツールといえば、昨年来IBM+Rational Software、Borland+TogetherSoftといった、両分野を代表するベンダ間の企業買収が相次いでいる。これらの動きにより、今後開発者ニーズに沿ったツール連携/統合が進むことが期待される。
図5 Java開発関連ツールの活用意向(複数回答 n=540) |
■調査概要
- 調査方法:Java Solution フォーラムからリンクした Webアンケート
- 調査期間:2003年3月3〜28日
- 回答数:694件(うち、Java業務アプリケーション開発に携わる540件を集計)
関連記事 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|