BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Apacheへの移行作業が進むNetBeans

Apacheへの移行作業が進むNetBeans

ブックマーク

原文(投稿日:2018/08/16)へのリンク

Oracleは約2年前、Apache FoundationにNetBeansを寄贈するプロセスを開始した。最初の大規模なコード提供が行なわれたのはほぼ12ヶ月前だ。それ以来、新たな組織へのカットオーバの終結に向けて、膨大な両のエンジニアリング作業が続けられている。このプロセスとは別に、NetBeansコミュニティは、新たなメジャーリリースを含めた前進を続けている。プロセスを統括する、OracleシニアプリンシパルプロダクトマネージャのGeerjan Wielenga氏に話を聞いた。

InfoQ: InfoQ読者のために時間を頂いて、ありがとうございます。まず最初に、NetBeansのApacheプロジェクトへの移行の状況について教えてください。作業中に何か意外な出来事はあったのでしょうか?

Wielenga: プロセスはゆっくりと、緻密に行われています。ツールの将来を気にしない企業ならば、ソフトウェア財団に寄贈するようなことはしません。そんな企業は、単にツールの開発を止めて、“みんな、もう終わりだ”と世の中に向かって言うだけでしょう。私が今も驚いているのは、OracleがApacheにNetBeasnを寄贈しようとしていることの真剣さです。例えば、多数の開発者だけでなく、Oracleの法務チームまで関与しているのです。NetBeansの一部分をApacheに寄贈する前に、厳密な監査とコード整理が実施されています。

膨大なプロセスで、まだ完了はしていません。現時点で、一般的なNetBeansユーザが使用する機能の大部分はApacheに寄贈されていて、すでにGitHub上にありますが、C/C++ツールやその他の一連の機能、ドキュメントなど、今後実施される作業もたくさん残っています。

ご覧頂けるとおり、Apacheには現在、7,493,322行のNetBeansコードがあります。これはApacheのディスク領域の4.38パーセントに当たります。そのサイズと複雑さを他のプロジェクトと比較した場合、Apache NetBeansは飛び抜けて大規模なApache Projectになっているのです。

InfoQ: NetBeansの新バージョンにはたくさんの新機能と進展が含まれているという噂ですが、その件について話して頂けますか、またそれらは、NetBeansのユーザやJava開発者にはどのような意味があるのでしょう?NBを試してみたいと思うかも知れない開発者にとって、新リリースのどのような面が魅力的だと思いますか?他のIDEとの差別化についても教えてください。

Wielenga: NetBeansの“すぐに使える(out of the box)”という面が常に強みです。NetBeansを構成する他のモジュールがまだ寄贈プロセス中であるため、現行のリリース9.0ではJava SEの機能が中心ですが、最終的には、これまでNetBeansにあったものすべてが、Apache Way(Apacheのやり方)に一致する限りにおいて、すべてNetBeansの一部になります。

例えば、GPLライセンスのものはAoacheのリリースポリシに適合しないので、すでにいくつかの機能、特にHibernateやJSR 295 BeanBindingがリリースから削除されなくてはなりませんでした。ただし、これらの機能はApacheからはリリースされませんが、これらのテクノロジを使った外部プラグインを作成して、自分自身で配布する分にはまったく問題はありません。

現時点では、Apache NetBeansはJava SE開発者向けに特化しています。ただし、NetBeans IDE 8.2プラグインセンタを登録することで、8.2リリースからにはなるのですが、JavaScriptやJava/Jakarta EE、PHP、Groovyを使うためのツールなど、他の機能を有効にすることができます。Apache NetBeansの新機能としては、JDK 9 Jigsawモジュールシステムや、JDK 9 JShellを使うための機能などがあります。JDK 10サポートとしては、JDK 10 LVTI機能を使用するためのエディタ拡張が含まれています。newとvarの相互変換などの新しいvarサポートがその一例です。

InfoQ: 新しいリリースサイクルの話に移りましょう — ツールメーカとしてのNetBeansに、リリースペースの短期化やクラスフォーマットの変更、その他の新たなモデルの様相はどのように影響するでしょうか?

Wielenga: おそらく、少なくとも当初に関しては、JDKのリリースナンバには合わせないと思います。OracleがSunを引き継いだ時点から、NetBeansのリリースはJavaリリースを追っていました — JDK 7とNetBeans 7、JDK 8とNetBeans 8、というようにです。Apache NetBeansコミュニティが他の言語やテクノロジに優先する形で、今後もJavaに歩調を合わせるべきかという議論はひとまず置くとしても、現在の短いリリースサイクルに合わせるのは難しいでしょう。

それとは別ですが、Oracleが今後、ツーリングに関与するかどうかは明確になっていません。Javaはその歴史の中で初めて、スポンサ企業がまったくツーリング戦略を持たず、他の企業とまったく同じラインにまで後退した状態にあります。IntelliJ IDEAはますますKotlinへのルートを進めているようですし、MicrosoftのVisual StudioはIDEを目指してはいません。さらに一部では、IDEはもはや関係ないという意見もあるようです。これからはテキストエディタだ、とでも言いたいのでしょう。

