Vou começar uma série de posts sobre as novidades do C# 7. Muito ainda está pra ser definido, então vou avisando em cada post o que já está certo e o que ainda é especulação.
Esse post vai servir como um agregador da série. Voltem nele quando quiserem ver os updates, ou assinem o feed, ou sigam a tag C#7 aqui no blog.
Posts que já estão no ar:
- Tuplas
- Local Functions
- Binary Literals e Digit Separator
- Pattern Matching
- Out variables
- Ref locals and returns
- Discards
- Mais expression bodied members
- Expressões throw
- Tipos de retornos assíncronos generalizados
E com o lançamento do C# 7.1 e 7.2 já temos as seguintes novidades:
Pro C# 7.1:
- Async Main
- Expressão literal default
- Inferência dos nomes de elementos de tuplas
- Gerando assemblies de referência
Pro C# 7.2:
- Argumentos nomeados que não estão no final da lista de argumentos
- Underscores no começo de literais binários e hexadecimais
- Modificadores de acesso private protected
- Semânticas de referência para tipos de valor
Lembrando que para utilizar as versões minor do C# (como a 7.1, ou 7.2) você precisa habilitá-la nos atributos do projeto. Veja neste post como fazê-lo e também como habilitar na solution inteira pra não ter que ficar configurando cada projeto individualmente.
Você consegue ler sobre as novidades na seção de novidades do C# 7 no Microsoft Docs. E no github tem ainda o status de cada funcionalidade da linguagem e sua previsão de milestone.
Espero que curtam.
Giovanni Bassi
Arquiteto e desenvolvedor, agilista, escalador, provocador. É fundador e CSA da Lambda3. Programa porque gosta. Acredita que pessoas autogerenciadas funcionam melhor e por acreditar que heterarquia é mais eficiente que hierarquia. Foi reconhecido Microsoft MVP há mais de dez anos, dos mais de vinte que atua no mercado. Já palestrou sobre .NET, Rust, microsserviços, JavaScript, TypeScript, Ruby, Node.js, Frontend e Backend, Agile, etc, no Brasil, e no exterior. Liderou grupos de usuários em assuntos como arquitetura de software, Docker, e .NET.