Makale Özeti

Microsoft, yeni nesil Mobil cihazlar için Mayıs 2005 tarihinde Windows Mobile 5.0 işletim sistemini duyurmasıyla birlikte, yerli kod ve .NET Compact Framework ile yönetilen kod geliştiren yazılım geliştiriciler için ne gibi yeniliklerin söz konusu olduğunu, yeni uygulama programlama arayüzlerini (API) ve sınıfları makalemiz içerisinde inceliyoruz.  

Makale

Yeni Uygulama Programlama Arayüzleri (API) ve Sınıflar

Cihazların yeteneklerinin artması ve donanımsal olarak gelişmesi işletim sistemlerine ve yazılım geliştirme araçlarına da yansımaktadır. Örneğin Windows Mobile yazılım geliştiricilerinin Visual Studio 2005 ile artık yerli kod ya da yönetilen kod geliştirme seçeneği bulunuyor. Bununla birlikte Windows Mobile 5.0 işletim sistemi çok sayıda yeni API’ler ve sınıflar sunmaktadır.

Mobil cihazlar üzerinde yerli kod (native code) geliştiren yazılım geliştiriciler orijinal isimleriyle ; “Direct3D Mobile”, “DirectDraw”, “DirectShow”, “GPS Intermediate Driver Reference”, Bir Cihazın Tekil Numarasını Almak, Sayısal Hakların Yönetimi, ActiveSync Entegrasyonu, Sorgu Poliçesi “QueryPolicy”, Cihazı Kapatabilmek ya da Yeniden Başlatabilmek “ExitWindowsEx”, Temaya Uygun Çizim “DrawFocusRectColor” gibi yeni API ve sınıfları kullanabilirler. Bu paragraf içerisinde yer alan linkler Windows Mobile 5.0 işletim sisteminin SDK dökümantasyonunda ilgili konuyu işaret etmektedir.

Yönetilen kod (managed code) geliştiren yazılım geliştiriciler ise orijinal isimleriyle ; Telefon, Mobil Outlook, Mesajlaşma (e-posta ve kısa mesajlar (SMS)), Ayar Yöneticisi “Configuration Manager”, gibi yeni API ve sınıfları kullanabilirler.

Hem yerli kod hem de yönetilen kod geliştiren yazılım geliştiriciler için ise ortak olarak yer alan orijinal isimleriyle ; Durum ve Uyarı Sözcüsü , Resim Seçme Diyaloğu, Kameradan Görüntü Yakalama, Pocket Outlook Geliştirmeleri, gibi yeni API ve sınıfları kullanabilirler.

Bununla birlikte kullanılan teknolojiler doğrultusunda birçok sınıf üzerinde performans arttırıcı yenilikler bulunmaktadır. Bu konuda ürün referansını buraya tıklayarak detaylı olarak inceleyebilirsiniz.

Dilerseniz şimdi bu yeni API ve sınıfların ne tür özelliklere sahip olduklarını ve işlevselliğini inceleyelim.

Yerli Kod Geliştirenler için...

Masaüstü bilgisayarlar için tasarlanmış Direct 3D API’nin Mobil cihazlar için geliştirilmiş halidir. Bu sayede Windows Mobile tabanlı cihazlar üzerinde 3 boyutlu oyun ortamı yaratılabilir ya da kodlanabilir.

Uygulamaların donanımlardan yüksek performans alarak donanımsal yetenekleri tam olarak kullanabilmesini sağlar.

Masaüstü bilgisayarlar için tasarlanmış bilgisayar API’sinin Mobil cihazlar için geliştirilmiş halidir. Bu sayede masaüstü bilgisayarlar için geliştirilen kodlar yazılım geliştiriciler tarafından hızlıca ve kolaylıkla Mobil platforma uyarlanabilir.

GPS verisine kolay erişimi sağlar. Bu sürücü sayesinde Windows Mobile GPS cihazı ile etkileşirken daha az kod kullanılabilir. Ayrıca birden fazla uygulama da GPS cihazından bu bilgileri temin edebilir.

  • Bir Cihazın Tekil Numarasını Almak

Kimi zaman uygulamanın çalıştığı cihazın özel numarası Mobil yazılım geliştiriciler tarafından kullanılmaktadır. Bu numara cihaza özel olduğu için, her cihazda farklıdır ve genellikle uygulama lisansı sırasında kullanılır. Windows Mobile 5.0, GetDeviceUniqueID (detay) API’sini sağlar. Bu sayede bu numaraya kolaylıkla erişilebilir.

  • Sayısal Hakların Yönetimi

