Quale è meglio una prospettiva di design?
Un oggetto che viene inizializzato e poi controlla se i parametri passati sono validi prima di distruggere se stesso (quindi in __init__) o
Verifica se i parametri sono validi e quindi l'oggetto viene inizializzato?
Penso che la risposta sia quest'ultima. Comunque questo mi lascia con questa domanda. Quale classe possiede le funzioni primarie per verificare questo input? Sotto un design MVC, sarebbe nel controller, un'altra classe o come un metodo @static nella classe in questione
Fornirò un semplice esempio:
Diciamo che la classe B è valida quando x > 10 sotto un design MVC.
class Controller():
...
age = view.age()
HumanObj = Human(age)
Humanobj.is_Of_Age()
# Delete obj
...
o
class Controller()
...
age = view.age()
if age > 10:
HumanObj = Human(age)
...
o
class Controller()
...
age= view.age()
if Human.is_Of_Age(age):
HumanObj = Human(age)
...
grazie