Windows 8 & .Net Framework 3.5
Windows 8 Developer Preview’ın yayınlanması sonrası karşımıza öğrenmemiz gereken pek çok yeni özellikle çıktı. Blogumda fırsat buldukça sizlerle paylaşmaya çalıştığım bu özelliklerden bir tanesi var ki hali hazırda .net framework ile yazılım geliştirenler yakından ilgilendirmekte. Bir önceki yazımda sizlere .net framework 4.5’in bir yerinde yükseltme olduğunu (in-place update) ve 4.0 kurulu sistemlerde bu framework sürümünün yerini aldığından bahsetmiştim. Önceki .net framework sürümlerinde takip edilen yan yana kurulumu (site-by-site installation) incelediğimizde ise aşağıdaki dezavantajlarından bahsetmiştim;
- Öncelikle, her bir .Net kurulumu diskinizde hatırı sayılır bir alan işgal ediyor olacak. Her ne kadar disk alanları Terabayt’ları bulan günümüz masaüstü bilgisayarları için bu durumu bir problem oluşturmasa da dizüstü, netbook ve özellikle de tablet sistemlerde disk alanı uygulamalarca paylaşılan oldukça değerli bir kaynaktır.
- Birden fazla .Net sürümüne sahip olmak beraberinde de bir bakım maliyeti getirecektir. Kurullu her bir .Net sürümü ayrı ayrı güncellemelere, hizmet paketlerine, hata düzeltmelerine sahip olacaktır. Bunların takibi kişisel bilgisayar sahipleri için çok büyük bir problem oluşturmuyor olsa da kurumsal sistemlerde önemli bir maliyet kalemi oluşturabilmektedir.
.Net framework 4.5 ile birlikte yapılacak yerinde yükseltme 4.0 için bu problemlerden bizleri kurtarıyor; peki ya .net framework’ün alt sürümleri? Windows 8’de .net framework 3.5 için de bizleri bekleyen süprizler var. Öncelikli olarak; Windows 8 kurulumu içerisinde varsayılan olarak .net framework 3.5 kurulu olarak gelmemekte. Bu konu pek çoklarının tepkisini çekiyor olsa da sabırla yazımın devamını okumanızı tavsiye ederim.
Windows 8’de .net framework 3.5 varsayılan olarak kurulu gelmiyor; fakat bu pek çoklarının iddia ettiği gibi Microsoft’un 4.0 altı framework sürümlerine olan desteğini çektiği anlamına kesinlikle gelmemekte. Aksine, .Net framework 3.5 işletim sistemine gömülü bir özellik olarak karşımıza gelmekte; sadece gerektiğinde aktif edilebilecek bir özellik!
İhtiyaç halinde aktive edilen bir özellik, aynı Windows 7’de yer alan ve varsayılan olarak aktif gelmeten IIS ya da Telnet istemcisi gibi; ama tek bir farkla : bu özellikle kendisine ihtiyaç duyulduğu anda aktif hale gelmekte. Evet, yanlış okumadınız; Windows 8 içerisinde yer alan .net framework 3.5 özelliği kendisine ihtiyaç duyulan ilk anda kullanıcı onayıyla aktif hale gelmekte (Feature-On-Demand). İnternetten kurulum aramaya gerek yok, kullanıcının kurulumu yapmasına gerek yok… sadece aşağıdaki gibi bir diyalogta özelliğin açılması onaylanmalı;
Windows 8’de .Net framework 3.5 özelliği iki farklı şekilde aktif hale gelmekte;
- Uygulamanız kurulum sırasında .net framework 3.5 kurmaya çalışır. .Net framework 3.5 MSI shim kurulumu tespit ederek 3.5 özelliğini sizin için aktif hale getirir, kurulum normal şekilde devam eder.
- Herhangi bir kurulum olmaması ya da kurulum sırasında .net framework 3.5 kurulumu talep edilmemesi durumunda ise uygulamanız normal şekilde başlayarak .net framework 3.5’i kullanmaya çalışır, bu durum işletim sistemince farkedilerek 3.5 özelliği aktif hale getirilir ve uygulamanız doğru framework’ü kullanabilmesi için yeniden başlatılır.
Tüm bunların getirdiği avantajlar ise gereksiz bir kurulum ile disk alanı kullanılmamakta ve daha da önemlisi kullanılmayan bir .net framework sürümü için sisteminiz devamlı güncelleme talep etmemekte, olası bir güvenlik açığı oluşturmamakta.
Tabi ki bu özelliğin aktif edilmesi sırasında kullanıcı onayı talep ediyor olması sıkıntı yaratabilir. Kimilerine göre bu durum son kullanıcı açısından uygulamanızın eski/legacy bir uygulama olarak algılanmasına neden olabilir. Böylesi bir algı tabi ki sadece bu özelliği ilk defa kullanan uygulama için geçerli olacaktır. Böylesi bir algıdan kaçınmak isteyen firmaların ise uygulamalarını .net framework 4.0 ve üzerine taşımaları tabi ki kaçınılmazdır.
Son olarak, Windows 8 ile birlikte Microsoft’un .net framework 3.5 ve alt sürümlerine desteğini vermediğini söyleyenlerle aynı fikirde olmadığımı belirtmek isterim. Bloğumda sıkça paylaşıtığım aşağıdaki .net yol haritasını inceleyelim;
Burada dikkat edecek olursanız .net framework 3.5 SP1 CLR 2.0 üzerinde kurulu, aynı 2.0, 3.0 ve 3.5 gibi. Bunun anlamı derleme sonrası ortaya çıkan aradilin (CLI) aynı olduğu. Bu durumda da .net framework 2.0 ve 3.5 SP1 sürümleri arasında geliştirilen uygulamalar .net framework 3.5 SP1 çalışma zamanı üzerinde çalışabilir (istisnai olarak kimi zaman bazı ufak düzenlemeler gerekiyor olsa da). Bu bilgi ışığında Microsoft’un Windows 8 ile birlikte .net framework’ün alt sürümlerinden desteğini çekmediğini bir kez daha yenilemek isterim.
Related posts:
- .Net Framework 4.5 ve 4.0 Uyumluluğu
- .Net Framework, BCL ve CLR
- Windows 7 ve Windows Server 2008 R2 Beta Hizmet Paketleri
- Windows Installer için Özel Dizinler
- Windows Server AppFabric Beta 2 ve .Net 4.0 RTM
- Windows Server AppFabric Beta 2 Yenilemesi
- Windows 7 ve Windows Server 2008 R2 Service Pack 1
- BUILD Windows
- Windows 8 Developer Preview : VHD’den test
- Yeni Windows Home Server, Vail



October 15, 2011 










Android işletim sistemli cep telefonunuz var, peki Enterprisecoding Android uygulamasını denediniz mi? Enterprisecoding web sitesini her yerden takip edebileceğiniz, offline
merhaba,
sanırım her zaman öyle olmuyor. accept deiğimde windows update e yönlendiriyor. ve 0x800F096 hatası veriyor ve update edemiyor. manuel indirip kurmaya çalıştığımda yine aynı ekran ve yine update etmeye çalışıyor. windows features penceresinde .net 3.5 i click lediğimde ok deyip Kabul ettiğimde yine aynı döngü. uğraşıyorum. bakalım nasıl çözeceğiz. bi yardımın olursa sevinirim.
kolay gelsin.