Originariamente inviato da danlupo
Io vi espongo la mia situazione che è piuttosto semplice e potrebbe essere suddivisa in tre macro aree:

La prima pubblica composta più che altro da pagine descrittive, una pagina di esposizione di eventi mediante calendario e popup (gestito tramite libreria jquery, ui e Fullcalendar) e due pagine semplici di modulo informazioni ed un unisciti a noi (molto simili tra loro cambia solo la sezione messaggio);

La seconda area è quella privata, accesso tramite login, sezioni modifica profilo e password(gestito come tabella e query SQL), sistema di messaggistica interna (sempre tramite sql) possibilità di download file e comunicati (qui uso un semplice script basato sulla funzione glob ed il cambio di estensione ed una sorta di agenda eventi (simile a quella pubblica).

L'ultima macro area è quella di amministrazione con la gestione degli utenti, la gestione degli eventi (che si traducono sostanzialmente in un insieme di query con gestione tabelle e record).

Sostanzialmente l'utilizzo di un design pattern e della 'pala' OOP mi potrebbero essere molto d'aiuto nella gestione degli utenti, della messaggistica e degli eventi; solo che, essendo un progetto fatto nel tempo libero a livello volontario, volevo fare un buon lavoro senza però doverci perdere la testa, per questo sto vagliando quale architettura usare basandomi principalmente sulle mie conoscenze.
io personalmente farei il tutto con Yii e la chiuderei lì.
ma da capo ad ognuno il suo