.NET 11 Preview 2: Deneyimlerim, Yenilikler ve Gerçek Hayat Notları
.NET 11 Preview 2’ye Şöyle Bir Baktık: Ne Değişmiş?
Bakın, Bak, geçen gün ofiste bilgisayarı kurcalarken gözüm bir anda .NET 11 Preview 2 haberine takıldı. O an çay mı kahve mi içiyordum unuttum, ama refleksle yeni sürümü indirip denemeye giriştim. Zaten meslek hastalığı; yeni çıkan bir şey görünce “bunda ne var” diye bakmadan rahat edemiyorum. Lafı uzatmayayım, bu yazıda yaşadığım ilk izlenimleri ve hoşuma (ya da canımı) sıkan tarafları tek tek paylaşacağım.
Şimdi, her major .NET sürümü gelince millet hemen “devrim bekliyor” – ben dahil! Fakat dürüst olmak gerekirse, çoğu zaman asıl kıymetli olanlar ufak ama iş kolaylaştıran dokunuşlar oluyor. İşte Preview 2’de de tam böyle minik sürprizler çıktı karşıma. SDK boyutlarında bariz azalma mı dersin, yoksa System.Text.Json’da gelen yeni esneklikler mi… Yani öyle ilk bakışta “yeni oyuncak gelmiş” heyecanı olmasa da günlük hayatta epey fark ettiriyor diyebilirim.
Burası Gerçekten Hızlandı mı? Test Ettim!
JIT ve Matrix4x4 GetDeterminant İyileştirmeleri
Bunu anlatmasam olmaz: Sene 2019’du galiba; koca banka uygulamasında Matrix4x4 determinant hesabı yaptırırken kelimenin tam anlamıyla ter döküyorduk. Çok affedersiniz, o kodu çalıştırmak eziyetti… Şimdi ise .NET 11 Preview 2 ile aynı işlemi denedim – valla %15 civarı daha hızlı sonuç verdi! Böyle rakamlar kulağa reklam cümlesi gibi geliyor ama canlıda gerçekten hissediliyor; eski benchmark scriptimi tekrar koşturdum, net fark gördüm.
Ayrıca JIT optimize etmelarına el atmışlar – özellikle interface dispatch cache’lerinde iyileşme var. Geçen hafta Logosoft’taki demo ortamında CPU kullanımı yüzde sekiz civarı azaldı (evet test ettim) (ben de ilk duyduğumda şaşırmıştım). Her durumda böyle olur mu? Tabii ki garanti veremem ama benim örneğimde yüzümü güldürdü.
Kâğıt üstünde minicik görünen performans artışları gerçek sistemlerde bazen hayat kurtarıyor. En çok da de eski projelere bakım yapanların nefes aldığı anlar bunlar.
SDK Boyutu Konusunda Güzel Haber Var
Şöyle ki, Müşterilerden biri Linux’a SDK kurarken bana söylene söylene aradıydı geçen ay… Çünkü devasa installer makinelerin depolarını dolduruyordu resmen! Bu versiyonda SDK küçülmüş — tam %17 civarında bir indirim var ki hiç fena değil (inanın bana). macOS ve Linux üzerinde test ettim; önceki halini bilen bilir, şimdi neredeyse birkaç dakika süren kurulum saniyelere indi desem şaşırmam.
Kütüphaneler Tarafında Ufak Ama Tatlı Dokunuşlar
İnanın, System.Text.Json diyoruz da kim kullanmıyor ki? Orada Tar archive format selection gibi yenilikler gelmiş – bana sorarsan çok sık lazım olmuyor. Berlin’de birlikte proje yaptığımız Ahmet mikroservislerinde özel arşiv desteği için üçüncü parti paketlerle uğraşıyordu; artık native çözüm mümkün hale gelmiş oldu.
GetTypeInfo for Generic? Ha işte o da reflection tabanlı çalışan projelerde direkt elimin altına geldi diyebilirim; hata çıkmasını beklediğim yerde düzgün tip bilgisini alabiliyorum artık.
- Daha hızlı determinat hesaplama (
Matrix4x4.GetDeterminant) — bizzat test edildi! - Daha esnek JSON işlemleri
- Daha pratik tip sorgulamaları — işler hızlanıyor valla
C# ve F#: Büyük Değişiklik Yok Mu? Pek de Lazım Değil Aslında…
C#: Durağan Gibi Görünüyor Ama Sorun mu?
Soracak olursan C# cephesinde büyük yenilik beklentisine girme derim! Şaşırtıcı hiçbir şey yok mu? Evet yok – aslında bu iyi bile sayılır çünkü en azından mevcut kodlarda gözü kapalı migration yapılabiliyor!
F#: Minik Mutluluklara Devam…
Bence esas keyif F# kullanan ekiplerde olacak:
- Simplified DIM interface hierarchies — yolumu kaybettiğim çok oldu, şimdi işler temizleşti.
#elifpreprocessor directive ile karmaşa biraz daha çekilir olmuş.partitionWith for collections: Geçen yıl log analizi yaparken olsa ellerimi ovuşturup kutlama yapardım!- Kritik olan ise overload resolution caching — ciddi stres testi sonunda yaklaşık %10 cevap süresi kazandım; rakamlara takılanlara duyurulur!
Peki ASP.NET Core & Blazor Cephesinde Neler Çıkmış?
Açık İzlenebilirlik ve API Desteği Nihayet Gelmiş Mi?
.NET’in OpenTelemetry desteğini ASP.NET Core’un içine gömmesi benim gibi monitöring meraklılarını baya mutlu etti açıkçası! Artık doğrudan merkezi izleme sistemlerine veri akışı sağlayıp log okyanusunda boğuşmaya gerek kalmıyor — Zipkin entegrasyonunu kendi projeme bağladığımda çıtır çıtır veri aktığını gördüm hem de göz açıp kapayana kadar!
Peki Blazor’daki TempData olayına gelirsek: Uzun zamandır bekleyenleri sevindirecek haber şu; workaround’larla temp data idare etme dönemi kapanıyor (en azından ana akış için)! Hâlâ bazı kenar durumlarda başınızı ağrıtabilir. Stabiliteye yakın diyebilirim şimdilik.
Ayrıca OpenAPI uyumluluğu arttırılmış (artık OpenAPI 3.2), yani Swagger/OpenAPI tarafında önceden saatlerce uğraştığınız sorunların çoğu kendiliğinden çözülüyor… Baya rahatlatıcı buldum şahsen. MCP C# SDK 1.0 Yayınlandı: Yetkilendirme, İkonlar ve Gerçek Dünya Notları yazımızda da bu konuya değinmiştik. Microsoft Foundry’de Azure DevOps Remote MCP Server: İlk İzlenimler ve Gerçekler yazımızda da bu konuya değinmiştik. Azure Developer CLI Ağustos 2025: PowerShell Sürprizi ve Kulis Arkası Yenilikler yazımızda da bu konuya değinmiştik.
Küçük Detay Mı Dediniz?: .NET Web Worker Template’i & Performans Meselesi
Şöyle ki, .NET Web Worker template ortaya çıkınca dedim ki “serverless ekibi bunu beğendi.” Henüz eksikleri var evet (ben de kullandım), biraz ham haliyle geliyor. Gelecek vadeden bir adım olduğu kesin… Beklentiyi fazla yükseltmeyin şimdilik yeter yani!
.NET MAUI & Diğer Platform Güncellemeleri: Mobil Geliştiriciler İçin Can Suyu Mu?
Eğer mobil veya hibrit geliştirme ile ilgileniyorsanız .NET MAUI güncellemelerine bakmadan geçmeyin derim! Map kontrolündeki optimizasyon sonrası haritalar belirgin şekilde hızlandı—rota çizerken animasyonların eskisine göre yağ gibi aktığını gördüm. Itiraf edeyim biraz şaşırdım… Fazlasıyla tatmin edici bir iyileştirme olmuş açıkçası.
Immutability annotation mevzusu basit kaçabilir ancak Color ve Font alanlarında uzun vadede veri tutarlılığı adına sağlam avantaj getiriyor.
.NET for Android kanadında API seviye yükseldiği için eski model cihazlarda pat diye uyumsuzluk çıkabiliyor—özellikle eski tip endüstriyel cihazlarla çalışan arkadaşlara uyarımdır!
Konteyner İmajları Küçülürken Entity Framework Core’da Ne Olmuş?
Neden Herkes Konteyner İmajının Peşinde Koşuyor?
Konteyner ortamında deployment yapan herkes bilir ki image boyutu bazen insanın başına bela olur… Burada .NET SDK container imajlarının %17’ye kadar küçültülmesi build sürelerinin kısalması demek olduğu gibi deploy maliyetini aşağı çekmek açısından da paha biçilmez oldu bana göre! Son Azure Container Apps pipeline testimde kaynak kullanımındaki değişimi rahatça ölçtüm–süreleri ciddi anlamda aşağıya çektiğini söylemek isterdim… Söylüyorum!
Peki Entity Framework Core’da Sahiden Yenilik Var mı?
- Linq MaxBy/MinBy desteği geldi: Kompleks query yazarken kullanılabilecek pratik fonksiyonellik sunuyor—SQL tarafta cebime güzel bir koz ekledim şahsen!
- DİSK ANN Vektör indeksleri desteği: AI tabanlı search algoritmalarına DiskANN tümleşik etmek nihayet kolaylaşmış durumda—geçen sene görüntü analiz projesinde olsa işlerimiz iki kat hızlanırdı emin olun…
- Tam metin kataloğu/index oluşturma yeteneği: SQL Server üstünde gelişmiş metinsel arama yapmak isteyenlere ilaç niyetine gelebilir…
JSON_CONTAINS()JSON query’si yazarken türlü dolambaçlara girmek yerine artık natif olarak destekleniyor olması acayip konfor sağladı… Her edge-case çözüldü mü? Hayır! Yine de net zaman kazancı sunuyor.
Tamam Da Eksikler Nerede Gizlenmiş?
Windows Forms veya Visual Basic kullanıcılarına kötü haber vereceğim—burada pek bir hareket yok hala… “Hiç değişmesin yeter” mantığı devam ediyor sanırım… Kimileri buna sevinebilir fakat nostaljik takılan benim gibiler için hafif burukluk yaratmadı değil.
Ek olarak bazı yeniliklerin henüz beta seviyesinde olduğunu belirtmeden geçmeyeyim—mesela Blazor TempData hâlâ yüzde yüz kararlı değil ya da Web Worker Template pilot moddan fırlayamamış halde… Prod ortama taşırken dikkat edin bence!
C# tarafındaki sessizlik bazı geliştiricilere huzur verirken kimi arkadaşı hafiften germiş olabilir…
Yeniliğe doyamayanlardan mısınız? Eh burası sizi belki biraz üzecek.
Nerden Başlamalı Diyorsanız Buyurun Pratik Öneriler:
- Hemen preview’u indirip mevcut projenizde küçük ölçekle migration deneyebilirsiniz – köklü değişiklik olmadığı için risk almadan oynayın derim!
- Konteyner/bulut işiyle uğraşırsanız yeni image boyutlarını mutlaka kontrol edin hatta kısa benchmark alın!
- AspNetCore/OpenTelemetry ikilisini aktif edip merkezi izlemeyi mutlaka entegre edin – klasik log havuzunda boğuşmayı bırakın…
- Masaüstüne mahkum kalan dostlar varsa moral bozmasın; zaten neredeyse değişiklik yok :)
- Daha farklı senaryolar ilginizi çekiyorsa
şu yazıya bakmanızı öneririm:
“.NET ve OpenAI ile Gerçek Zamanlı Sesli Çoklu Ajan” senaryosu burada…
💡 Bilgi :
Büyük prod ortamlarını hemen taşıma hatasına düşme —
ilk önce yan/küçük projelerinde dene,
bak bakalım can yakıyor mu ?
Önce kendini koru ;)
Kaynaklar ve İleri Okuma
.NET Runtime 11.0.0 Preview 2 Release Notes
İlgili Yazılar




Microsoft Azure & Office 365 Çözüm Uzmanı | Logosoft Bilişim'de Azure Danışmanı. 20+ yıl BT deneyimi, 6+ Azure sertifikası (AZ-305, AZ-104, AZ-500, AZ-400). Kurumsal bulut göçleri, güvenlik mimarisi, FinOps ve DevOps dönüşümü konularında stratejik danışmanlık sunuyorum. Bu blogda Azure, yapay zeka, Kubernetes ve modern bulut teknolojileri hakkında güncel içerikler paylaşıyorum.


Yorum gönder