Archives for C# 7.0

C# 7.0

C# 7.0: novos Expression-bodied Members


Uma das novidades trazidas pelo C# 6.0 foi a possibilidade de implementar propriedades somente leitura e funções por meio de expressões lambda. Este recurso ficou conhecido como Expression-bodied Members, tendo sido abordado anteriormente em outro artigo deste blog. O C# 7.0 expandiu as possibilidades de uso dos Expression-bodied Members, permitindo o uso de expressões lambda em construtores, finalizers e propriedades que aceitem a atribuição de valores (neste caso com as seções get e set presentes). No exemplo a seguir é possível observar a implementação da classe CargaDados, com um construtor e um finalizer: Já a próxima listagem traz o...
Continuar Lendo »
C# 5.0

Dicas sobre .NET: consultas LINQ em objetos compostos


Muitas consultas LINQ envolvem apenas a seleção de propriedades no conjunto de objetos que se está manipulando. Este procedimento costuma se assemelhar ao uso da cláusula SELECT em uma tabela relacional convencional. Embora a prática citada seja a mais comum em aplicações .NET, há casos nos quais objetos contam com propriedades que também são coleções. E eis que surge a necessidade de se retornar os valores dos objetos-filhos. Como proceder nestes casos? Ainda assim será possível o uso de uma consulta LINQ nestes cenários. Para exemplificar isto serão utilizadas duas classes (Cidade e Estado), cuja implementação está na próxima...
Continuar Lendo »
C# 7.0

Novidades do C# 7 – Local Functions


Neste terceiro post da série sobre novidades do C# 7 serão apresentadas as Local Functions. Se tiver interesse em saber mais sobre as postagens anteriores consulte os links: http://netcoders.com.br/csharp-7-pattern-matching/ http://netcoders.com.br/csharp7-binary-literals-digit-separators/ http://netcoders.com.br/csharp7-ref-returns/ Configurando o uso do C# 7 no Visual Studio “15” Para os exemplos descritos neste artigo foram criados dois projetos a partir do template “Console Application” do Preview 2 do Visual Studio “15”, com os mesmos utilizando a versão 4.6.1 do .NET Framework. O download do novo Visual Studio pode ser realizado por meio do seguinte link: https://www.visualstudio.com/en-us/news/releasenotes/vs15/vs15-relnotes Para configurar o uso do C# 7 acesse a seção...
Continuar Lendo »
C# 7.0

Novidades do C# 7 – Ref Returns


Neste terceiro post da série sobre novidades do C# 7 será apresentado em detalhes um recurso chamado Ref Returns. Caso queira acompanhar as postagens anteriores consulte os links: Novidades do C# 7 – Pattern Matching Novidades do C# 7 – Binary Literals e Digit Separators Configurando o uso do C# 7 no Visual Studio “15” Para o exemplo descrito neste artigo foi utilizado um projeto baseado no template “Console Application” do Preview 2 do Visual Studio “15”, além da versão 4.6.1 do .NET Framework. O download do novo Visual Studio pode ser realizado por meio do seguinte link: https://www.visualstudio.com/en-us/news/releasenotes/vs15/vs15-relnotes...
Continuar Lendo »
C# 7.0

Novidades do C# 7 – Binary Literals e Digit Separators


Embora ainda se encontre em fase de implementação e apresente funcionalidades passando pela fase de especificação/prototipação, algumas das novidades do C# 7 já estão disponíveis para testes no Visual Studio “15”. Num post anterior iniciei uma série sobre as novidades da linguagem, abordando em detalhes o uso do recurso chamado Pattern Matching. Neste novo artigo serão descritas duas novas funcionalidades que integram o C# 7: Binary Literals e Digit Separators. Para os exemplos descritos neste artigo foram utilizados projetos do tipo “Console Application” no Preview 2 do Visual Studio “15”, com os mesmos se baseando na versão 4.6.1 do...
Continuar Lendo »
C# 7.0

Novidades do C# 7.0 – Pattern Matching


Embora em 2015 tenha acontecido o lançamento oficial do C# 6.0, no decorrer deste ano a Microsoft já vinha trabalhando na versão 7.0 desta linguagem. O estágio atual deste release já contempla algumas funcionalidades em fase de finalização, ao passo que outros recursos se encontram no estágio de especificação ou, até mesmo, prototipação. O Build 2016 abordou algumas das funcionalidades esperadas para o C# 7.0, além de anunciar o Visual Studio “15” (nova versão do ambiente de desenvolvimento Microsoft). Maiores informações sobre o novo C# podem ser encontradas na seguinte página do projeto Roslyn: https://github.com/dotnet/roslyn/blob/master/docs/Language%20Feature%20Status.md Este artigo tem por...
Continuar Lendo »