A Microsoft anunciou hoje um novo e importante lançamento da plataforma de código aberto .NET 6, criada pela unificação dos produtos .NET Framework, .NET Core e Mono. Com o .NET 6, você pode criar aplicativos multiplataforma para navegadores, nuvem, desktops, dispositivos IoT e plataformas móveis usando bibliotecas unificadas e um processo de compilação comum, independentemente do tipo de aplicativo. Os assemblies do .NET SDK 6, .NET Runtime 6 e ASP.NET Core Runtime 6 foram projetados para Linux, macOS и WindowsO .NET Desktop Runtime 6 está disponível apenas para WindowsO trabalho relacionado a este projeto é distribuído sob a licença MIT.
O .NET 6 inclui o runtime CoreCLR com o compilador JIT RyuJIT, bibliotecas padrão, bibliotecas CoreFX, WPF, Windows Forms, WinUI, Entity Framework, a interface de linha de comando dotnet e ferramentas para desenvolvimento de microsserviços, bibliotecas, aplicações do lado do servidor, gráficas e de console. O conjunto de ferramentas de desenvolvimento de aplicações web ASP.NET Core 6.0 e a camada ORM Entity Framework Core 6.0 (drivers disponíveis, inclusive para SQLite e PostgreSQL) foram lançados separadamente, juntamente com as linguagens C# 10 e F# 6. O suporte para .NET 6.0 e C# 10 está incluído no editor de código aberto Visual Studio Code.
Características do novo lançamento:
- Desempenho significativamente melhorado, incluindo otimização de E/S de arquivos.
- O C# 10 introduz suporte para estruturas na forma de registros (record struct), a diretiva global using, namespaces vinculados a arquivos e novos recursos para expressões lambda. Suporte para geração incremental de código-fonte foi adicionado ao compilador.
- F# 6 introduz suporte para o mecanismo de execução de tarefas assíncronas e depuração em pipeline.
- Está disponível um recurso Hot Reload que fornece meios para editar o código dinamicamente enquanto um programa está em execução, permitindo que alterações sejam feitas sem interromper manualmente a execução e sem anexar pontos de interrupção. O desenvolvedor pode executar o aplicativo em "dotnet watch", após o qual as alterações feitas no código são aplicadas automaticamente ao aplicativo em execução, o que permite observar imediatamente o resultado.
- Adicionado o utilitário "dotnet monitor" para acessar informações de diagnóstico do processo dotnet.
- É proposto um novo sistema de otimização dinâmica baseado nos resultados do perfil de código (PGO - Profile-guided Optimization), que permite gerar código mais otimizado com base na análise de recursos de execução. O uso do PGO melhorou o desempenho do conjunto TechEmpower JSON "MVC" em 26%.
- ASP.NET Core, HttpClient e gRPC adicionaram suporte para o protocolo HTTP/3.
- API estendida relacionada ao formato JSON. Adicionado novo gerador de código System.Text.Json e sistema de serialização de dados JSON.
- Blazor, a estrutura de aplicativos web C#, adiciona suporte para renderização de componentes Razor a partir de JavaScript e integração com aplicativos JavaScript existentes.
- Adicionado suporte para compilar código .NET em uma visualização WebAssembly.
- O suporte para links simbólicos foi adicionado à API File IO. FileStream completamente escrito.
- Adicionado suporte para a biblioteca OpenSSL 3 e algoritmos criptográficos ChaCha20/Poly1305.
- O Runtime implementa mecanismos de proteção W^X (Write XOR Execute) e CET (Control-flow Enforcement Technology).
- Adicionado suporte experimental para iOS e Android como plataformas TFM (Target Framework Moniker).
- Suporte significativamente melhorado para sistemas Arm64. Adicionado suporte para dispositivos Apple baseados no chip ARM M1 (Apple Silicon).
- O processo de construção do SDK .NET a partir do código-fonte foi fornecido, o que simplifica o trabalho de criação de pacotes .NET para distribuição. Linux.
Fonte: opennet.ru
