Pattern di oggetto nullo o nullable [duplicato]

-2

Cosa c'è di meglio per l'implementazione del modello di oggetto nullo:

1) fornisce uno stato speciale ad esempio
o
2) usare ovunque? (Nullable) operatore?

E sto pensando solo alle strutture.

    
posta zgnilec 23.03.2015 - 18:48
fonte

2 risposte

1

In generale, dovresti evitare null dove possibile.

Se hai davvero un parametro / campo opzionale, allora è ideomatico rendere l'istanza nullable.

Se hai una struct dove null significa qualcosa di speciale - qualcosa che non è "questa istanza non esiste", allora dipende. Se altre parti del tuo codice / api usano null per significare questa cosa speciale, usa solo null . In caso contrario, potrebbe essere meglio fare un'istanza specifica della struct che significhi un altro valore o crearne di propri Type.

Come sempre, non esiste un singolo "migliore" per tutte le situazioni. La progettazione del programma è una questione di compromessi.

    
risposta data 23.03.2015 - 18:55
fonte
0

Utilizza null . Non confonde le tue cose con un'istanza nulla, non ingannare le persone che pensano di avere un'istanza nel rendersi conto che non hanno un'istanza ben dopo che si è verificato l'errore, ed è semplicemente molto più facile codewise essere in grado di usa le stesse regole per tutte le cose nullable.

    
risposta data 23.03.2015 - 19:36
fonte

Leggi altre domande sui tag