package
s. inglese (propr. pacco, pacchetto) usato in italiano come sm. In informatica, packages applicativi, o pacchetti di software, insiemi di programmi predisposti per risolvere un problema di carattere generale in tutti i casi particolari in cui si presenta. Si hanno, per esempio, package per il controllo di una data produzione, package per calcolare gli stipendi dei dipendenti di un'azienda, ecc. Con il diffondersi della programmazione a oggetti e dei metodi di progettazione orientati agli oggetti, ricondotti nell'insieme di linguaggi di UML, è prevalsa una nozione di package come insieme di classi associate fra loro. Ogni classe può appartenere a un solo package i quali ne possono contenere degli altri. Nel raggruppare più classi in un pacchetto, occorre in genere rispettare i criteri di coesione e di isolamento. Faranno parte di un package quindi classi che hanno numerose associazioni fra loro, mentre si limiteranno i collegamenti fra classi appartenenti a package diversi, spesso delegando una sola fra le classi del pacchetto a mantenere connessioni con quelle esterne. La struttura gerarchica dei package è tale da raccogliere sotto un unico pacchetto più package che svolgono ruoli in qualche modo collegati. Per esempio, nel linguaggio Java, il package swing ne riunisce di diversi che permettono la definizione di interfacce utente, quali il package swing.event, che racchiude le classi per la gestione degli eventi generati dall'utente, il package swing.text per la gestione di documenti, in cui il sottopackage swing.text.html comprende classi per gestire i marcatori nei documenti HTML, e il package swing.plaf contenente le classi che realizzano l'indipendenza della presentazione grafica dalla piattaforma di utilizzo. Nelle realizzazioni pratiche a ogni pacchetto corrisponde una directory nel sistema di file e la struttura gerarchica dei sottopackage si riflette nell'organizzazione dell'albero delle directory.