C# - Recursos da Linguagem que você deveria conhecer


Neste artigo vou apresentar três recursos da linguagem C# que já existem a um certo tempo e que você deveria conhecer.

Talvez devido à velocidade das alterações e da inclusão de novos recursos, talvez por falta de tempo, o certo é que muitos recursos da linguagem C# acabam ficando esquecidos de muitos desenvolvedores.

Neste artigo veremos alguns recursos já implementados que todos deveriam conhecer e usar.

Vamos a eles...

Usando expressões lambdas para membros de função

No C# 5.0, você pode usar uma expressão lambda sempre que uma instância de um delegate for esperada.

Por exemplo: Func<int, int> duplicarNumero = (i) => 2 * i;

Esse é um recurso que você já tem que ter incorporado ao seu cabedal de conhecimentos da linguagem.

Agora, para melhorar ainda mais, a partir do C# 6.0, você pode usar uma expressão lambda como o corpo de um membro de função. Isso simplifica a sintaxe para métodos simples.

Por Exemplo:

No exemplo, além do recurso apresentado, estamos usando outro recurso do C# 6.0, especificando um valor padrão para as propriedade auto-implementadas Idade e Nome.

Usando o operador nameof

A partir do C# 6.0 podemos usar o operador nameof para obter o nome string de uma variável, membro ou tipo. Ele pode tomar os seguintes parâmetros:

Exemplo:

Execução:



Um exemplo de uso padrão do operador nameof é na implementação da interface INotifyPropertyChanged :

Ao invés de usar :

PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Descricao"));

usando nameof fica assim :

PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(Descricao)));

Expressões lambdas geralmente usadas com delegate Func e Action (Predicate)

Os delegates Action e Func são predefinidos na linguagem C# que representam a assinatura de um método que retorna algum tipo e aceita zero ou muitos parâmetros.

Action é um delegate (ponteiro) para um método, que usa zero, um ou mais parâmetros de entrada, mas não retorna nada.

Func é um delegate (ponteiro) para um método, que usa zero, um ou mais parâmetros de entrada e retorna um valor (ou referência).

Predicate é um delegate que representa um método que contém um conjunto de critérios e verifica se o parâmetro passado atende ou não esses critérios.Assim, um método de delegado predicado deve ter um parâmetro de entrada e, em seguida, retorna um valor booleano - verdadeiro ou falso.

As expressões lambda são usadas com frequência com os delegates do tipo Func, Action e Predicate :

A seguir temos alguns exemplos de como usar expressões lambdas com os delegates Func, Action e Predicate para refrescar a memória :

Saber usar esses delegates com expressões lambdas auxilia muito o desenvolvedor e simplifica o código.

Pegue o projeto completo aqui: CShp_Recursos1.zip

Até o próximo artigo...

"Porque Deus amou o mundo de tal maneira que deu o seu Filho unigênito, para que todo aquele que nele crê não pereça, mas tenha a vida eterna."
João 3:16

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Referências:


José Carlos Macoratti