Java開発者が使用するJava言語は成熟し、高度に進化しています。今、しばしば直面する問題は、新しいコードを書くタイミングです。
実際、Javaアプリケーションの非常に大きな割合が営利目的であるため、噂されている新しいフレームワークの実際の使用状況を見極めるのは難しい。コミュニティのユーザーと貢献者が中心となっているフレームワークにとって、これはその継続的な成功と持続的な成長を決定する****要因の1つです。
GitHubという世界最大の****オープンリポジトリにホストされているJavaプロジェクトのデータを分析することで、Java開発者が実際にどのライブラリを使用しているかを確認することにしました。
GitHub:で行われた研究結果を発表した後。では、データ、特にjavaをマイニングしてみましょう。
方法
データセットを生成するには、10,000のJavaプロジェクトが必要です。これらのプロジェクトは、コミュニティで****されているものに偏っています。この資格は、相対的な重要性によるものです。この分析は、GitHub上のJavaプロジェクトがpom.xmlファイルの依存関係を定義し、それらをグループ化するために広く使用されました。結果は興味深いものでした。
ロギング。*** Java ライブラリはslf4f- 3068 エントリを持つロギングファサードフレームワークです。GHのJava開発者は、ロギングエンジンとの結合を解除するというパラダイムを完全に受け入れており、このために全員がかなり一様にslf4fを使っていることがわかります。
しかし、slf4fはロギングエンジンそのものではありません。log4jは、それを使用している891のプロジェクトで "勝者 "のようです。次は、340のLogbackです。log4jの使用はまともなようですが、それはまだプロジェクトの半分以下で使用されています。
現在最も有名なJavaライブラリはslf4fで、1000のプロジェクトで30.7%使用されています。
Springです。Spring」は流行のフレームワークというよりは成熟したフレームワークという印象が強いかもしれませんが、それでもトップ100で15位を占めるなど、かなりの利用率を誇っています。Spring」はスーパーフレームワークなので、どのコンポーネントが一番使われているか見てみましょう。Spring "フレームワークの中で最も利用されているのは Spring-testで376件。続いて、堅牢なWebアプリケーションを設計するためのweb-mvcが277項目あります。Web機能に続いて、Web-ormが218項目で、Springの主な使用シナリオが、DBバックエンドを持つJava Webアプリケーションの構築であることを強調しています。
Spring」と同じ最前列には「JUnit」が3,068項目も並んでいます。これは、Javaの世界におけるテスト駆動開発の深い影響力を如実に示しています。今日、Javaプログラマーがコードをリリースする場合、ユニットテストは絶対に必要なもののようです。この点に関しては、最も優勢なJUnitだけではありませんが、このことを言及することは非常に必要です。
人気のあるモックテストフレームワークであるMockitoも413のエントリーを獲得し、広くアピールしました。
GoogleのGuavaフレームワークは主流になりつつあり、GitHubにある10,000のJavaプロジェクトのうち4.8パーセントがGuavaを使用しています。
Springを見るとき、それを支える多くの言語レベルのライブラリ -ApacheCommons - を無視することはできません。Commons-ioは519件、Commons-langは504件でトップ10に入っています。これは、これらのライブラリが非常に人気があることを示しています。
Apache Commons全体では、トップ100に13のライブラリがランクインしています。 GoogleのGuavaフレームワークも、言語レベルのツールを提供しており、483のエントリーがあり、Javaのもう一つの重要なビルディング・ブロックになることを可能にしています。
ここ数年、NoSqlとビッグデータが話題になっていますが、リレーショナルデータベースとNoSql技術の実際の使用状況を見てみましょう。Sql DBの***はMySqlで225のエントリーがあります。データベースそのものではないHibernate ORMも181のエントリーがあり、かなり人気があります。GHのようなオープンソースのリポジトリでは、クローズドソースのデータベースであるOracleが少し強い商用データベースであることに注意してください。
噂の正しさを証明:GitHubのJavaプロジェクトではPostgre SQLよりHadoopが人気
Hadoopも168件と健闘しています。実際のデータは、逸話が真実であることを証明しています。視点を変えれば、Hadoopは最も成熟したオープンソースリレーショナルデータベースの1つであるPostgre SQL(121項目)よりも項目数が多いのです。
もうひとつのビッグデータ技術であるElasticSearchは110項目です。驚くべきことに、sqliteはRubyで1,085項目ありますが、Javaのトップ100からは外れています。
GHのAndroid.モバイル開発者は、228の項目がAndroidを構築するためにMavenを使用していることを参照してください。これは、GHに多くのモバイルプロジェクトが配置されていないことを示唆していますが、それはまだJavaが依然として非常に強力なサーバーサイド言語であることを示す強力な指標です。
免責事項:私はこのデータの正確性を確信していませんし、彼らがどのように統計的に分析したのか知りたいです。