Makale Özeti

Profesyonel uygulamalarda iş lojiğinin yanısıra görsellik, cihaza uyumluluk, platforma uyumluluk gibi ölçütlerin de ne derece önemli olduğundan, bu küçük ama önemli ayrıntılardan bahsetmiştik. İncelememize kullanıcı arayüzü ve shell desteği ile devam edelim.

Makale

Pocket PC Uygulamalarında Dikkat Etmemiz Gerekenler - II

    Bir önceki makalemde, profesyonel uygulamalarda iş lojiğinin yanısıra görsellik, cihaza uyumluluk, platforma uyumluluk gibi ölçütlerin de ne derece önemli olduğundan, bu küçük ama önemli ayrıntılardan bahsetmiştik. İncelememize kullanıcı arayüzü ve shell desteği ile devam edelim.

    UI ve Shell Gereklilikleri   

        1) Uygulama Adı

        Uygulama adının NavBar da her zaman için görünebilir olması gereklidir. Fakat burada yalnızca uygulama adı önemli bir ayrıntı. Windows uygulamalarından alıştığımız gibi açtığımız dosyalar, programın o anki durumu gibi bilgileri NavBar'a, programatik olarak bahsedersek Form'un Textine yazmak pek doğru değildir.

        2) Mesajlar, Uyarılar ...

        Uygulamanızda bir çok mesaj, uyarı gibi notifikasyonlar olabilir,  Bunlar için dialog box ve ya mesaj box'ı kullanmak en doğrusudur. Yukarıda bahsettiğimiz gibi, NavBar'ın ve ya programda farklı bir alanın notifikasyonlar için kullanımı pek doğru degildir.

        3) Fullscreen Mod

        Uygulamanızın full screen olarak çalışması gerekebilir. Bu durumda SHFullScreen APIsini kullanabilirsiniz. Fakat bu APInin kullanımı oldukça dikkat gerektirmektedir. Çünkü, SHFullScreen çağrıldığı uygulama ile NavBar'ın z düzlemi sıralamasını değiştirmektedir. Bu nedenle, eğer uygulamanız bir şekilde mininize ediliyor ise, NavBar mutlaka geri görüntülenmelidir. Unutmayın ki, start butonu NavBar üzerindedir ve cihazın yönetimi için yegane yol burasıdır.

        4) SIP (software input panel) kullanımı

        Visual Studio.NET ile geliştirdiğimiz uygulamalarda SIP ile ilgili dikkat edilecek çok fazla bir şey yoktur. Birçok gerekliliği VS.NET ve CF (Compact Framework) kendisi yönetir. Fakat embedded C++ ve ya VB kullanıyorsanız, SIP kontrolünü gerekli olan tüm alanlar için kullanmalısınız. Tabi, tüm alanlarda SIP nin stardart bir yeri olmalıdır. Bu da sol alt ve sağ alt olarak genellenmiştir.

        SIP kontrolu sıklıkla ihtiyaç duyulan fakat bazı durumlarda da saklanması gereken bir kontroldür. Örneğin oyunlarda SIP ile yapılacak çok fazla birşey yoktur. Eğer uygulamamız SIP yi gizliyor ise, diğer uygulamaların bunu kullanmasını engellememelidir. Minimize edilen bir oyun SIP yi gizlemeye devam ederse, diğer uygulamaların SIP yi kullanması imkansız bir hale gelecektir.

        5) Menüler, Butonlar ve fonksiyonellik

        Bu hepimizin oldukça iyi bildiği birşey de olsa hatırlatmakta fayda görüyorum. Sık kullanılan menü buton ve fonksiyonlar her zaman kullanıldığı sırada olmalıdır. Örneğin main menu için soldan sağa : Edit, View, Insert, Format, Tools gibi.. Fonksiyonellik için ise, yazının stilini belirleyeceğimiz bir menu sistemi düşünürsek : Font, Font Size, Bold, Italic, UnderLine gibi bir çok program tarafından default kabul edilen sıralamaları kullanmalıyız.

        6) Microsoft Pocket Outlook'un kullanımı

        Uygulamanız fonksiyonellik olarak Outlook'un bazı bölümlerini modelliyor (taklit ediyor) olabilir. Elbetteki çok iyi bir contact list, task list ve ya appointment management yazabilir, bunu istediğimiz uygulamaya ekleyebiliriz. Fakat şunu göz önüne alın eğer uygulamanıza contact bilgileri girilecekse, bu bilgiler genelde düzenli bir şekilde outlook'ta duruyordur.  Öyleyse niçin :

        - oradaki dataları tekrarlayıp memoryden yer kaybedelim?
        - kullanıcıyı, yeni bir contact eklendiğinde hem outlook hem de kendi uygulamamız ile uğraştıralım? 
        - outlook senkronizasyonunu kaybetme riskini taşıyalım?

        İşte tüm bu sorunlarla yüzyüze gelmemek için uygulamamızın Microsoft Pocket Outlook entegrasyonu tam olmalı.

        7) Telefon ve SMS desteği

        Uygulamanızda contactları gösterdiğiniz bir listeyi düşünün, telefon numaralarını gösteriyorsunuz ve şu senaryoya bakın: Kullanıcı sizin uygulamanız üzerinden gerekli kişiyi buldu, telefon numarasını gördü, kopyala yapıştır ve ya aklında tut yaz (!) yaparak telefon uygulamasına geçti, numarayı oraya yazdı ve aramasını gerçekleştirdi. Bu fazlasıyla yorucu bir iş. Onun yerine contactlarınızı gösterdiğiniz ilk listeye, telefon numaralarının yanına birer buton koyarak butona basıldığı anda telefon etmesini sağlasak çok daha kullanışlı ve şık bir uygulama olmaz mı?

        8) Help dosyaları ve kayıtları

        Pocket PC işletim sistemine dikkat ettiğinizde tüm help dosyalarına tek bir yerden ulaşabildiğinizi görürsünüz. Uygulamanızda eğer help metinleri bir kaç satırı geçerek bir kaç sayfaya ulaşıyorsa artık o help metinleri için ayrı bir help dosyası hazırlama ve onu sisteme kayıt etme zamanı gelmiş demektir. Yapmanız gereken HTML olarak hazırlayacağınız help metnini sistem help menüsünün "Table of Contents" ine ekleyebilirsiniz.

        9) Kullanıcı Ayarları

        Uygulamanız kullanıcı ayarlarını değiştirmemeli ve tüm kullanıcı ayarları ile sorunsuz çalışabilmeli.

  

    Bu iki makalemde Pocket PC uygulamaları yaparken kazandığım tecrübeleri paylaşmak istedim. Bahsettiğimiz konuların bir bölümü "Designed for Windows Mobile" logosu uyumluluk testlerinde göz önüne alınan kriterleri de içermektedir. Makalemin girişinde de bahsettiğim gibi küçük fakat profesyonellik katan ayrıntılardan bahsetmeye çalıştım. Umarım çoğumuz için uygulama kalitemizi yükseltmemize yadımı olacaktır.

İyi Çalışmalar

Kivanc OZUOLMEZ