Implementazione della separazione dei problemi tramite MVC

0

Sto creando una domanda per vedere se la mia comprensione della separazione MVC è corretta, non sono stato in grado di trovare una risposta chiara ovunque online. Quindi questo è il modo giusto per implementarlo (in Java):

Avrei 3 file .java, uno per modello, controller, vista. Metterei tutte le classi correlate a Model in Model.java in questo modo:

//Model.java {
    public class Model

    //class fields

    public Model();

    public ModelClassA();

    public ModelClassB();

    public ModelClassC();
    }

Con le ModelClasses si intende qualsiasi classe che considero appartenente al Modello. È corretto avere le classi all'interno della classe del modello, poiché ho letto che le classi annidate dovrebbero essere evitate laddove possibile.

    
posta Dawson 04.11.2013 - 10:33
fonte

1 risposta

2

Penso che tu stia mescolando un po 'di terminologia qui. Le classi nidificate di Java non sono le stesse di un modello che ha una proprietà che è anche un modello.

Se la tua preoccupazione è se avere un modello le cui proprietà sono altri modelli, allora questo è OK (a patto che i modelli non siano classi annidate in termini di una classe nidificata di Java). È un buon modo per incapsulare la logica e ridurre la ripetizione del codice.

Consideriamo ad esempio un modello Order (come ordine di e-commerce) e un modello Customer . Entrambi potrebbero dover utilizzare le informazioni sull'indirizzo, pertanto l'ordine avrà una proprietà ShippingAddress e Customer avrà una proprietà Address . Entrambi possono essere dello stesso tipo (stessa classe java) ed essere rappresentati da un modello aggiuntivo, ad esempio un modello Address .

Una classe Java annidata è una cosa diversa. Questa è una classe definita all'interno di un'altra classe Java e, in alcuni casi, una classe nidificata può avere interazioni speciali consentite con la classe "hosting". Faresti meglio a controllare la documentazione Java che descrive le classi nidificate di Java e la differenza tra classi nidificate statiche e non statiche.

    
risposta data 04.11.2013 - 10:55
fonte

Leggi altre domande sui tag