deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (native)

Microsoft, C# 15 union tipleri ve kapsamlı runtime performans çalışmalarıyla .NET 11'i yayınladı

Microsoft, C# 15 union tipleri, daha hızlı bir SDK, ASP.NET Core güncellemeleri ve kapsamlı runtime optimizasyonlarıyla .NET 11'i yayınladı. İki yıl desteklenen bir Standard Term Support sürümü.

Microsoft, C# 15 union tipleri ve kapsamlı runtime performans çalışmalarıyla .NET 11'i yayınladı

Microsoft, .NET 11'i iki yıllık STS sürümü olarak yayınladı

Microsoft, .NET 11'i 10 Kasım 2026'da .NET Blog üzerinden duyurdu. Sürüm, iki yıl destek hakkı veren bir Standard Term Support (STS) sürümü. Duyuruya göre STS ve Long Term Support (LTS) sürümleri aynı kalite ve bakım politikalarına sahip; yalnızca destek süreleriyle ayrışıyorlar. .NET 10 ise desteklenen LTS seçeneği olmaya devam ediyor. Microsoft lansmanı 10–13 Kasım tarihlerinde düzenlenen .NET Conf ile taçlandırıyor.

C# 15 varsayılan dil haline geliyor

C# 15, .NET 11'i hedefleyen projelerde varsayılan dil sürümü. Öne çıkan yeniliği union tipler: bir değer, bildirilen bir dizi case tipinden biri olabiliyor; bu tiplerden dönüştürmeler ve switch ifadelerinde exhaustiveness (tamlık) denetimi destekleniyor. Duyuru, ya bulunan bir ürünü ya da bulunamadı kaydını döndüren bir ürün sorgusu örneği veriyor; böylece çağıran taraf, object'e ya da ilgisiz bir temel sınıfa başvurmadan hangi sonuçları ele alması gerektiğini tam olarak biliyor.

Union tipleriyle birlikte kapalı hiyerarşiler (closed hierarchies) de geliyor. Kapalı bir sınıf, doğrudan türetmeyi bildirildiği assembly ile sınırlıyor ve derleyiciye hiyerarşi genelinde desen denetimi için gereken bilgiyi sağlıyor. Union tipler mevcut tipleri birleştirmeye uygunken, kapalı hiyerarşiler kalıtım ilişkisinin size ait olduğu modellere uyuyor.

Daha küçük özellikler arasında, geliştiricilerin comparer ya da factory argümanlarını collection expression sözdizimini koruyarak geçebilmesini sağlayan collection expression argümanları, ayrıca extension indexer'lar ve etiketli break ile continue yer alıyor. Bellek güvenliği çalışmaları ise hâlâ preview aşamasında ve tercihe bağlı. F# 11 de yayımlanıyor; daha düşük derleyici bellek kullanımı, FSharp.Core koleksiyon işlemlerinde daha az allocation ve eşzamanlı asenkron işi sınırlamanın yeni yollarıyla geliyor.

Varsayılan olarak daha yalın SDK ve araçlar

SDK artık varsayılan olarak Native AOT CLI host'unu etkinleştiriyor; böylece help ve version sorguları gibi komutlar yönetilen CLI'yı başlatmadan çalışabiliyor, yönetilen yürütmeye ihtiyaç duyan komutlar ise onu kullanmaya devam ediyor. MSBuild sunucusu da varsayılan olarak çağrılar arasında sıcak kalıyor ve tekrarlayan başlatma işini azaltıyor; Linux ve macOS kurulum dosyaları ise assembly tekilleştirme sayesinde daha küçük.

Dosya tabanlı uygulamalar #:include ile kaynak dosyalara yayılarak büyüyebiliyor ve solution filter'lar komut satırından oluşturulup düzenlenebiliyor. dotnet watch, Aspire app-host entegrasyonu, çökme kurtarma ve mobil projeler için cihaz seçimi ekliyor. Microsoft.Testing.Platform kullanan ekipler dotnet test içinde çalışma düzeyinde zaman aşımları, hata limitleri ve daha net ilerleme raporlaması elde ediyor — duyuru bu anahtarların VSTest seçenekleriyle birbirinin yerine kullanılamayacağını belirtiyor. Container yayımlama, tekrarlanabilir image digest'ler kazanıyor ve gereksiz layer yüklemelerinden kaçınıyor; NuGet kaynak yapılandırması ise minimum paket yayımlanma yaşı ayarı kazanıyor — Microsoft bunu bir politika kontrolü olarak nitelendiriyor, güvenlik açığı denetimlerinin yerini alan bir mekanizma değil.