MSDN üzerinde yer alan tanım doğrultusunda açıklamak gerekirse Dosya Tabanlı Sayısal Hakların Yönetimi (FDRM, detay); ses, görüntü, ve imaj dosyaları içeriğinin korunması için geliştirilmiş sistematik bir yöntemdir. Yazılım geliştiriciler açısından FDRM, Windows Mobile tabanlı cihazlar için sayısal hakların yönetilebilmesini sağlayan arayüzdür.

  • ActiveSync Entegrasyonu

ActiveSyncStart ve ActiveSyncStop kullanarak artık ActiveSync süreci yazılım geliştiriciler tarafından kolaylıkla kontrol edilebilir.

  • Sorgu Poliçesi (detay)

Kişisel poliçe ayarlarını alırken kullanılan DMProcessConfigXML’e basitleştirilmiş bir alternatif olarak yer almaktadır.

  • ExitWindowsEx

Mobil ortamda kimi zaman uygulamanın cihazı kapatmasını isteyebilirsiniz. Bu özellik sayesinde bir uygulamanın cihazı kapatabilmesi mümkündür. Pocket PC’ler üzerinde cihazı yeniden başlatmak (reboot) için kullanılırken, SmartPhone’larda yeniden başlatmak ya da kapatmak için kullanılabilir.

  • DrawFocusRectColor

Temadaki renk ve stili kullanarak dikdörtgen çizmeye yarar.

Hem Yeli Kod Hem de Yönetilen Kod Geliştiriciler için...

Windows Mobile 5.0 işletim sisteminde aşağıdaki API’lerde ayrıca hem yerli kod geliştiriciler için, hem de yönetilen kod geliştirenler için geliştirilmiştir.

  • Durum ve Bildirme Aracısı

Bu yeni özelliğin ingilizce karşılığı “State and Notification Broker” olarak geçmektedir. Windows Mobile 5.0 ile gelen bu yeni ve güçlü özellik cihazın, uygulamanın ve sistemin durum bilgisini saklamaya olanak sağlar.

  • Resim Seçme Diyaloğu

Mobil cihazlara entegre edilen kameraler artık standart haline gelmeye başladı. Bu durum resim ve grafik kullanımını da arttırdı. Windows Mobile 5.0 ile sağlanan yeni resim seçme diyaloğu, uygulamaların kullanıcıya bir dizi resmi göstererek seçim yapmasına olanak sağlıyor.

  • Kamera Görüntü Yakalama API (SHCameraCapture)

Uygulamanız ile cihazın kamerasından resim veya video yakalamak istermiydiniz? İşte sağlanan yeni API sayesinde artık bu işlevi kullanmak daha kolay.

  • Pocket Outlook Geliştirilmiş Özellikleri

Mobil cihaz kullananlara e-posta kullanımında yardımcı olan Pocket Outlook’a da Windows Mobile 5.0 geliştirmeleri eklenmiş. Bu geliştirmeler arasında kontak seçim diyaloğu, olay bildirmeleri, ayarlanabilir özellikler ve posta uygulaması yönetim özellikleri yer alıyor.

Ek Olarak...

Burada bahsettiğimiz özelliklere ve API’lere ek olarak birçok yeni özellik hakkında bilgiyi Windows Mobile 5.0 SDK dökümantasyonundan erişebilirsiniz.

Ayrıntı sayfaları için buraya tıklayabilirsiniz.

Yazılım Geliştirme Ortamı

Visual Studio 2005, Windows Mobile 5.0 için ideal yazılım geliştirme ortamı olmakla birlikte, öncesinde embedded VB/C++ gibi araçlarla geliştirilen yerli kod geliştirme özelliğinin C++ ile ortama entegre edilmesi yeni platformun daha birçok gelişmelere açık olduğunun göstergesidir. Ancak embedded VB/C++ gibi araçlarla da Windows Mobile 5.0 platformu üzerinde yazılım geliştirme imkanı bulunmaktadır. Bunun için sürüm değişikliği yerine Service Pack 4 yayınlanarak gelişime destek verilmektedir. Embedded VB/C++ araçlarını ve SP4’ü Microsoft Downloads’dan ya da www.mobilnedir.com Download bölümünden ücretsiz olarak indirebilirsiniz. Ayrıca Windows Mobile 5.0 SDK’da yine Microsoft Downloads ya da mobilnedir.com üzerinde bulabileceğiniz araçlar.

