Ho ereditato un team e una base di codice (Java).Che libreria di librerie Java consigliate?
Il codice base utilizza numerosi loop espliciti for each
. Mi piacerebbe sostituirli (modifica: nel futuro codice) con qualcosa come Commons Collections Transformers and Predicates e i suoi metodi di raccolta e trasformazione.
Tuttavia, Comuni Collection non è generica. Il resto della mia base di codice, qualunque altra cosa manchi, è, e non voglio introdurre un sacco di casting.
Quindi guardo le raccolte delle opere di Commons con Generics (http://sourceforge.net/projects/collections/) ea Guava (in precedenza Google Collections) (http://code.google.com/pp/guava-librerie /).
Prima domanda: è una o entrambe queste librerie generalmente riconosciuto come sicuro per l'uso in produzione? Usi o in produzione?
Domanda due: dei due, che mi consiglia? Le risposte di chiunque abbia usato entrambe sono ottime, le risposte di chiunque abbia usato entrambe le cose ancora meglio!
Infine, il mio team include un gruppo di appaltatori di livello medio-alto e dipendenti di livello medio e junior in Java (modifica: ma con esperienza pluriennale nella programmazione non OO). Quindi non voglio introdurre più di una raccolta di raccolte, e ne voglio una che non sarà troppo difficile da usare per nessuna delle mie squadre.
Grazie!
Modifica: Voglio sostituire i cicli espliciti perché la quantità di boilerplate oscura e travolge il codice aziendale effettivo. Ho cicli nidificati che chiamano funzioni con cicli nidificati, tutto per fare cose che sono one-liner. Con la presentazione e l'addestramento corretti, ritengo che il mio team troverà un approccio Collections/Transformer/Predicate più pulito, più chiaro, più veloce da scrivere e più facile da leggere.
Le raccolte di Commons hanno davvero bisogno di creare una versione Java5 se non vogliono che tutti saltino la nave a Guava. Non mi dispiace molto di non avere generici e vararg in Commons Lang, ma per una libreria di collezioni, è essenziale. – Thilo
correlati: [Raccolte di Commons vs Google Collections] (http://stackoverflow.com/questions/1444437/apache-commons-vs-google-collections). IMO ancora attuale. Guarda anche [questo film] (http://www.youtube.com/watch?v=ZeO_J2OcHYM). – BalusC
Sostituisci il codice per sostituire il codice o perché manca qualcosa nello stile "per ciascuno" che hai oggi? –