Yazılar · 10.06.26 · 4 dk

.NET 11 Preview 5 yayında

.NET 11 Preview 5'te neler değişti, hangi geliştirici sorununa cevap veriyor — jargon sözlüğüyle.

.NET 11 Preview 5 yayında

Kaynak (İngilizce orijinal): .NET 11 Preview 5 is now available! · .NET Team · 10 Haziran 2026

Bu yazıda ne var?

.NET 11 Preview 5 .NET, Microsoft’un açık kaynak uygulama geliştirme platformudur; C#, F# ve VB.NET ile web, mobil, masaüstü ve sunucu yazılımları yazılır. Preview sürümü, henüz kararlı olmayan ve deneme amaçlı yayınlanan versiyondur. .NET 11’in beşinci preview’ü çıktı. Bu yazıda güncellemeleri “hangi geliştirici sorununu çözüyor?” sorusuyla, teknik terimleri sade Türkçe ile açıklayarak ele alıyoruz.

Kütüphaneler: günlük kod yazarken ne kolaylaşıyor?

JSON, veriyi metin olarak taşıyan yaygın bir format. JSON Lines ise her satırda bir JSON nesnesi olan format; log akışları ve yapay zeka ajanlarının iz kayıtları için uygundur. System.Text.Json artık bu formatı doğrudan yazıp okuyabiliyor — elle birleştirme kodu azalıyor.

LINQ, C#’ta koleksiyonları sorgulamak için kullanılan sözdizimidir. Full outer join, iki tablodaki tüm satırları eşleştirmeye çalışır; eşleşmeyenler de sonuçta kalır. Eksik veri analizlerinde SQL’e gitmeden C# içinde çözüm sunar.

X25519, modern şifrelemede anahtar paylaşımı için kullanılan bir algoritmadır. Kütüphaneye eklenmesi, güvenli iletişim protokollerini .NET içinde kurmayı kolaylaştırır.

Random sınıfındaki yeni tip-güvenli (generic) API’ler, rastgele sayı üretirken yanlış tipe dönüştürme hatalarını azaltır.

Runtime: program çalışırken ne hızlanıyor?

Runtime, kodunuzun çalıştığı motor katmanıdır. Async/await, uzun süren işlemlerde (ağ isteği, dosya okuma) thread’i meşgul etmeden beklemenizi sağlar. Bu bekleme mekanizması hızlandı; çok sayıda eşzamanlı bağlantıda gecikme düşer.

JIT (Just-In-Time), kodu çalışma anında makine diline çeviren derleyicidir. Sık çalışan kod yollarında küçük performans kazançları var.

GC (Garbage Collector), kullanılmayan belleği otomatik temizler. Trimming, kullanılmayan kod parçalarını paketten çıkarır; compaction ise bellek parçalanmasını azaltır. Konteyner ortamlarında daha az duraklama ve daha küçük bellek ayak izi hedefleniyor.

SDK: proje kurarken ne değişiyor?

SDK, dotnet komut satırı araçlarının tamamını içeren geliştirme kitidir. File-based app, tek .cs dosyasından çalışan küçük programlardır; artık başka C# dosyalarına referans verebiliyor — script’ten modüler yapıya geçiş kolaylaşıyor.

Derleme sırasında vulnerability (güvenlik açığı) ve EOL (destek süresi bitmiş) paket kontrolü geldi. Kullandığınız NuGet paketi riskliyse veya framework artık desteklenmiyorsa build sırasında uyarı alırsınız — tedarik zinciri güvenliği için erken uyarı.

dotnet new MCP Server şablonu, yapay zeka ajanlarının dış araçlara bağlandığı MCP (Model Context Protocol) sunucusu iskeletini tek komutla oluşturur.

Yeni konsol uygulamaları varsayılan olarak HTTP istekleri ve JSON işleme için gerekli kütüphaneyi içeriyor; küçük API istemcileri yazarken ek paket kurma adımı azalıyor.

C# dili: tip güvenliği ve bellek

Closed class hierarchy, bir sınıf hiyerarşisinin dışarıdan genişletilemeyeceğini derleyiciye bildirir; beklenmedik alt sınıf sürprizlerini önler.

Union (birleşim tipi), bir değişkenin birkaç farklı şekilden yalnızca birini taşıyabileceğini ifade eder — Rust’taki enum mantığına benzer, hata yönetiminde netlik sağlar.

Unsafe Evolution, C# 16’nın bellek güvenliği hazırlıklarının parçası; düşük seviye bellek erişimini daha kontrollü hale getirmeyi hedefliyor.

ASP.NET Core: web uygulaması geliştirenler için

ASP.NET Core, .NET ile web API ve web arayüzü yazmak için kullanılan çatıdır.

Form doğrulama sorunu: Kullanıcı hatalı veri girdiğinde sayfa yenilenmeden uyarı göstermek istiyorsunuz. Sunucu tarafı render (SSR = sayfa sunucuda hazırlanıp tarayıcıya gönderilir) ile çalışan Blazor uygulamalarında artık istemci tarafı doğrulama, tam etkileşimli moda geçmeden de çalışıyor — daha hızlı geri bildirim.

Tablo gösterme sorunu: Büyük veri listelerinde sayfalama ve sıralama lazım ama JavaScript yüklemek istemiyorsunuz. QuickGrid bileşeni artık statik sunucu render ile de kullanılabiliyor.

Hibrit barındırma sorunu: Uygulamanın bir kısmı sunucuda, bir kısmı tarayıcıda çalışsın istiyorsunuz. WebAssembly geçidi bu geçişi yönetmeyi kolaylaştırıyor.

Oturum verisi sorunu: Kullanıcının oturum bilgisini bileşen parametresine elle aktarmak hataya açık. SupplyParameterFromSession attribute’u bunu bildirimsel (declarative) yapıyor — “bu parametre oturumdan gelsin” demek yeterli.

MAUI ve veritabanı katmanı

MAUI, tek kod tabanından Android, iOS, Windows ve macOS uygulaması yazmayı sağlayan çatıdır. Bu preview’de güvenilirlik düzeltmeleri, iptal edilebilir animasyonlar ve harita desteği iyileştirmeleri var.

Entity Framework Core (EF Core), veritabanı işlemlerini C# nesneleri üzerinden yapan ORM aracıdır. Tek dosyalık projelerde dotnet ef komutu çalışıyor; async sorguyu yanlışlıkla senkron çalıştırırsanız EF1004 uyarısı veriyor — bu, kilitlenme (deadlock) riskini erken yakalar. Üretilen SQL sorguları da daha okunaklı hale geliyor.

Özet

.NET 11 Preview 5, tek bir büyük özellikten çok günlük geliştirme sürtünmelerini azaltan paket bir güncelleme. Güvenlik kontrolleri build aşamasına taşınıyor, web formları ve tablolar daha az JavaScript ile çalışabiliyor, veritabanı katmanı hataları daha erken uyarıyor. Kararlı production ortamınız .NET 10 LTS ise preview’ü ayrı bir dalda deneyin; CI pipeline’ınıza güvenlik taraması ve EF uyarılarını ekleyerek gerçek projede ne değişeceğini görün.

.NET 11 Preview 5 yayında — Aziz Osmanoğlu