Modelli di dominio con proprietà non sempre impostate

1

Non so se avere modelli di dominio con proprietà che non sempre sono impostate, è un qualche tipo di odore di codice o errore di progettazione. Ho messo un esempio:

Ho un'app che consente di leggere riviste su Internet utilizzando Rss. Per i modelli di dominio, utilizzo i casi di utilizzo. In breve ho:

  • C'è una libreria di riviste.
  • Puoi consultare il profilo della rivista.
  • Puoi esplorare la rivista di notizie.

Per questo, ho estratto queste entità: biblioteca, rivista, profilo di una rivista, notizie di riviste.

Le mie classi sono:

class Magazine
    private int id; // BD id row
    private MagazineProfile magazineProfile;
    private List<MagazineNews> news;

class MagazineProfile
    private String title;
    private String webUrl;
    [...]

class MagazineNews
    private String title;
    private String body;
    private Date pubDate;
    [...]

In alcuni punti della mia app, esplorerò solo le riviste usando il loro profilo della rivista (mostrando un elenco di tutte le riviste), in altri punti esplorerò solo le notizie e in altre esplorerò le notizie e il profilo della rivista allo stesso tempo.

A seconda del caso, a volte, il mio oggetto magazine avrà le proprietà magazineProfile news impostato o vuoto.

Quindi la mia domanda è, se questo progetto è un approccio di errore per avere proprietà che verranno stabilite in base alla finestra in cui l'utente sta navigando. Dovrei lavorare solo con gli oggetti che mi interessano, nel mio caso, magazineProfile e news ?

    
posta korima 25.11.2014 - 11:48
fonte

1 risposta

2

Non credo che il tuo design sia un problema, ma l'implementazione può darti dei problemi. Utilizza il Pattern degli oggetti Null per compilare i campi che altrimenti mancherebbero.

Nel tuo caso, un "mancante" MagazineProfile sarebbe contrassegnato da un singleton che restituiva una percentuale vuota di% co_de,% di% di co_de, ecc.

    
risposta data 25.11.2014 - 14:09
fonte

Leggi altre domande sui tag