Runtime'da her alanda optimizasyon

Performans çalışmaları hem yayımlanan kodu hem de geliştirici araçlarını etkiliyor. Duyuru, büyük bir runtime ve kütüphane optimizasyonu setini benchmark'lar ve örneklerle belgeleyen Stephen Toub'un derinlemesine yazısına işaret ediyor.

JIT iyileştirmeleri daha fazla gereksiz sınır denetimini ve dalı kaldırıyor, devirtualization'ı geliştiriyor ve daha fazla işlemi sabitlere indiriyor — örneğin, girdiler derleme zamanında biliniyorsa ek SequenceEqual çağrıları optimize ediliyor. Native AOT arayüz dispatch'i artık, arayüz çağrı noktalarında gereken kodu küçülten ve arayüz çağrılarının ağırlıkta olduğu iş yüklerinde throughput'u artıran paylaşımlı bir yardımcı kullanıyor. Donanım desteği, desteklenen x64 ve Arm64 çiplerde Half işlemleri için FP16 talimatlarıyla ve yeni vector oluşturma ve birleştirme API'leriyle genişliyor.

Tanılama tarafında, daha önce yalnızca mobil platformlarda bulunan süreç içi çökme raporu günlüğü artık Linux ve macOS'u da destekliyor; bir süreç çıkmadan önce yönetilen stack trace'leri, modül bilgisini ve runtime durumunu yakalıyor. Microsoft, throughput, başlangıç süresi, bellek kullanımı ve dağıtım boyutunun iş yüküne ve yayımlama seçeneklerine bağlı olduğu konusunda uyarıyor; ekipler kendi uygulamalarını ölçmeli. Asenkron askıya alma ve sürdürmeyi derleyicinin ürettiği mekanizmadan runtime'a taşıyan Runtime Async, sürüm boyunca tekrarlanan bir tema.

Web, yapay zeka ve platformlar arası güncellemeler

ASP.NET Core, asenkron doğrulama, OpenAPI 3.2 desteği ve Blazor ile SignalR için yeni yetenekler ekliyor. Deneysel Blazor AI bileşenleri, ajan destekli web deneyimleri için Agent User Interaction Protocol (AG-UI) ile entegre oluyor.

Daha geniş yapay zeka çalışması açısından Microsoft, model erişimi için Microsoft.Extensions.AI'ı, araç entegrasyonu için MCP'yi ve agent ile iş akışları için Microsoft Agent Framework'ü öne çıkarıyor. Ajan destekli geliştirici araçları arasında .NET'e özgü rehberlik için .NET Skills, çalışan uygulamaları inceleyip test etmek için .NET MAUI DevFlow ve modernizasyon ilerlemesini gözden geçirmek için .NET Upgrade canvas yer alıyor.

.NET MAUI, varsayılan runtime olarak CoreCLR'a geçiyor; XAML yinelemesi ve native kontrollerde iyileştirmelerle birlikte. Temel kütüphaneler, yerleşik Zstandard sıkıştırma, daha basit süreç yürütme, daha zengin JSON desteği ve bellek içi verilerle önce kopyalamadan çalışmanın yeni yollarını ekliyor.

Neden önemli

.NET 11, Microsoft'un yıllık ritmini koruyor; iki yıllık STS penceresi, benimseyen ekiplerin bir sonraki yükseltmelerini bu zaman dilimi içinde planlamaları gerektiği anlamına geliyor. Araçlardaki değişiklikler — varsayılan olarak etkinleştirilen Native AOT CLI host'u ve sıcak MSBuild sunucusu — geliştiricilerden hiçbir eylem gerektirmeden günlük komutları hızlandırıyor. C# 15'in union tipleri ve kapalı hiyerarşileri, derleyici denetimli durum modellemesini dilin kendisine taşıyor; bu, fonksiyonel dillerden uzun zamandır tanıdık bir desen. Bu arada, MEAI ve Agent Framework'ten AG-UI Blazor bileşenlerine kadar yapay zeka ile ilgili özelliklerin yayılması, Microsoft'un .NET geliştiricilerinden bundan sonra nereye yatırım beklediğinin sinyalini veriyor; runtime çalışmalarının hacmi ise saf performansın hâlâ platformun çekici merkez özelliği olduğunu gösteriyor.

  • #dotnet
  • #csharp
  • #microsoft
  • #asp-net
  • #runtime-performance

İlgili yazılar