PERCHE' usare Maven?

Marco Ballante 27/12/2012 4 Commenti

Apache Maven, is an innovative software project management tool, provides new concept of a project object model (POM) file to manage project’s build, dependency and documentation. The most powerful feature is able to download the project dependency libraries automatically.

Statisticamente ancora pochissimi progetti sono gestiti con Maven, e, di conseguenza, pochi sviluppatori usano e conoscono questo build tool, mentre altri programmatori non potrebbero vivere senza.

Maven non è solamente un build tool come ant, ma offre tantissime altre funzionalità.

Tanto per citarne alcune:

  • E' indipendente dall'ambiente di sviluppo.
  • Struttura il progetto in maniera chiara e pulita, promuovendo uno standard che aiuta a comprendere il codice.
  • E' orientato all'uso di unit test, che sono separati dal codice applicativo, permettendo di lanciarli con estrema facilità.
  • Gestisce i file jar delle librerie, e le loro versioni, mediante l'uso di un . repository.

Tutto sembrerebbe fantastico, e forse lo è, ma qualche pecca da imputare a Maven sicuramente la troviamo, magari anche con il vostro aiuto.

Complessità

Non è proprio immediato da capire per chi si avvicina per la prima volta, o anche per la seconda.

Scarsa Documentazione

A me sembra che la documentazione non sia proprio così esplicativa, ed a volte per capire qualcosa devi girare parecchio in rete.

D'altronde è anche vero che tutto non si può avere, ed un po' di complessità viene ripagata specialmente in realtà di progetti grandi e complessi, dove le dipendenze tra un progetto e l'altro, sono sicuramente una criticità che viene quasi del tutto scongiurata usando Maven.

Quindi vale la pena di usare Maven anche per piccoli progetti?

Secondo me si, per due motivi principali.
  1. Perchè ormai è diventato uno standard, che si è evoluto nel tempo, ed aggiunge sicuramente un valore aggiunto al nostro progetto, in termini di sviluppo e pulizia.
  2. Perchè non possiamo rimanere in dietro rispetto a questa tecnologia, che secondo me troverà sempre più spazio, e quindi, prima la impariamo bene e meglio è.

E voi cosa ne pensate? Siete favorevoli o contrari a Maven? Lo state usando nel vostro attuale progetto?

Ti è piaciuto questo post, Condividilo!

Articoli Correlati

Commenti

Martin P - 04/02/2013

Ciao Marco, ti dico la mia.
Secondo me uno dei punti di forza di Maven è proprio la possibilità di inglobare degli script ANT tramite l'apposito plug-in. In questo modo non ci si pone di fronte ad una SCELTA tra maven e ant, ma li si può utilizzare in maniera complementare sfruttando le potenzionalità di entrambi. Io per esempio preferisco gestire le dipendenze del progetto e il deploy con Maven, mentre affiderei il building in senso stretto ad ANT.

Gianni Amendola - 18/02/2013

Maven è un ottimo strumento dalla creare lo scheletro del progetto, alla gestione delle dipendenze, al testing, alla reportistica e tante altre cose...

Se puo' esservi d'aiuto per sopperire un minimo alla documentazione che non è delle migliori, ho scritto alcuni articoli su Maven e potete trovarli su cosenonjaviste.it a questo indirizzo:

http://www.cosenonjaviste.it/tag/maven/

Martin P - 27/02/2013

@Gianni ho molto apprezzato i tuoi tutorial "Organizziamoci con Maven", mi furono utilissimi quando ho iniziato ad utilizzare Maven :-)

Per quanto riguarda le considerazioni che ho fatto nel post precedente, ho scritto un breve post sul mio blog per spiegarmi in modo più concreto: http://luigimartinpetrella.wordpress.com/2013/02/23/ant-e-maven-building-tool-a-confronto/

Marco Ballante - 05/02/2013

@Martin sono d'accordo con te, inoltre, adesso che ci ho preso confidenza, non potrei più fare un progetto senza Maven.

Lascia un Commento

Per lasciare un commento devi essere autenticato Accedi

Javajob.it © 2017 - Javajob.it è un progetto realizzato da Gsoftware srls