In primo luogo, è sempre una buona idea non abusare di variabili con un nome specifico per contenere dati completamente diversi. Fai in modo che il programmatore di manutenzione (che potrebbe essere effettivamente tu) un favore non inserisca i numeri di telefono in una variabile membro chiamata User_Name
o viceversa.
Quindi, se ti ho ragione, al momento hai solo un caso d'uso in cui devi trattare sia con nomi utente che con i loro numeri di telefono, dove entrambi potrebbero essere usati in modo intercambiabile, giusto?
Vorrei raccomandare quanto segue:
-
se c'è la minima possibilità che nella prossima versione del tuo sistema ci possa essere un nuovo requisito per memorizzare separatamente, nomi utente e numeri di telefono, aggiungi due variabili membro diverse (ma consenti valori vuoti almeno per uno di essi, e lascia che sia l'authentification ad occuparsene)
-
se sai per certo che questo non sarà mai il caso, ci sarà sempre un nome utente o un numero di telefono da memorizzare, ma mai entrambi, quindi dare l'attributo un nome diverso, più generale, forse AuthentificationCode
o qualcosa del genere. Puoi anche aggiungere un altro attributo per archiviare le informazioni se AuthentificationCode
è un numero di telefono o un nome utente, nel caso questo sia importante per il tuo sistema.
In realtà, trovo più probabile che per qualsiasi sistema in cui sia richiesta l'autenticazione, è necessario un nome utente indipendentemente dal metodo di autenticazione, quindi potrebbe essere necessario il nome di un utente e un attributo generale AuthentificationCode
. Ma questo è qualcosa che devi decidere per te stesso, conoscendo i requisiti generali meglio di noi.