Yazılım Geliştiricilerin diğer bir avantajı ise cihazlarda artık standart olarak görülmeye başyalan kablosuz ağlara yönelik destekler. Windows Mobile 5.0 SDK ve .NET Compact Framework 2.0 ile gelen kütüphanelerle özellikle Bluetooth, Kamera vb. API’ler yazılım geliştirme ortamını eğlenceli hale getiriyor.

Dökümantasyon

Windows Mobile işletim sisteminin son derece faydalı bir kaynak olarak kullanılabilecek YARDIM (HELP) bölümüne bir göz atmanızı öneririz. Burada geliştirme, test, ve dağıtım gibi aşamalarla ilgili olarak da bilgiler yer alıyor.

Ek olarak, Windows Mobile’ın yeni özellikleri hakkında daha fazla bilgiye yazılım geliştiricilere referans olması için hazırlanan Developer’s Reference bölümünden ulaşabilirsiniz.

Unutmamak gerekir ki , makalemizin yayınlandığı tarih itibariyle değişiklik ya da yenilikleri aktarmaya çalıştık. Her ay yenilenen YARDIM bölümüne What’s New in Documentation sayfalarından ulaşabilirsiniz.

Dosya Sistemleri

Bildiğiniz üzere Windows Mobile 5.0 öncesi işletim sistemlerine sahip Windows CE tabanlı cihazlarda RAM ve ROM bellek bulunuyor. Windows Mobile 5.0’ın en önemli özelliği yeni cihazlarda desteklenmeye başlayacak olan sabit disklere destek vermesi. Tabii bu desteğin en büyük avantajı bilgilerin cihazın pili bittiğinde artık silinmeyecek olabilmesi. Hal böyle olunca RAM tabanlı dosya sistemi yapısı da farklılık gösteriyor. Ayrıntılı bilgiye MSDN üzerindeki dökümantasyondan buraya tıklayarak erişebilirsiniz

Yönetilen Kod Geliştirme

Microsoft.WindowsMobile sınıf kütüphanesi SDK ile birlikte geliyor. Bu sınıf kütüphanesi .NET Compact Framework kütüphanesine ilave olarak geliyor ve yazılım geliştirmedeki RAD modelinin (Rapid Application Development) yeteneklerini arttırıyor. Ayrıntılar için Managed Code veya Support for Managed Code Development sayfalarına bakabilirsiniz.

Internet Explorer Mobile

Yeni işletim sisteminde Internet Explorer web tarayıcısı da yeniliklerden payına düşeni alanlar arasında. Örneğin artık tam ekran görünümü için destek var. Bu şekilde bir görünümde başlık çubuğu ve ekrandaki tuşlar saklı kalıyor. Web sayfaları için de yeni görünüm destekleri mevcut. Ayrıca yazılım geliştiriciler için yeri arayüzler geliştirilmiş. DWebBrowserEvents2,IWebBrowser,IWebBrowser2 ve IWebBrowserApp gibi. Bu konuyla ilgili ayrıntılı bilgiler Internet Explorer Mobile Browser Reference sayfalarında bulunabilir.

Güvenlik

İmzalı ya da imzasız uygulama desteği Windows Mobile tabanlı Pocket Pcler için yeni gelen bir güvenlik özelliği. Yazılım geliştiriciler .NET Compact Framework kütüphanesi içerisinde yer alamayan bir sınıfa ihtiyaç duyduklarında, opennetcf.org da yer alan açık kaynak kodlu kütüphane çok büyük fayda sağlamıştır. Gelişen ihtiyaçları göz önünde bulunduran Microsoft Mobility ekipleri, hem işletim sistemi tarafında, hem de .NET Compact Framework tarafında Güvenlik konusunda çalışmalar yapmaktadır.Windows Mobile Device Security Model sayfalarında ayrıntılı olarak Windows Mobile güvenliği ile ilgili bilgilere ulaşabilirsiniz.

Özetlersek

Makalemiz içerisinde temel yeniliklere yer vermeye çalıştık ve ilerleyen makalelerde yer vermeye çalışacağımız konulara değindik. Makale içerisinde aynı zamanda ayrıntılı olarak bilgiler bulabileceğiniz ve linklerini verdiğimiz MSDN sayfalarına gözatmanızı şiddetle tavsiye ederiz.

Windows Mobile 5.0 , Mobil yazılım geliştirme ortamına çok büyük yenilikler katacak yeni nesil bir işletim sistemidir. Donanımsal gelişmelerle birlikte Mobil yazılımın daha da önem kazanacağı inancındayız.

Kaynaklar : MSDN sayfaları, makaleler ve Windows Mobile 5.0 SDK