Questa è la pagina ufficiale del progetto andyProject, quello che potremmo definire un metaprogetto, ovvero una progetto per… fare i progetti!! :-D
Attenzione: questo progetto è per il momento arrivato al termine del suo sviluppo.
Avendo preso la certificazione Oracle Java Programmer, sono passato all'uso di NetBeans, per cui il progetto rinascerĂ presto sotto forma di file build.xml
per ANT.
Attualmente il progetto si presenta con la seguente struttura (cambiata dalla versione 0.4):
/--+ | +-- conf/ | +-- lib/ | +-- lib-compile/ | +-- src/ | +-- build/ | +-- test/ | +-- doc/ | | | +-- java-doc | +-- [script]in cui solo gli elementi in grassetto sono inclusi nel file distribuito (le altre vengono create dagli script). Il nome delle cartelle dovrebbe riflettere il loro nome :-)
conf
: contiene file aggiuntivi di configurazione (file con la licenza e un file manifest.mf
)
lib
e lib-compile
: contengono le librerie aggiuntive sotto forma di file jar; i file nella cartella lib-compile
servono solo per la compilazione non sono inclusi nella distribuzione
src
: contiene i file sorgenti
build
: contiene i file .class
compilati dai sorgenti, in una sottocartella class
e il file .jar
(più eventuali file aggiuntivi)
test
: cartella per il test dell'applicazione; viene copiato il file .jar
del progetto e le librerie presenti nella cartella lib/
doc/java-doc
: documentazione javadoc; la cartella doc/
può contenere altri file (ad esempio schemi Gli script (rigorosamente in bash) e i file presenti nel progetto sono:
fileList
: elenco dei file .java
del progetto (si presuppone che un progetto piccolo abbia pochi file sorgenti) :-)
projectData.sh
: dati del progetto; qui è possibile indicare un nome diverso per le varie cartelle, in quanto contiene di fatto la struttura del progetto stesso
build.sh
: compila i file .java
e crea il file .jar
test.sh
: copia il progetto compilato in test
deploy.sh
: crea un file tar.gz
per la distribuzione del compilato
deployscr.sh
: crea un file tar.gz
per la distribuzione del codice
doc.sh
: crea la documentazione javadoc
Spero di riuscire ad incrementare l'intera struttura man mano che vado avanti con i progetti già iniziati e con quelli in cantiere, che poi sono tutte scuse per prepararsi all'esame per la certificazione SCJP. :-)
Ovviamente, come potete ben immaginare leggendo di sopra, è una struttura molto basilare, di supporto più che altro per lo sviluppo di semplici applicazioni "fatte in casa" (come il progetto andyLib), ma in cui ho cercato di mettere il più possibile di quello che ho imparato dalla certificazione SCJP e da miei approfondimenti, sia dal mio lavoro (a qualcuno questa struttura ricorderà quella in uso da un mio collega senior, praticamente un mio "mentore").
Pian piano che me ne serviranno, aggiungerò altre funzionalità agli script (qualcuno ha parlato di impacchettare automaticamente i sorgenti??). :-)
In questa sezione è possibile scaricare il progetto sotto forma di file compresso .zip
.
Clicca sulle freccie per visualizzare/nascondere il changelog
versione 0.4.1: src
! se richiamati da una shell già aperta, gli script non chiudono la shell
versione 0.4: src
* cambiate le variabili target→build e doc→javadoc + inserito il comando bash 'read -p "Premi [invio]..."' alla fine di ogni script + aggiunti script test, deploy e deployscr * script compile e pack uniti in build + aggiunta la cartella lib-compile
versione 0.3: src
* cambiato nome del file jar generato ! prima di cancellare il file jar controlla se esiste ! deploy: copiate le librerie solo se ci sono ! il comando jar usa l'opzione -C per non cambiare directory
versione 0.2: src
! il nome del file jar finale ora usa come separatore l'underscore ! la variabile 'jafManifest' ora comprende la cartella in cui è contenuto il file 'manifest.mf'
versione 0.1: src
prima versione
Tutto il progetto è distribuito sotto la licenza GPLv3; per una versione della licenza leggere qui (una copia del desto è comunque compreso anche insieme ai file sorgenti, nella cartella conf
.
Qui un elenco delle varie fonti che ho usato: