JVMエコシステム調査結果

Java 11への非常にゆるやかなアップグレードと主要な調査結果



10月末に、OracleのJava MagazineとSynkは、JVMエコシステムに関する優れたレポートを発行しました。 この調査では、JVM言語、プラットフォーム、ツール、プロセス、アプリケーションの選択に関して、世界中の10,000人以上の開発者にインタビューしました。









ZeroturnaroundとJRebel 、過去数年間に同様のレポートを以前に発行しました。 Eclipse Foundationは、今年初めにJava EEの調査も完了しました。 このタイプの研究には常にある程度の偏りがありますが、同時にそれらは開発コミュニティのかなり良いアイデアを提供します。



私たちの場合、このレポートは、Java開発者が使用するツールに関する優れたスナップショットと思考の糧を提供します。 完全に読む価値があります。 最も興味深い発見のいくつかを以下に示します。



Java 8-主要なプラットフォーム



Java開発者の79%がメインの生産プラットフォームとしてJava 8を使用し、8%がJava 9および10を使用しています。Java開発者はついにJava 7(9%)を放棄しているようです。 また、Java 8を使用していない調査対象の開発者の約半数が新しいバージョン(9および10で4%)を使用していることを観察することも興味深いです。

メインアプリケーションの実稼働環境で使用しているJava SEのバージョンは何ですか?


Java 11はJDKの最新バージョンであるため、質問は次のとおりです。開発者が新しいバージョンにアップグレードしないのはなぜですか? 答えは、明らかに、新しいリリースサイクルにあります。



リリースサイクル



Java 9が2017年にリリースされたとき、多くの人がアーキテクチャとリリースサイクルの両方の変更の開発への影響を心配していました。ご存知のように、現在では6か月ごとに新しいバージョンが提供されています。

「新しいサイクルは、重要なまたは重要な新機能が許容時間内にリリースされなかったため、長年にわたってゆっくりと慎重で、おそらく非常に長いリリースサイクルが過度に批判された結果だと思います」とダンカンブラウンは言います。プロメテウスソフトウェアテクニカルディレクターおよびDZoneリージョナルマネージャーは、「新しいサイクルは、その間は過剰に補償されており、反対方向に行き過ぎているように感じます。」


新しいリリースサイクルにどのように反応するかを尋ねると、回答者の30%がリリースごとのシステムを選択すると答え、34%が長期サポート(LTS)リリースを好むと答えました。 Java 7、8、および11。



リリースサイクルに関するコメントに加えて、D.Brownは次のようにも述べています。

「継続的な統合とソフトウェア配信(CI / CD)の時代であり、重要な機能と計画のリリースに多くの時間を費やしてきたため、Oracleは実際に許容可能な高速リリースサイクルがどれくらいかかるかを実際には認識していないようです」


一般に、この調査では、最新バージョンのJDKを使用したいと考えている開発者は10人のうち1人に過ぎないことが示されています。



IntelliJは、開発者がIDEに喜んで支払うことを証明します



多くの開発者は、Java用のオープンソースツールとIDEを長い間使用しています。 オープンソースにより、ツール販売者はIDEを開発者に販売するために一生懸命働く必要がありました。 したがって、Java開発者の32%がIntelliJ IDEAにお金を払うのはかなり予想外のようです。 これは同じ数字に非常に近い-38%がEclipseを使用しています(無料!)。 IntelliJは、開発者がIDEの料金を支払うことに同意したことを証明できたことを祝福できます!



全体として、IntelliJ IDEA(45%)とEclipse IDE(38%)による調査によると、2つの主要なIDEプラットフォームでした。 IntelliJが過去2年間でEclipseよりも優れていることを他の多くの研究が示しているように、これは驚くことではありません。 Apache NetBeansが3位になり、11%増加しました。



GradleはMavenの王位を奪いませんでした



数年前、Gradleは「ビルドツールの新人」でした。 Gradleが発展し始めた勢いで、彼は有名な王、Mavenを凌wouldするように思われました。 しかし、Gradleの成長は鈍化したことが判明しました。 開発者の60%がMavenを使用しており、Gradleを使用しているのは19%のみです。 既存のインフラストラクチャテクノロジーを置き換えるのは難しい場合があります。 Kotlinへの新しいサポートのおかげで、近年Gradleを支持するわずかな変化が達成されました。

メインプロジェクトで使用しているアセンブリツールは何ですか?






GitHubはコードリポジトリの王様ではありません



ほとんどの、そしておそらくすべてのオープンソースプロジェクトがGitHubを使用しています。 したがって、「メインプロジェクトでどのコードリポジトリを使用しますか?」 回答にはプライベートとパブリックの両方のリポジトリが含まれるため、結果はオープンソースに固有のものではありません。 これは、BitbucketとGitLabが非常にうまくいっていることを示しています。 GitHubに深刻な競争があるのは良いことです。

メインプロジェクトでどのリポジトリを使用していますか?






ソフトウェアリリースサイクルは短いです。



「どのくらいの頻度でコードの新しいバージョンをリリースしますか?」と尋ねる調査を見つけることは困難です。したがって、この調査で答えを見つけることは興味深いものでした。 非常に予想外で印象的な72%の回答者は、少なくとも月に1回はコードを発行していると答えています。 アジャイル開発とDevOpsは確かにリリースサイクルの短縮に有益な効果をもたらします。



コードの新しいバージョンをどれくらいの頻度でリリースしますか?




+ボーナス(!)

新しいコードをリリースする頻度を知っていますか?






Java EEなど



JDKのバージョンに特に関連する質問に加えて、この調査ではJava EEおよびその他多くの質問についても質問しました。



レポートでは、10人の開発者のうち4人がコアアプリケーションにJava EEを使用していないと述べています。 Java EE 7は依然として最も要求されているバージョン(27%)ですが、Java EE 8はそれほど遅れていません(22%)。 Java EE 8のリリースは2017年9月に行われたため、わずか1年でこのバージョンがほぼ最も人気になったことは非常に有望です。

メインアプリケーションに使用しているJava EEのバージョンは何ですか?




そしてもちろん、J2EEのために戦っている2%の世話をする必要があります-それは2003年に最後のリリースがあったバージョンです;)



オリジナルの記事はこちらこちらにあります



All Articles