As novidades do C# 6

Seguindo a trilha de posts relacionados ao The Developers Conference – TDC que participarei com o ingresso que ganhei da SoftDesign (empresa que trabalho).

Contrutores primáriosRemovido

Quem é que lembra lá da longinqua versão 2 do C# que para criar uma classe era necessário declarar primeiramente os atributos, criar as propriedades e depois criar o construtor deixando o código gigantesco.

Na versão 3 do C# foi adicionado a possibilidade de deixar o código mais exuto para executar a mesma tarefa

Hoje é possível construir uma classe através dos Constutores primários que servem para representar em uma sintaxe mais concisa.

Porém há a possibilidade de criar a classe já atribuindo valores constantes a ela

Await dentro das expressões Catch e Finally

Confesso que não cheguei a precisar utilizar esse recurso, mas achei muito interessante a possibilidade de poder utilizá-lo.

Expressão de corpo em membros de função

Esse recurso possibilita realizar uma expressão dentro da declaração dos membros/propriedades de uma classe, pegaremos a classe Cliente para exemplificar

Propagação do operador NULL

Como é que nunca pensaram em fazer isso antes????????
Sim, para mim é uma das melhores novidades do C# 6 a possibilidade de verificar se o objeto está nulo antes de executar os métodos disponíveis e pegar os objetos filhos

Expressão nameof

Sempre que vamos validar a presença de um parâmetro verificamos se ele está nulo e após isso atiramos a exceção ArgumentException informando o nome do campo em string.

Porém desta forma quando alteramos o nome do campo que recebemos por parâmetro o sistema não sabe que esse nome foi modificado, deixando o sistema inconsistente. Porém para resolver isso foi criado a expressão nameof.

Filtro dentro das exceções

Hoje é possível criar uma exceção e poder utilziar um filtro dentro dela

Interpolação de strings

Quando precisamos criar uma string usando objetos utilizamos o string.Format

Com a nova opção de açúcar sintático fica mais fácil ainda

Uso de membros estáticos

E por fim com o intuíto de deixar o código mais legível e enxuto adicionado a possibilidade de usar somente um método/membro de uma classe estática já referenciada no using (recurso roubado do VB).

Ou seja, hoje em dia não preciso mais usar o snippet cw para gerar o Console.Write

Para saber todos os recursos que estarão disponíveis visite a página do projeto Language Feature Status

Deixe uma resposta

Nome *
E-mail *
Site