C# 6.0 – Cinco novos recursos que é bom conhecer
julho 29, 2016 1:00 pm Publicado por major Deixe um comentário
Desde o seu lançamento, a linguagem C# tem evoluído a passos largos e, assim, seu uso por desenvolvedores de diversas áreas tem crescido.
A linguagem possui tantos recursos que muitas vezes usamos somente os mais comuns em nossa tarefa diária. Neste artigo, eu vou mostrar 5 recursos que a linguagem C# tem disponível que talvez você não conheça, mas que existem a partir da versão 6.0 da linguagem C#.
Informe o nome do projeto e clique no botão OK.
1. Expression-bodied Function
Quantas vezes você teve que escrever um método de apenas uma linha de código?
Agora, com C# 6, você pode simplesmente criar um membro expression bodied contendo somente a expressão, sem usar as chaves {} ou ter um retorno explícito.
Antes, você só podia usar expressões lambdas em corpo de métodos que compunham uma classe. Agora, com as expressions bodied, é possível implementar métodos e propriedades somente de leitura a partir de expressões lambdas.
"*** Item de Venda ***n" +
"Quantidade: {0}nPreco: {1}nValor Total: {2}",
2. Operador Null Condicional
Nas versões anteriores da C#, você sempre tinha que escrever código para checar explicitamente a condição NULL antes de poder usar um objeto ou suas propriedades.
Da mesma forma que os tipos anuláveis (nullabe types), os operadores null-conditional podem ser usados para obter o mesmo resultado, bastando apenas usar o sinal ? depois da instância e antes de chamar a propriedade.
Dessa forma, a produtividade aumenta e a possibilidade de erros diminui.
Antes você fazia assim:
Agora, usando o recurso do operador Null Condicional(?) podemos fazer assim:
Assim, o operador verifica se a instância é null antes de chamar o método ou propriedade.
3. Inicializando auto propriedades e propriedades somente leitura a partir do construtor
Com C# 6.0, você pode inicializar as propriedades e propriedades somente de leitura a partir do construtor diretamente:
4. Usando expressões lambdas para definir propriedades Get
Sempre que uma expressão lambda for encontrada, o compilador C# a identifica como uma propriedade contendo somente o método get e não como um campo.
5. Usando diretivas com classes estáticas
Você já deve saber que pode importar um namespace ou espaços de nomes usando a cláusula using. Isso nos dá a capacidade de usar um tipo citando apenas o seu nome no código e sem a necessidade de qualificá-lo totalmente usando o seu namespace completo.
Agora, na C# 6, podemos ir um passo além, e importar os membros estáticos de uma classe para o nosso namespace. Isto significa que podemos usar os membros estáticos de uma classe diretamente, sem necessidade de qualificá-los com o seu espaço para nome ou nome do tipo.
A sintaxe é 'using static' seguido do tipo cujos métodos estáticos desejamos importar.
Essas são apenas algumas das novidades da C# 6.0. Aguarde, em breve, outro artigo com mais novidades.