Attualmente ho una classe del modello che rappresenta un utente. Questa classe ha un costruttore che accetta un oggetto con tutte le proprietà dell'utente, utilizzate ad esempio, durante la creazione dell'utente. In questo caso istanzia il modello passandogli le informazioni necessarie in modo che il costruttore possa fare il lavoro, quindi userà il proprio metodo "createUser". Bene.
Ma in alcuni casi, non ho bisogno di passare tutte queste informazioni al costruttore. Ad esempio il modello ha un metodo "UdpateCustomUserName" che ha solo bisogno di userId per istanziare dal db ed eseguire questo metodo e aggiornare un singolo campo da un singolo record già esistente nel database.
Il modo in cui ho affrontato questo è rendere le informazioni sulle "proprietà" richieste dal costruttore opzionale, così quando ho bisogno di chiamare "UdpateCustomUserName" passo al modello l'ID e io posso istanziare e raggiungere questo metodo.
È questo il modo corretto di farlo? O è una cattiva pratica avere parametri di costruzione facoltativi? In questo caso vorrei estrarre "UdpateCustomUserName" e mantenerlo nello stesso modulo ma da solo.