Makale Özeti

.NET Compact Framework'ün, çok sayıda cihaz ve farklı platformlar hedef alınarak, masaüstü bilgisayarlar ve sunucu bilgisayarlar için geliştirilen .NET Framework'ün alt-kümesi mantığında ancak sıfırdan geliştirildiğini anımsarsak, birtakım hatalar içermesine rağmen yayınlanan düzeltmelerle ve 1.0'dan sonraki versiyonu 2.0 ile gelecek nesil Mobil Uygulamaların çalışma ortamlarında önemli bir yere sahip olacaktır. Makalemiz içerisinde .NET CF 1.0 versiyonu için yayınlanan SP3'ün içerdiği düzeltmeleri inceliyor, ve indirebileceğiniz site adreslerine yer veriyoruz.

Makale

.NET Compact Framework’ün versiyon numarasının da , .NET Framework ile tutarlı olması ancak 2.0 versiyonunda gerçekleşebilmiştir. Visual Studio .NET 2003 ile birlikte .NET Framework v1.1 versiyonu gelmesine rağmen, Mobil .NET plarformu için .NET Compact Framework 1.0 versiyonu gelmektedir.

 

2003 yılından 2005 Mayıs’ına, .NET Compact Framework 1.0 için  3 adet service pack yayınlanmıştır. Bu hizmet paketleri, tespit edilen hataları gideren çalışmalar içerdiği gibi, performans artışını sağlayan çalışmalar da içermektedir. .NET Compact Framework geliştirme ekibi tarafından verilen ve videosunu izlediğim bir sunumda, özellikle SP2 ile birlikte  %60 a varan performans artışının söz konusu olduğu belirtildi. Son olarak Mayıs 2005 tarihinde yayınlanan SP3 sürümüyle birlikte, performans artışı yine göz önünde bulundurulmuş, ve aşağıda yer alan hatalar giderilmiştir. Bu hataların listesini MSDN üzerinde de bulabilirsiniz.

 

.NET CF v1.0’da SP3 ile Düzeltilen Hatalar

 

  • - Yönetilen ve Yerli Kod arasında geçişlerde ARM platformlarında yaşanan bellek taşmaları



  • - “xsi:Nil” özniteliği (attribute) kullanılarak bir Web metodu boş bir dizi (array) döndüğünde  NullReferenceException oluşturulur. 



  • - SoapClientMessage.ContentType özelliğini değiştirmek, HTTP  talepleri ContentType başlığını değiştirmez 



  • - ARM platformlarında yerel değişkenlerin yaratılıp hiç kullanılmaması yığında (stack) bozulmalara neden olabilir 



  • - ARM platformlarında bir çokluyayım temsilcisini (multicast delegate) catch kavrayıcısı içerisinden çağırmak MissingMethodException oluşturmaktadır. 



  • - Çift bayt karakterleri içeren komut satırı argümanları tek bayta indirilmiştir. 



  • - Cevap gelmeden asenkron bir web isteğinden çıkıldığında ObjectDisposedException oluşturulur. 



  • - Dispose metodu çağrılmış bir kontrol çağrıldığında uygulamayı kilitler 



  • - Bir ya da birden fazla eleman içeren herhangi bir dizi (array) Web Servisine doğru bir şekilde ulaşmamaktadır. 



  • - Tek bir argüman, üye ya da özellik üzerinde çoklu XmlElementAttributes kullanan bir Web metodu çağrıldığında uygulama kilitlenebilir. 



  • - .NET CF V1 SP3 ve .NET CF V2’nin yayın öncesi versiyonlarının her ikisi için yerli güvenlik modeli etkin olan cihazlarda bellekte düzensizlikler, bozulmalar olabilir. 



  • - Kaynağın çok kısıtlı olduğu durumlarda çözümsüz kilitlenmeler (deadlock) oluşabilir. 



  • - Windows Mobile 2003 SE üzerinde yer alan araç çubuğu (tool bar), form üzerinden kaldırıldığında görüntüsünü artın kaybetmemektedir. 



  • - Sunucu soket bağlantısını kapattığında yakalanamayan ObjectDisposedException oluşturulmaktadır. 



  • - İşlem Çubuğunun (progressbar) Minimum ve Maximum özelliklerini vermek artık uygulamayı çökertmemektedir. 



  • - Hx4700 ve Hx 4705 cihazlarında bir imaj listesine imaj eklendiğinde oluşan beklenmeyen istisna 



  • - MIPSIV cihazlarında ondalık alanlarda oluşan veri düzensizliği  



  • - Bazı durumlarda DataSet.ReadXml() metodu ile okunan verinin kaybolması ya da yanlış yüklenmesi



SP3'ü nereden bulabilirim?

Microsoft Downloads'dan .NET Compact Framework SP3'ü indirebileceğiniz gibi Tükçe Mobil Teknolojiler portalı www.mobilnedir.com sitesinin Download bölümünden de bilgisayarınıza ücretsiz olarak indirebilirsiniz.

Bir sonraki makalemiz içerisinde, .NET Compact Framework’ün nasıl güncelleneceğini inceliyor olacağız.

Sonuç olarak, .NET Compact Framework, çok sayıda cihaz ve farklı platformlar hedef alınarak, masaüstü bilgisayarlar ve sunucu bilgisayarlar için geliştirilen .NET Framework'ün  alt-kümesi mantığında ancak sıfırdan geliştirildiğini anımsarsak, birtakım hatalar içermesine rağmen yayınlanan düzeltmelerle ve bir sonraki versiyonu 2.0 ile  gelecek nesil Mobil Uygulamaların çalışma ortamlarında önemli bir yere sahip olacaktır.

 

iyi çalışmalar!