Gibt es einen Nachteil bei der ausschließlichen Verwendung von Eclipse-Sammlungen?


8

Da meine Anwendung mit sehr großen Sammlungen von Ganzzahlen arbeitet, scheint Eclipse Collections aufgrund seiner primitiven Sammlungen ein sehr nützliches Framework zu sein. Ich habe es bereits getestet und bin froh, dass sich die Leistung und der Speicher erheblich verbessert haben - so sehr, dass ich darüber nachdenke, die JDK-Sammlungen ganz wegzulassen (selbst für Teile meiner Anwendung, in denen die Verbesserungen überhaupt nicht spürbar wären) - hauptsächlich für um konsistent zu sein und nur ein Sammlungsframework zu verwenden.

Aber das mag zu schön klingen, um wahr zu sein - vielleicht fehlt mir ein wesentlicher Nachteil in Bezug auf die Abschaffung der JDK-Sammlungen für Eclipse.

Das einzige, was mir einfällt, ist, dass ich jedes zukünftige Update / Feature, das Java in Bezug auf Sammlungen haben könnte, möglicherweise erst verwenden kann, wenn Eclipse sich daran anpasst.

Gibt es einen Grund, warum ich möglicherweise nicht vollständig auf Eclipse-Sammlungen umsteigen möchte?


3
Ich denke, es gibt keine. Sobald Sie die Signatur Ihrer Methode mit den entsprechenden Schnittstellen (Collection, List, Set, ....) entworfen haben. Heutzutage weist jede Java-App unzählige Abhängigkeiten auf. Sie sind auch von dem gleichen Problem betroffen, das Sie beunruhigt. Sind sie nicht?.
Laiv

Antworten:


5

Eclipse Collections ist eine ziemlich ausgereifte Bibliothek. Es wird seit über einem Jahrzehnt bei Goldman Sachs (früher "GS Collections") entwickelt, um größere Sammlungen mit weniger Müll und einigen clevereren Datenstrukturen zu verwalten. Goldmans hat sich in den letzten Jahren sehr bemüht, ihren Namen als Tech-Organisation bekannt zu machen. Dies ist eines ihrer Community-Angebote. Haftungsausschluss : Ich habe dort vor ein paar Jahren gearbeitet.

Wie bei allen derartigen Paketen binden Sie sich ein - normalerweise muss es einen guten Grund geben, von der Verwendung von JDK-Standardbibliotheken abzubrechen! - Ob dies ein Problem ist, hängt von der erwarteten Lebensdauer Ihres Projekts ab (ich habe einen Stapel Applets herumliegen, den niemand mehr mag!). Ich bezweifle, dass das JDK die oben genannten cleveren Datenstrukturen standardisieren / absorbieren wird (warum sollten sie? Es gibt ein lebendiges Open-Source-Ökosystem von allen, das sie benötigt, und es ist kein schmerzhaftes Vakuum wie Datum / Uhrzeit). Ich denke, es ist möglich, dass Java10 (+) - Werttypen die primitiven Sammlungen eines Tages weniger wertvoll machen.

Bevor es als Eclipse-Projekt veröffentlicht wurde, hätte ich ähnliche Regeln angewendet wie bei der Verwendung von Guava (mit entsprechenden Bedenken hinsichtlich der Abhängigkeit von Unternehmen usw.). Es ist jetzt ein Eclipse-Projekt, daher ist es wahrscheinlich eher mit der Verwendung einer Apache-Bibliothek vergleichbar.


1

Ich habe Eclipse Collections (auch bekannt als GS Collections) in den letzten Jahren ausschließlich ohne Bedenken verwendet (über die üblichen Bedenken bei der Verwendung einer Bibliothek eines Drittanbieters hinaus). Die API-Unterstützung für Lambdas ist sehr ausdrucksstark und leistungsstark.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.