Introdução aos tipos de registro em C# com exemplos

Introducao Aos Tipos De Registro Em C Com Exemplos



Os tipos de registro são um novo recurso introduzido no C# 9 que fornece uma sintaxe simplificada para criar classes usadas principalmente para armazenar dados. Um tipo de registro é uma classe que define um conjunto de propriedades para armazenar dados, mas também inclui outros recursos, como comparação de igualdade, hash e muito mais. Este artigo apresentará o conceito de tipos de registro em C# e explorará seus benefícios e limitações.

Qual é a necessidade do tipo de registro

Um dos principais benefícios de usar tipos de registro é que eles fornecem uma sintaxe mais concisa para definir classes que contêm apenas dados. Isso torna o código mais fácil de ler e entender, além de reduzir a quantidade de código que precisa ser escrito. Além disso, os tipos de registro são projetados para serem imutáveis ​​por padrão, o que ajuda a evitar erros causados ​​pelo estado mutável.

Outra vantagem de usar tipos de registro é que eles vêm com suporte integrado para comparações de igualdade, códigos de hash e representações de string.







Introdução aos tipos de registro em C#

Os tipos de registro em C# fornecem uma maneira concisa de definir tipos para estruturas de dados pequenas e imutáveis. Ao criar um novo registro, você pode passar valores para as propriedades no construtor e acessar esses valores usando a sintaxe da propriedade. Eles são usados ​​para simplificar a criação e uso de objetos que possuem uma estrutura bem definida e não precisam ser modificados após a criação.



registro público < Nome do registro > ( < Lista de Parâmetros > ) ;

A palavra-chave public torna o tipo de registro acessível a outras classes no programa. A palavra-chave record define o tipo do objeto, seguido do nome do tipo de registro. O ParameterList define as propriedades do tipo de registro. Aqui está um exemplo que foi feito no qual armazenei detalhes da empresa como nome, departamento e categoria, abaixo está o código para isso:



usando Sistema;

// Defina um registro chamado CompanyDetails com três propriedades de string: Nome, Departamento e Categoria
registrar detalhes da empresa ( string Nome, string Departamento, string Categoria ) ;

programa de classe
{
vazio estático Principal ( corda [ ] argumentos )
{
// Crie uma nova instância do registro CompanyDetails e passe em os valores de propriedade
CompanyDetails empresa = new CompanyDetails ( 'Dica do Linux' , 'Escrita de conteúdo' , 'Linux' ) ;

// Imprima o nome da empresa, departamento e categoria
Console.WriteLine ( $ 'Nome da empresa: {company.Name}' ) ;
Console.WriteLine ( $ 'Departamento: {empresa.Departamento}' ) ;
Console.WriteLine ( $ 'Categoria: {empresa.Categoria}' ) ;
}
}

Neste programa, criamos um registro chamado CompanyDetails que possui três propriedades: Name, Department e Category, cada uma das quais é uma string. Em seguida, criamos uma nova instância de CompanyDetails chamada empresa e passamos valores para cada uma das propriedades. As instruções Console.WriteLine geram os valores das propriedades Nome, Departamento e Categoria do objeto da empresa, aqui está a saída do código:





Você também pode definir vários tipos de registro em C# e cada tipo de registro pode ter seu próprio conjunto exclusivo de propriedades. Por exemplo, você pode definir um tipo de registro para Funcionário e outro para detalhes da empresa e aqui está o código para isso:



usando Sistema;

// Definindo um registro para armazenar detalhes de uma empresa
registrar detalhes da empresa ( string Nome, string Departamento, string Categoria ) ;

// Definindo um registro para armazenar detalhes de um funcionário
registrar detalhes do funcionário ( string Nome, int EmployeeID, int Idade ) ;

programa de classe
{
vazio estático Principal ( corda [ ] argumentos )
{
// Criando uma instância do registro CompanyDetails e inicializando seus valores
var DetalhesdaEmpresa = new DetalhesdaEmpresa ( 'Dica do Linux' , 'Escrita de conteúdo' , 'Linux' ) ;

// Imprimindo os valores do registro CompanyDetails usando interpolação de string
Console.WriteLine ( $ 'Nome da empresa: {companyDetails.Name}' ) ;
Console.WriteLine ( $ 'Departamento: {companyDetails.Department}' ) ;
Console.WriteLine ( $ 'Categoria: {companyDetails.Category}' ) ;

// Criando uma instância do registro EmployeeDetails e inicializando seus valores
var DetalhesDoFuncionário = new DetalhesDoFuncionário ( 'Marca' , 7834 , 25 ) ;

// Imprimindo os valores do registro EmployeeDetails usando interpolação de string
Console.WriteLine ( $ 'Nome do funcionário: {employeeDetails.Name}' ) ;
Console.WriteLine ( $ 'ID do funcionário: {employeeDetails.EmployeeID}' ) ;
Console.WriteLine ( $ 'Idade do funcionário: {employeeDetails.Age}' ) ;
}
}

Primeiro, definimos um tipo de registro CompanyDetails com três propriedades: CompanyName, Department e Category. Em seguida, criamos uma nova instância do registro CompanyDetails e inicializamos suas propriedades com os valores “Linux hint”, “Content Writing” e “Linux”.

Em seguida, definimos outro tipo de registro EmployeeDetails com três propriedades: Name, EmployeeID e Age. Em seguida, criamos uma nova instância do registro EmployeeDetails e inicializamos suas propriedades com os valores “Mark”, 7834 e 25. Por fim, usamos instruções Console.WriteLine para gerar os valores das propriedades dos registros CompanyDetails e EmployeeDetails, aqui é a saída do código:

Conclusão

Os tipos de registro são um novo recurso introduzido no C# 9 que fornece uma sintaxe simplificada para criar classes que armazenam dados. Eles fornecem vários benefícios, incluindo uma sintaxe concisa, comparação automática de igualdade, hashing, impressão e fácil criação de objetos imutáveis.

No entanto, eles também têm algumas limitações, como a incapacidade de herdar de outras classes e funcionalidade limitada para lógica complexa. No geral, os tipos de registro são uma ferramenta útil para desenvolvedores C# e podem melhorar a legibilidade e a capacidade de manutenção de seu código.