Ciao a tutti,

Sto cercando di strutturare in modo più ordinato le mie applicazioni scritte iniziando a introdurre concetti OOP (i pattern per ora li lascio da parte).

Ho buttato su carta uno schizzo di come creare le classi ed ora faccio un esempio semplicistico per avere qualche suggerimento su come agire.

Classe : Database
Classe : User
Classe : Intervento

Con la classe database mi istanzione l'oggetto che effettua la connessione e che ha tutti i metodi per eseguire sql su db (SELECT,INSERT,DELETE ecc ecc)

Quando io istanzio l'oggetto user come faccio ad accedere ai metodi del database?

sarebbe una soluzione istanziare l'oggetto User passandogli come parametro l'oggetto del database e salvarmelo ad esempio in una proprietà dell'oggetto user creato?

Sfruttare l'ereditarietà mi sembra logicamente scorretto anche perche tutte le classi andrebbero a estendere la classe db il che sono entità completamente diverse.

Mi è sembrato interessante anche l'utilizzo delle interfacce, ma non utile al mio caso....

Voi quali metodi utilizzate?

Ciao e grazie a tutti quelli che risponderanno.
Paolo