web-dev-qa-db-ja.com

Eclipseコレクションを排他的に使用することに不利な点はありますか?

私のアプリケーションは整数の非常に大きなコレクションで動作するので、 Eclipse Collections はそのプリミティブコレクションのために非常に有用なフレームワークのように見えます。私はすでにテストしましたが、パフォーマンスとメモリの大幅な改善が見られて嬉しいです-JDKコレクションを完全に廃止することを検討しているほどです(アプリケーションの一部で、改善がまったく目立たない場合でも)-ほとんどの場合一貫性を保ち、1つのコレクションフレームワークのみを使用するため。

しかし、それは本当であるには良すぎるように聞こえるかもしれません-多分私はEclipseのJDKのコレクションを捨てることに関して重要な欠点を見逃しています。

私に起こる唯一のことは、コレクションに関して将来の更新/機能Javaが持つ可能性があるものは何でも、Eclipseがそれに適応するまでそれを利用できない可能性があるということです。

Eclipseコレクションに完全に移行したくない理由はありますか?

8
Omega

Eclipseコレクションはかなり成熟したライブラリです。少数のガベージといくつかの賢いデータ構造でより大きなコレクションを処理するために、Goldman Sachs(以前は「GSコレクション」でした)で10年以上開発されています。ゴールドマンズは近年、技術組織としての名を知ろうと懸命に努力してきました。そのため、これは彼らのコミュニティ製品の1つです。 免責事項:私は数年前にそこで働いていました。

そのようなすべてのパッケージと同様に、あなたは自分自身を結びつけます-通常、JDK標準ライブラリの使用をやめるには、正当な理由がなければなりません! -それが問題であるかどうかは、プロジェクトの予想寿命に依存します(私は、誰もこれ以上好きではないという周りに横たわっているアプレットの山を持っています!)。 JDKが前述の巧妙なデータ構造を標準化/吸収するのではないかと思います(なぜそうなるのでしょうか?それらを必要とするすべての人が利用できる、活発なオープンソースエコシステムがそこにあり、日付/時刻のような苦痛の真空ではありません)。 Java10(+)value-types を使用すると、ある日、プリミティブコレクションの価値が低下する可能性があると思います。

Eclipseプロジェクトとしてリリースされる前は、Guavaを使用する場合と同様のルールを適用していました(企業の依存関係などについて同等の懸念があります)。現在はEclipseプロジェクトであるため、Apacheライブラリを使用する場合と比較することができます。

5
SusanW

私はこの数年間、Eclipseコレクション(別名GSコレクション)のみを使用し、(サードパーティのライブラリを使用するという通常の懸念を超えて)問題はありませんでした。 LambdasのAPIサポートは非​​常に表現力があり、強力です。

1
jamesfmackenzie