2 Aralık 2012 Pazar

Windows 8 Metro Uygulamalarının Yaşam Döngüsü

Yorum Bırak


     Merhaba arkadaşlar; geçen hafta sizlere Windows 8 uygulamalarında sayfalar arası geçişten bahsetmiştim, bu hafta da yazdığımız uygulamaların yaşam döngüsünden bahsedeceğim.

     Metro stil uygulamalar daha çok tablet bilgisayarlarda kullanılmak üzere tasarlanıyor desek pek de yanlış olmaz sanırım. Tabletler dokunmatik olduğundan yazdığımız Windows Store uygulamaları daha çok dokunmatik ekranlarda en uygun arayüzü elde edecek şekilde tasarlanıyor. Tabletler bildiğimiz gibi günümüz bilgisayarlarından performans olarak oldukça geri durumda. Zaten şu aşamada tabletler daha çok seyehatlerde vs. durumlarda taşınabilirlik açısından ve batarya ömürleri açısından avantajlı oldukları için tercih ediliyor diyebiliriz. Bu nedenle de hızları ve kapasiteleri açısından şu anda pek ok şey beklemek doğru olmayabilir. Ancak ilerde tabletlerin kullanım artışına bağlı olarak ne gibi geliştirmeler yapılır onu göreceğiz.



    Tabletlerin performanslarının bu kadar yüksek olmayışından dolayı tabletlerden maksimum performansı elde etmek için arka planda aktif olarak çalışan tek bir uygulama mantığına geçildi. Böylece kısıtlı performansta olan tabletlerin daha hızlı bir şekilde kullanılması sağlanıyor. Ancak bu durumda akla birkaç soru geliyor. Eğer birkaç adet uygulamayı açtıysak, bu uygulamalar arasında geçiş nasıl sağlanıyor, aktif olmayan programlar ramden ne kadar kullanıyor, aktif olmayan bir uygulamaya geri döndüğümüzde uygulama nereden devam ediyor vs. gibi birkaç soru aklımıza takılıyor.

     Windows 8 üzerindeki bir uygulamanın yaşam döngüsü, programın bilgisayarınıza kurulması ile başlar. Bu uygulamalar aslında birer "appx" uzantılı uygulama paketidir. Bu paket içerisinde "manifest" adında bir dosya içerir ve bu dosya uygulama ile ilgili önemli bilgileri içerir. Kullanıcının yetkileri, kullanacağı kaynaklar vs. bu dosya içerisinde belirtilir. Bu dosya ile ilgili olarak gelecek haftaki yazımda sizlere daha da çok bahsedeceğim.

     Tabletlerde işletim sisteminin sınırlı kaynakları olduğundan bahsetmiştik. Bu kaynakları en verimli biçimde kullanmak için, kullanıcının aktif olarak kullanmadığı bir uygulama askıya alınabilir veya batarya vs. gibi nedenlerden dolayı sonlandırılabilir. Aynen tüm bunlar gibi kullanıcı başka bir uygulamaya geçiş yaptığında uygulama kaldığı yerden devam edebilir.



     Bu geçişler arasında veri kaybının nasıl önlendiği konusunda akıllara sorular gelebilir. Bunun için de uygulamaya bu geçişler bildiriliyor. Bu sayede veri kayıpları önleniyor ve yüksek bir kullanıcı deneyimi sunuluyor. Bu sayede eğer uygulama kullanılmıyorsa, kaynaklarını bir başka uygulamaya aktarabilir ve gereksiz performans kayıpları önlemiş olur. Bu uygulama geçişleri arasındaki bildirimler aşağıda gösterilmiştir. Bu bildirimlere "Windows.ApplicationModel.Activation" namespace'i altındaki "ApplicationExecutionState" enumundan ulaşabilirsiniz.


     
     Bir uygulama çalışmıyor durumundan geliyor ve çalıştırılıyorsa, bu durumda uygulama ilk defa çalıştırılıyormuş gibi çalışır ve kullanıcının karşısında bir adet "splash" ekranı gelir. Windows 8 uygulamalar hakkında bildirimler yaparken uygulamanın bir önceki durumu hakkında da bilgi verir. Örneğin bir uygulama çalışmıyor durumdan çalışıyor durumunda mı geçmiş, yoksa askıda iken çalışır durumuna mı geçmiş vs. şeklinde bildirimler sunar.

     Windows 8 uygulamaları sadece kullanıcılar tarafından başlatılmıyor olabilir. Bir uygulama işletim sistemine sunulan kontratlar gereksinimlerince de başlatılabilir. Aşağıda bir uygulamayı aktif hale getirecek sebepleri görebilirsiniz:





     
        Windows 8 uygulamaları birbirlerine bir bütünün parçaları gibi bağlanabilirler. Örneğin, çektiğiniz bir resmi bir başka programla düzenleyerek sosyal paylaşım sitelerinde paylaşabilirsiniz.

     Özet geçecek olursak, Windows 8 uygulamalarında bir adet aktif uygulama işletim sistemi tarafından çalışır durumdadır, bunun nedeni de tabletlerin performanslarının günümüz bilgisayarları kadar yüksek olmaması ve kullanılmayan uygulamaların gereksiz kaynak kullanımlarını önlemektir. Uygulamalar işletim sistemi tarafından gerektiği durumlarda sonlandırılabildiği gibi kullanıcı taraflı da sonlandırılabilir. Uygulamaların bir önceki durumları ve güncel durumları bildirimler tarafından belirtilir.

     Haftaya "manifest"  dosyasının kullanımından bahsedeceğim. Görüşmek üzere...

Referans: http://www.yazgelistir.com/Makale/metro-stil-bir-uygulamanin-yasam-hikayesi

0 yorum:

Yorum Gönder