Existe alguma desvantagem em usar o Eclipse Collections exclusivamente?

8

Como meu aplicativo trabalha com coleções muito grandes de números inteiros, o Eclipse Collections parece uma estrutura muito útil por causa de suas coleções primitivas. Eu já testei, feliz em ver melhorias significativas de desempenho e memória - tanto que estou pensando em abandonar completamente as coleções JDK (mesmo para partes do meu aplicativo em que as melhorias não seriam perceptíveis) - principalmente para para ser consistente e usar apenas uma estrutura de coleções.

Mas isso pode parecer bom demais para ser verdade - talvez eu esteja perdendo uma desvantagem importante em relação a abandonar as coleções do JDK para o Eclipse.

A única coisa que me ocorre é que, seja qual for a atualização / recurso futuro que o Java possa ter em relação às coleções, talvez não seja possível utilizá-lo até que o Eclipse se adapte a ele.

Existe algum motivo para eu não querer fazer a transição completa para o Eclipse Collections?

Ómega
fonte
3
Eu acho que não há. Assim que você cria a assinatura do seu método com as respectivas interfaces (Coleção, Lista, Conjunto, ....). Atualmente, qualquer aplicativo Java vem com inúmeras dependências. Eles também são afetados pelo mesmo problema que o preocupa. Não são?
LAIV

Respostas:

5

O Eclipse Collections é uma biblioteca bastante madura. Está em desenvolvimento há mais de uma década na Goldman Sachs (costumava ser "GS Collections") para lidar com coleções maiores com menos lixo e algumas estruturas de dados mais inteligentes. Goldmans tem se esforçado para divulgar seu nome como organização tecnológica nos últimos anos, então essa é uma das ofertas da comunidade. Disclaimer : Eu trabalhei lá há alguns anos.

Como em todos esses pacotes, você se compromete - normalmente deve haver um bom motivo para interromper o uso das bibliotecas padrão do JDK! - portanto, se esse é um problema depende da vida útil esperada do seu projeto (tenho uma pilha de Applets por aí que ninguém mais gosta!). Duvido que o JDK padronize / absorva as estruturas de dados inteligentes acima mencionadas (por que elas? Existe um ecossistema animado de código aberto disponível por todos que precisam, e não é um vácuo doloroso como data / hora); Acho que é possível que os tipos de valor Java10 (+) tornem as coleções primitivas menos valiosas, um dia.

Antes de ser lançado como um projeto Eclipse, eu teria aplicado regras semelhantes às do Guava (com preocupações equivalentes sobre dependência corporativa, etc.). Agora é um projeto Eclipse, portanto é provavelmente mais comparável ao uso de uma biblioteca Apache.

SusanW
fonte
1

Eu usei o Eclipse Collections (aka GS Collections) exclusivamente nos últimos anos, sem preocupações (além das preocupações comuns de usar uma biblioteca de terceiros). O suporte da API para Lambdas é super expressivo e poderoso.

jamesfmackenzie
fonte