Modello di specifica o convalida dell'oggetto / valore dell'oggetto

0

Sto cercando di capire i concetti fondamentali di DDD e sto avendo qualche problema relativo alle convalide.

Infatti, in realtà mi sto chiedendo dove e quando dovrei usare il modello di specifica invece delle convalide di Entità / ValueObject.

Inoltre, sto cercando di trovare un modo per evitare questo tipo di convalida nel mio servizio di applicazione:

if(Email.isValid(emailString)){
  User usr = new User(emailString);
}

In realtà, cosa potrebbe accadere se ho più convalide come 10 - 20 su determinati campi? Non voglio né lanciare più eccezioni, che sono, a mio parere, dedicate agli errori critici.

Qualche idea?

    
posta mfrachet 09.09.2016 - 18:46
fonte

1 risposta

1
// Throws Hey,That'sNotEmailException
Email email = new Email(emailString);
User user = new User(email);

Ortografia alternativa

// Throws Hey,That'sNotEmailException
Email email = Email.from(emailString);
User user = new User(email);

L'utilizzo di tipi di valori espliciti è ottimo per supportare la convalida.

    
risposta data 09.09.2016 - 19:15
fonte

Leggi altre domande sui tag