Javaの優位性の大きな根拠となっているのは、過去数十年にわたって競合を続けてきた強力なIDEグループの存在です。現在の断片化は、残念ながらJavaにも影響を与える可能性があります。他のテクノロジや言語が過剰であることの意義が疑問視されている点を考慮すれば、これが行き着くのはただひとつ、OracleのJavaに対するコミットメントに関する問題です。

NetBeansはこれまで主としてJavaに忠実でありました。Javaで作られていて、Java自体に依存しているのですから、NetBeansはJavaの方向性を強く引き継いでいます。しかしながら、当然、保証はありません。もしもApache NetBeansコミュニティが一致して、PHP開発者あるいはKotlin開発者を優先するという決断を下すのであれば、それもまた可能な方向性です。Apacheの下では全員の投票が平等ですから、Apacheプロジェクトの方向性を事前に決定できる企業や組織は存在しないのです。

InfoQ: さまざまな調査では、Java IDEマーケットはIntelliJが最も広く使われる方法に向かっていて、Eclipseがそれに続き、NBはやや遅れを取っているという結果が出ています。この評価は全体として正確だと思われますか?

Wielenga: 業界で調査が行なわれる方法を再考する必要があると思います。現在のアプローチには、重要な問題があります。特に奇妙なのは、私たちの業界だけが、ずさんな調査の実施を受けているということです - 私の知る限り、SLOP(self-selected listener opinion polls)が受け入れられている分野は他にありません。

私たちはプログラマなのですから、調査をプログラマチックに行なう方法を考えるべきでしょう。例えば、“エンジンやアプリケーションサーバ、データベース、プラグインの現在の統計情報を詳細に調査し、どのスタックが最も評価され、最もアクティブに使用されているかを解析する”Jelasticを取り上げるならば、“当社のクライアントの過半数(50.5パーセント)がNetBeansでプロジェクトを構築している”という結果に急展開します。

ずさんな調査を作る人たちの特別な場所があって、長年にわたって、まったくのノイズとナンセンスでもってソフトウェア開発者の業界を汚染し続けているのです。

InfoQ: NetBeans自体の開発に参加しているコミュニティの規模はどの程度なのでしょう?関心のあるJavak開発者がコミュニティに参加するには、どうすればよいのでしょうか?

Wielenga: コードはGithubにホストされているので、コントリビュータグラフを公開したり、NetBeans開発者およびユーザ向けにメーリングリストを提供したりしています。参加者になる意思のある開発者はいつでも歓迎します(NetBeansコミュニティは親しみやすさで有名です)し、あらゆるレベルの開発者が参加する方法を用意しています

InfoQ: 今後についてはどうでしょう?ロードマップには何がありますか?開発者に対するこれまでの全体的な影響はどのようなもので、今後はどうなると思いますか?

Wielenga: そうですね、Apacheのプロジェクトになりますので、その将来はApache NetBeansコミュニティが決めることになります。現在は、Oracleの2回目の寄贈からApache NetBeansのメインリポジトリに機能を統合して、次期リリースとして提供することに力を入れています。暫定的なロードマップもありますし、さらの多くの計画が立ち上がりつつあります。

開発者に全体的な影響を与えるには、開発者に参加してもらう必要があります。全員がボランティアであり、すべての人に参加してもらいたいという事実を含めて、私たちは現在、すべての面において同じ立場です。Apache NetBeansは他のどの開発環境よりもオープンソースでオープンガバナンスです。Apache Wayに従い、数多くのエキサイティングなチャンスがあり、数多くの参加方法があります。さらに多くの開発者が参加してくれることを楽しみにしてます。まずは’dev’メーリングリストに参加してください。

InfoQ: その他に、読者に伝えておきたい考えやコメントはありますか?

Wielenga: よいニュースと悪いニュースがあります。自由には責任が伴うのですが、NetBeansコミュニティでは長い間、これが真剣に取り組まれておらず、ロードマップや方向性、NetBeansを構成する機能に十分な貢献ができていない点に不満が持たれていました。これからは、それらがすべて可能になります。

裏を返せば、現在はロードマップが分からない、参加できない、希望する機能をNetBeansに反映させる手段がない、といった不満は、今後は出ないということでもあります — NetBeansがオープンソースになったということだけでなく、オープンガバナンスが成し得る最初のものです。かゆいところを掻くように、NetBeansを自分が望むものにしていきましょう。プルリクエストはいつでも歓迎します。Apache NetBeansに関する詳細は、私たちのWebサイトに掲載されています。

これまでよりも多くの人たちが関与し、さらには参加してくれるのを心待ちにしています。

Java 9および10に対応したNetBeansバージョン9は、間もなく出荷される。

 
 

この記事を評価

採用ステージ
スタイル
 
 

この記事に星をつける

おすすめ度
スタイル

BT