Quoto Santino sui pattern, non puoi fare vera OOP senza.
Sui pattern sono stati scritti libri e libri, mi permetto di consigliarti, come punto di partenza, questo pattern: http://it.wikipedia.org/wiki/Princip...nsabilit%C3%A0
Ogni volta che scrivi una classe, devi sforzarti di fargli fare una cosa sola. Io per esempio non ho mai usato una "classe CRUD", perché il CRUD è qualcosa che investe vari strati di un'applicazione e richiede quindi varie classi.
Chi viene dal procedurale a un certo punto obietta che in questo modo si fanno "troppe classi": ecco, la questione è proprio che le classi non hanno un costo, più ce ne sono e meglio è