Ciao a tutti, vorrei un consiglio da chi è pratico di OOP.
In pratica sto cercando di creare un applicativo per la gestione dei DVD e analizzavo le classi da creare per il progetto.

Vorrei poter creare una classe "FILM" che possa accogliere i dati prelevati dal database e gestirli come oggetto.
I dati di un film però sono inclusi in 2 tabelle separate del database. Quindi:

- Tabella "Films"

IDFilm (primary key)
Titolo
Trama
Anno
IDCategoria (Foreign key)


- Tabella "Categorie"

IDCategoria (Primary key)
Descrizione

L'oggetto "FILM" che creerò voglio che mantenga della categoria (che appartiene alla seconda tabella del db) sia la descrizione che il riferimento dell'id relativo alla categoria.

Ho risolto nel seguente modo e tutto sembra funzionare bene ma mi interessa sapere se per la OOP è corretta la mia soluzione oppure esiste un alternativa migliore.

Codice PHP:

using System
;

namespace 
GestioneDVD
{
    class 
Film
    
{
        private 
int id;
        private 
string titolo;
        private 
string trama;
        private 
string anno;
        private 
Genere genere;

        public 
Film()
        {
            
id 0;
            
titolo "";
            
trama "";
            
anno "";

            
genere = new Genere();
            
genere.ID 0;
            
genere.Descrizione "";
        }

        public 
int ID
        
{
            
get { return id; }
            
set id value; }
        }

        public 
string Titolo
        
{
            
get { return titolo; }
            
set titolo value; }
        }

        public 
string Trama
        
{
            
get { return trama; }
            
set trama value; }
        }

        public 
Genere Genere
        
{
            
get { return genere; }
            
set genere value; }
        }
        
        public 
string Anno
        
{
            
get { return anno; }
            
set anno value; }
        }
    }

    public class 
Genere
    
{
        private 
int id;
        private 
string descrizione;

        public 
Genere()
        {
            
id 0;
            
descrizione "";
        }
        
        public 
int ID
        
{
            
get { return id; }
            
set id value; }
        }

        public 
string Descrizione
        
{
            
get { return descrizione; }
            
set descrizione value; }
        }
    }


Attendo suggerienti e consigli da provare e studiare. Grazie