Introduzione ai tipi di record in C# con esempi

Introduzione ai tipi di record in C# con esempi
I tipi di record sono una nuova funzionalità introdotta in C# 9 che fornisce una sintassi semplificata per la creazione di classi utilizzate principalmente per archiviare i dati. Un tipo di record è una classe che definisce un insieme di proprietà per contenere i dati, ma include anche altre funzionalità come il confronto dell'uguaglianza, hashing e altro ancora. Questo articolo introdurrà il concetto di tipi di record in C# ed esplorerà i loro benefici e limitazioni.

Qual è la necessità del tipo di record

Uno dei vantaggi principali dell'utilizzo dei tipi di record è che forniscono una sintassi più concisa per la definizione di classi che detengono solo i dati. Ciò rende il codice più facile da leggere e comprendere, riducendo al contempo la quantità di codice che deve essere scritta. Inoltre, i tipi di record sono progettati per essere immutabili per impostazione predefinita, il che aiuta a prevenire i bug causati da uno stato mutabile.

Un altro vantaggio dell'utilizzo dei tipi di record è che hanno un supporto integrato per confronti di uguaglianza, codici hash e rappresentazioni di stringa.

Introduzione ai tipi di record in C#

Registra i tipi in C# fornire un modo conciso per definire i tipi per piccole strutture di dati immutabili. Quando si crea un nuovo record, è possibile superare i valori per le proprietà nel costruttore e quindi accedere a tali valori utilizzando la sintassi della proprietà. Sono usati per semplificare la creazione e l'uso di oggetti che hanno una struttura ben definita e non devono essere modificati dopo la creazione.

Record pubblico ();

La parola chiave pubblica rende il tipo di record accessibile ad altre classi nel programma. La parola chiave record definisce il tipo di oggetto, seguito dal nome del tipo di record. Il parametro definisce le proprietà del tipo di record. Ecco un esempio che è stato fatto in cui ho archiviato i dettagli dell'azienda che piace il nome, il dipartimento e la categoria, di seguito è il codice:

usando il sistema;
// Definisci un record chiamato CompanyDetails con tre proprietà di stringa: nome, dipartimento e categoria
Record CompanyDetails (nome stringa, reparto stringa, categoria stringa);
Programma di classe

statico void main (string [] args)

// Crea una nuova istanza del record e trasmetti i valori delle proprietà CompanyDetails
CompanyDetails Company = new CompanyDetails ("Linux Sint", "Content Writing", "Linux");
// Stampa il nome, il dipartimento e la categoria dell'azienda
Console.WriteLine ($ "Nome azienda: Company.Nome");
Console.WriteLine ($ "Dipartimento: Company.Dipartimento");
Console.WriteLine ($ "Categoria: Company.Categoria");

In questo programma, creiamo un record chiamato CompanyDetails che ha tre proprietà: nome, dipartimento e categoria, ognuna delle quali è una stringa. Creiamo quindi una nuova istanza di società di società chiamata società e trasmettiamo valori per ciascuna delle proprietà. La console.Dichiarazioni WriteLine Output quindi i valori del nome, del dipartimento e delle proprietà della categoria dell'oggetto aziendale, ecco l'output del codice:

È inoltre possibile definire più tipi di record in C#e ogni tipo di record può avere il proprio set di proprietà. Ad esempio, è possibile definire un tipo di record per i dipendenti e gli altri per i dettagli dell'azienda ed ecco il codice per quello:

usando il sistema;
// Definizione di un record per archiviare i dettagli di un'azienda
Record CompanyDetails (nome stringa, reparto stringa, categoria stringa);
// Definizione di un record per archiviare i dettagli di un dipendente
Record EmployeEedEAils (Nome stringa, Int EmployeeId, Int Age);
Programma di classe

statico void main (string [] args)

// Creazione di un'istanza del record e inizializza i valori dell'azienda
var CompanyDetails = new CompanyDetails ("Linux Sump", "Content Writing", "Linux");
// stampare i valori del record di dati aziendali utilizzando l'interpolazione delle stringhe
Console.WriteLine ($ "Nome azienda: CompanyDetails.Nome");
Console.WriteLine ($ "Dipartimento: CompanyDetails.Dipartimento");
Console.WriteLine ($ "Categoria: CompanyDetails.Categoria");
// Creazione di un'istanza del record e inizializza i valori
VAR ESPIPSEEEDetails = new EmployeEedEtails ("Mark", 7834, 25);
// Stampa i valori del record di EmployEedEtails utilizzando l'interpolazione delle stringhe
Console.WriteLine ($ "Nome del dipendente: EmployeedeAils.Nome");
Console.WriteLine ($ "ID dipendente: EmployeedeAils.ID Dipendente");
Console.WriteLine ($ "Età dei dipendenti: EmployeeEEtails.Età");

Innanzitutto, definiamo un tipo di record CompanyDetails con tre proprietà: nome aziendale, dipartimento e categoria. Creiamo quindi una nuova istanza del record e inizializziamo le proprietà di società con i valori "Linux suggerimenti", "scrittura di contenuti" e "Linux".

Successivamente, definiamo un altro tipo di record ImployEedEails con tre proprietà: nome, dipendente e età. Creiamo quindi una nuova istanza del record e inizializza le sue proprietà con i valori "marchio", 7834 e 25. Infine, utilizziamo la console.Dichiarazioni WriteLine Per produrre i valori delle proprietà sia dei record di società e dei record di impiegati, ecco l'output del codice:

Conclusione

I tipi di record sono una nuova funzionalità introdotta in C# 9 che fornisce una sintassi semplificata per la creazione di classi che archiviano i dati. Offrono diversi vantaggi, tra cui una sintassi concisa, un confronto automatico dell'uguaglianza, hashing, stampa e facile creazione di oggetti immutabili.

Tuttavia, hanno anche alcune limitazioni, come l'incapacità di ereditare da altre classi e funzionalità limitate per la logica complessa. Nel complesso, i tipi di record sono uno strumento utile per gli sviluppatori C# e possono migliorare la leggibilità e la manutenibilità del loro codice.