Dopo aver definito il nostro kernel possiamo creare la nostra distribuzione principale. Come ho detto nel capitolo 3 una distribuzione include:
La definizione per la nostra distribuzione principale si chiajma "MDPro [versione no.]". Questo pacchetto comprende la maggior parte delle funzionalità conosciute dalle precedenti versioni di altri progetti come Envolution e PN. Ma ricordate cosa ho detto prima: questa distribuzione include più di un pacchetto.
Come si può fare?
Prima di tutto l'utente deve scaricare e installare il pacchetto base. Questo pacchetto comprende una routine di installazione completa. Il programma di installazione dà all'utente la possibilità di selezionare i moduli che vuole installare, quali impostazioni ha bisogno per il suo sito e quali contenuti principali vuole pubblicare. E' una procedura passo passo come quella attuale, ma più flessibile.
Per ogni addon selezionato l'utente deve considere qualche dettaglio in più:
Come ognuno sa, è impossibile includere tutti i moduli desiderati e le migliorie in un solo pacchetto. Vi sono troppi sviluppatori in giro per il mondo. Ma il kernel di MDPro è molto flessibile e l'utente può selezionare e utilizzare molti di questi moduli (quasi il 98%) codificati per PN, Envolution e/o MDPro.
Quando pensiamo a tutti i professionisti che vogliono usare MDPro, possiamo predefinire alcuni pacchetti per rendere loro più facile avere i migliori addons compatibili al 100% con MDPro.
Dal punto di vista degli sviluppatori si può agire in questo modo:
Un'altra possiblità è quella di includere programmi esterni, ad esempio PostWrap. Ma questa non è una soluzione di sviluppo, è solo un aggirare il problema.
Tutti i moduli trovati e ritenuti utili valide estenioni di MDPro avranno lo status "certificato per MDPro". Questo garantisce che lavorino in maniera corretta e che sono supportati dal team Maxdev (o dallo sviluppatore originale che lo ha sviluppato per MDPro, too).
Per rendere le cose più semplici possiamo incorporare alcuni moduli per vari pacchetti di distribuzione come:
Si possono trovare più prodotti per una distribuzione (es. Arena Forum, pnPHPBB2). Meglio sarebbe tuttavia basarsi su uno solo (il migliore.
Lo stesso dobbiamo fare con i blocchi (che non sono parti di un modulo), scripts (es. Javascript menu), applets e altre funzioni non direttamente parte del CMS.
Tuttavia dobbiamo considerare anche le parti esterne, la parti terze e gli scripts che non toccano il kernel. MDPro deve funzionare correttamente con o senza queste distrubuzioni ed estensioni.
Ancora, deve essere possibile sostituire un addon con un altro migliore (es. cambiare dal modulo forum Arena al modulo forum phpBB2).
Per implementare parte o tutto il pacchetto di distribuzione, dobbiamo codificare una piccola routine di installazione. Questo può essere fatto sia come versione singola sia come parte di una procedura di installazione generale.