Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Dal punto di vista di CLR, esistono solo due categorie di tipi, tipi di riferimento e tipi valore, ma allo scopo di una discussione sulla progettazione del framework, i tipi vengono suddivisi in gruppi più logici, ognuno con regole di progettazione specifiche.
Le classi sono il caso generale dei tipi di riferimento. Costituiscono la maggior parte dei tipi nella maggior parte dei framework. Le classi devono la loro popolarità al ricco set di funzionalità orientate agli oggetti che supportano e alla loro applicabilità generale. Le classi di base e le classi astratte sono gruppi logici speciali correlati all'estendibilità.
Le interfacce sono tipi che possono essere implementati sia dai tipi riferimento che dai tipi valore. Possono quindi fungere da radici di gerarchie polimorfiche di tipi riferimento e tipi valore. Inoltre, le interfacce possono essere usate per simulare più ereditarietà, che non è supportata in modo nativo da CLR.
Gli struct sono il caso generale dei tipi valore e devono essere riservati per tipi di piccole dimensioni semplici, simili alle primitive del linguaggio.
Le enumerazioni sono un caso speciale di tipi di valore usati per definire insiemi brevi di valori, ad esempio giorni della settimana, colori della console e così via.
Le classi statiche sono tipi destinati a essere contenitori per i membri statici. Vengono comunemente usati per fornire collegamenti ad altre operazioni.
Delegati, eccezioni, attributi, matrici e raccolte sono tutti casi speciali di tipi di riferimento destinati a usi specifici e le linee guida per la progettazione e l'utilizzo vengono illustrati altrove in questo libro.
✔️ ASSICURARSI che ogni tipo sia un set ben definito di membri correlati, non solo una raccolta casuale di funzionalità non correlate.
In questa sezione
Scelta tra classe e struct
Progettazione di classi astratte
Progettazione di classi statiche
Progettazione dell'interfaccia
Progettazione di Struct
Design delle Enumerazioni
Tipi annidati
© Porzioni 2005, 2009 Microsoft Corporation. Tutti i diritti riservati.
Ristampato dall'autorizzazione di Pearson Education, Inc. da Framework Design Guidelines: Conventions, Idioms e Patterns for Reusable .NET Libraries, 2nd Edition di Krzysztof Cwalina e Brad Abrams, pubblicato il 22 ottobre 2008 da Addison-Wesley Professional come parte della Serie di sviluppo di Microsoft Windows.