Microsoft Releases .NET 9
                Categories:
                    Microsoft
                    Technologies
            
                
                .NET 9 introduces a range of features and improvements aimed at enhancing performance, security, and developer productivity. Key updates include:
Runtime Enhancements:
- Feature Switches with Trimming Support: New attributes enable defining feature switches, allowing unused code to be excluded during trimming, optimizing application size and performance.
 - Dynamic Garbage Collection: The garbage collector now adapts dynamically to application sizes, improving memory management efficiency.
 
Library Updates:
- System.Text.Json:
- Support for nullable reference type annotations.
 - Ability to export JSON schemas from types.
 - Options to customize JSON indentation and read multiple root-level JSON values from a single stream.
 
 - LINQ Enhancements: Introduction of 
CountByandAggregateBymethods for aggregating state by key without allocating intermediate groupings. - Cryptography:
- New one-shot hash method on 
CryptographicOperations. - Introduction of classes utilizing the KMAC algorithm.
 
 - New one-shot hash method on 
 - Reflection: Addition of 
PersistedAssemblyBuilderfor saving emitted assemblies, including support for emitting symbol information for debugging. - TimeSpan Enhancements: New 
From*methods allow the creation ofTimeSpanobjects from integers, reducing errors from floating-point imprecision. 
SDK and Tooling Improvements:
- Workload Sets: Ensures workloads remain at a specific version until explicitly updated, providing greater control over development environments.
 - Tool Roll-Forward Option: Users can now decide if .NET tools should run on newer runtime versions, enhancing flexibility.
 - Unit Testing Enhancements: Improved MSBuild integration allows running tests in parallel, optimizing testing workflows.
 - NuGet Security Audits: By default, audits now include both direct and transitive package references, bolstering security.
 - Terminal Logger: Enabled by default with usability improvements, including summarized counts of failures and warnings at the end of builds.
 - MSBuild Script Analyzers ("BuildChecks"): New analyzers help detect defects and regressions in build scripts.
 - Analyzer Mismatch Detection: The SDK can detect and adjust for version mismatches between the .NET SDK and MSBuild, preventing potential issues.
 
Language Updates:
- C# 13:
- Introduction of 
paramscollections. - New lock type and semantics.
 - Enhanced method group natural type inference.
 - Implicit indexer access in object initializers.
 - Support for 
reflocals and unsafe contexts in iterators and async methods. - Allowing 
ref structtypes to implement interfaces and as arguments for type parameters in generics. - Partial properties and indexers in partial types.
 - Overload resolution priority attribute for better overload selection.
 
 - Introduction of 
 - F# 9:
- Support for nullable reference types.
 - New discriminated union 
.Is*properties. - Enhancements to active patterns and computation expressions.
 - Various productivity, performance, and tooling improvements.
 
 
Framework and Tooling Updates:
- ML.NET 4.0: Adds support for additional tokenizers, including Tiktoken, and models like Llama and CodeGen, enhancing machine learning capabilities.
 - .NET Aspire:
 
ASP.NET Core:
- .NET MAUI: Focuses on product quality enhancements and introduces new features for cross-platform app development.
 - Entity Framework Core: Updates include significant enhancements to the Azure Cosmos DB provider, steps towards AOT compilation, and pre-compiled queries.
 - Windows Presentation Foundation (WPF): Adds support for Windows 11 theming and hyphen-based ligatures, improving desktop application aesthetics.
 
These updates in .NET 9 aim to provide developers with more robust, efficient, and secure tools for modern application development.
Comments:
            
            
                Please log in
                to be able add comments.