Cuma, Şubat 08, 2008

WPF - Uygulamaların Yayınlanması

Daha önceki yazılarımızda WPF ile ilgili temel kullanım kurallarına ve yöntemlerine değinmeye çalışmış ve bu yöntemler ile ilgili birçok örnek ile kavramaya çalışmıştık. Bu yazımızda ise Visual Studio 2005’te de kullanabildiğimiz uygulamalarımızın yayınlanabilmesi(publish) sağlayan özelliğini daha ayrıntılı bir biçimde inceleye çalışacağız.

Büyük ölçekli ya da orta ölçekli bir proje aldığımız zaman belirli unsurlar yardımı ile bu projeyi geliştirmemiz gerekmektedir. Bunlar sırası ile algoritmik tasarımın oluşturulması, hangi programlama dilinin seçileceği, ne tür bir veri tabanı yapısının uygulanabileceği ve daha bunlar gibi onlarca unsuru dikkate alarak daha sistematik bir biçimde projemizin gelişmesini sağlayabiliriz. Fakat değinmediğimiz bir unsur var ki bunu asla gözden kaçırmamız gerekmektedir. Değindiğimiz bu son unsur uygulamanın yayınlanmasıdır.

Uygulamanın yayınlanmasına biraz daha açıklık getirmek gerekirse, bir proje ekibinin oluşturduğu projeler eğer ki bir web uygulaması değilse genellikle geliştirilen bilgisayarlarda ve şirketlerin analistlik birimlerinde test edilmeye çalışılmaktır. Bu noktaya kadar aksi giden bir durum gözükmemektedir. Fakat bu uygulamanın bitirilip kullanılmaya açılması esnasında bazı sorunlar yaşanabilinmektedir. Eğer ki uygulamanın kullanıcılara nasıl ulaştırılacağı konusunda bir çözüm üretilmedi ise bu daha da büyük bir sorun olarak karşımıza çıkmaktadır. Bu sorunu da çözdüğümüzde karşımıza daha birçok sorun çıkabiliyor. Fakat bu sorunlardan belki de en büyüğü uygulamalar üzerinde yapacağımız iyileştirmeleri ve değişiklikleri kullanıcılara nasıl ulaştıracağımızdır. İşte bu sorunu uygulamaların yayınlaması yöntemi ile ortadan kaldırabilmemiz mümkündür.

Visual Studio 2005 ile de kullanabildiğimiz bu özelliğe 2008 sürümü ile de kullanabilmemiz mümkündür. Biz ilk olarak 2005 ’te nasıl yapıldığını hatırladıktan sonra 2008 uygulamaları için nasıl yapıldığına da değinmeye çalışacağız.

Bu özelliği inceleyebilmemiz için öncelikle çok basit bir Console uygulaması geliştirelim. Bu uygulama iç içe iki for döngüsünden oluşan ve döngünün sonucunda belirli bir sayıda beep sesi bir programcık olsun. Bu programı yapabilmemiz için Visual Studio 2005 de C# projesinden Console Application seçeneğini seçmemiz yeterli olacaktır. Daha sonrasında karşımıza çıkan ekrana aşağıdaki kodları yazıyoruz.

namespace bip_proje
{
   class Program
  
{
     
static void Main(string[] args)
      {
         for (int i = 1; i <= 10; i++)
         {
           
Console.WriteLine(i+ "ninci defa for cagirildi."));
           
for (int j = 1; j <= 5; j++)
            {
               Console.Beep();
               Console.WriteLine("*-*" + i+"-*-"++j);
            }
         }
      }
   }
}


Bu basit uygulamayı derledikten sonra kaydederek programımızın çalışan dosyasının oluşabilmesine olanak tanıyoruz.

Visual Studio uygulamaları ile proje geliştirdikten sonra Project menüsünde yer alan Project properties seçeneğinden proje ile ilgili istediğimiz özellikleri ayarlayabilmemiz mümkündür. Bu özellikler ekranına ulaşabilmemiz için gerekli olan adımlar aşağıdaki ekran görüntüsünde yer almaktadır.



Projemizin özellikleri ile ilgili seçeneği tıkladıktan sonra karşımıza gelecek olan ekranda uygulama, yapım aşaması, derlenme aşaması, özellikler, sertifika, güvenlik, yayınlama gibi özellikler yer almaktadır. Bu açıkladığımız seçeneklerinden yer aldığı ekran görüntüsü aşağıdadır.



Bu pencerede uygulamayı yayınlayabilmemiz için işimize Publish ve Signing yarayacaktır. Signing seçeneğini Visual Studio 2008 ile birlikte incelersek daha yararlı olur. Publish işlemleri bölümünde nelerin yer aldığına kısaca bir göz atmak gerekirse;



Karşımıza çıkan Publish ekranında uygulamamızın nereye kaydedileceği, sürüm kodu bilgisayara kurulurken nelerin gerekli olabileceği gibi seçenekleri özelleştirebilmemiz mümkündür. İlk olarak bu pencerede uygulamamız başka bir bilgisayarda çalıştırılacak iken nelerin gerekli olabileceği ile ilgili seçeneklere göz atmakta yarar var. Bu içeriğe göz atabilmemiz için Prerequisites… Butonuna tıklamamız gerekmektedir. Daha sonrasında karşımıza çıkacak olan ekran aşağıdaki gibi olacaktır.



Hazırlamış olduğumuz uygulama oldukça basit olduğu için çalışması için sadece .NET Framework 2.0 ın yeterli olduğu görülmektedir. Tabii bu durum uygulamaların kapsamları ve kullanılan ek özelliklere artabilmektedir. Yüklü olması gereken özelliklerin dışında bir de bu gereksinimlerin nasıl karşılanabileceği bizlere sorulmaktadır. Bu seçenekler uygulamanın gömülü bulunduğu sitede kullanıcıya bilgi olarak sunulsun, uygulama dâhilinde eğer bilgisayarda yoksa kurulsun ve internette belirtilen yerden kurulsun gibi üç seçenek yer almaktadır. Bizim şu anda kullanacak olduğumuz uygulamayı düşünürsek en yararlısı kullanıcı internet sayfasına giriş yaptığı zaman uygulamamanın çalışabilmesi için bilgisayarınızda aşağıda bulananlar kurulu olmalıdır biçimde bir mesaj alması olacaktır. Bu sayede kullanıcıların sistemlerinde ne tür gereksinimler olması gerektiğini ve çalışmaması durumunda neden çalışmadığını anlamış olacaklardır.

Uygulamamız özellikleri ile ilgili ayrıntıları ise Options ile belirleyebilmemiz mümkündür. Bu seçenek seçildiği zaman karşımıza çıkan ekran görüntüsü ve bu ekran görüntüsü üzerinden yapmış olduğumuz değişiklikleri aşağıda görülmektedir.

Not: Ekran görüntüsü karşımıza boş olarak çıkmaktadır. Bizler ise istediğimiz biçimde bu boşlukları doldurabiliriz.



Yukarıdaki ekranda uygulamanın çalışan dosyasının özelliklerine bakıldığı zaman kimin yaptığı bu kişinin bağlı olduğu kurum ve bu kurumun web sayfası gibi özeliklerin doldurulabilmesi mümkündür.

Yayınlamış olduğumuz uygulamanın sürümü ile ilgili ayrıntılar aşağıdaki ekran görüntüsünden yer almaktadır.



Uygulamamız içerisinde yapmış olduğumuz değişiklikler sonrasında uygulamamızı kullanmakta olan kullanıcılara güncelleme mesajı gelmektedir. İşte bu güncelleme mesajının alınabilmesi için yukarıda belirtilen resimdeki sayıların yukarıya doğru ilerlemesi gerekmektedir. Bu değişikliklerin kapsamına göre sayılar değişmektedir. Örneğin renk gibi değişikler yapılması sonucunda Revision bölümünde artış gözlenecektir. Derleme ekranında yapılan yer değişikleri gibi durumlarda Build kısmında artış gözlemlenecektir. Uygulamaya ek mesajlar biçiminde oluşan değişiklikler durumunda ise Minor bölümünde artış gözlenecektir. Eğer ki uygulamada kod tarafında değiştirilme veya da çok belirgin değişikliklerin gözlenmesi durumunda ise Major bölümünde değişiklik gözlemlenecek ve uygulamamız sürümü bir kademe artmış olacaktır.

Eğer biz elimiz ile bu değişiklikleri yapmak istiyorsak sürüm kodunun alt tarafında yer alan otomatik belirleme seçeneğini iptal etmemiz yeterli olacaktır. Fakat tavsiye edilen sürüm belirleme işinin Visual Studio derleyicisine bırakılmasıdır.

Bu ayrıntılara göz attıktan sonra artık uygulamamızı yayınlayabiliriz. Bu yayınlama yöntemini yapabilmemiz için iki yöntem vardır. Birincisi yayınlama işlemini tamamen derleyiciye bırakmak. Fakat bu durumda yayınlanan uygulamam projenin derlenmesi sonucundan oluşturulmuş olan dosyanın içersinden yer alacaktır. Bir diğer seçenek ise sihirbaz kullanarak işlemlerimizi gerçekleştirmektir. Bizim bu yazımızda izleyeceğimiz yöntem sihirbaz kullanmak olacaktır.

İlk olarak uygulama seçeneklerinin derleyicimiz de nasıl bulabileceğimize kısaca değinelim. Genel olarak iki yerden erişebilmemiz mümkündür. Birincisi Proje-->Uygulamanın özelliklerinden Publish seçeneğinden Publish Wizard ve Publish Now seçeneklerinden yararlanmak mümkündür.



Bir diğer seçeneğimiz ise Build menüsünün altında Publish uygulama adı seçeneğidir. Bu seçenekte de yine Publish Wizard çağırılmakta ve yayınlama işlemi sihirbaz yardımı ile yapılmaktadır.



Sihirbaz ile işlemlerimizi yapmak istediğimiz zaman ise karşımıza aşağıdaki gibi bir ekran görüntüsü çıkmaktadır.



Karşımıza çıkan bu pencere uygulamamızı nereye yayınlayacağımızı belirtmemizi istemektedir. Belirtebileceğimiz alanlar ise; yerel diskimizde bir alan, paylaşımda olan bir dosya, FTP Server ya da herhangi bir web sitesi olabilmektedir. Biz ise uygulamamızı yerel diskimizde bir alana kaydedeceğimiz için masaüstümüzde bir klasöre erişim için gerekli olan yolu gireceğiz.

Bu yolu belirttikten sonraki bir diğer adımızın ise localhostta ya da internet üzerinde sunucusu bulanan bir adres belirtmemiz gerekmektedir. Bu sunucu güncelleştirmeleri ve uygulamanın kendisini kullanıcılara ulaştırılmasına imkân tanıyacaktır.



Gerekli olan web adresini de belirttikten sonra diğer adıma geçebiliriz. Bu adımda ise uygulamanın sadece online olarak mı çalışacağı yoksa hem online hem de offline olarak çalıştırılıp başlat menüsüne ekleneceği ile ilgili iki seçenek bulunacaktır. Bu seçeneklerin yer aldığı ekran görüntüsüne bir göz atalım.



Karşımıza çıkan bu ekranda uygulamanın hem online hem de offline çalışabilmesine olanak tanıyacak olan ilk seçeneği seçerek işlemlerimize devam edeceğiz. Bu seçeneği seçmemiz durumunda kazanacağımız avantaj ise uygulamamız bilgisayara yüklü değilken çalıştırabilmenin dışında, bu uygulamayı bilgisayarımıza yükleyerek kullanabilmemiz mümkün olacaktır. Eğer ki bu uygulama çok kullandığımız bir araç ise offline olarak kullanmanın avantajlarını da yaşamız olacağız.

Bu adımı da tamamladıktan sonra karşımıza çıkan ekran ise bilgilendirme ekranı olacaktır.



Bu bilgilendirme ekranında daha önceki adımlarda yapmış olduklarımızı özetleyen bir seçenek olarak da kabul edebilmemiz mümkündür. Bu özet verilerde uygulamanın hazırlanmış olan dosyasının nereye kaydedileceğine, hangi internet adresinden kullanıcıların uygulamaya erişebileceklerine ve programımızın ne tür seçenekler sonucunda kullanabileceği türünde bilgilendirme mesajları yer almaktadır.

Eğer ki bu bilgilendirme mesajlarından yer alan bilgiler bizim istediklerimiz ile aynı ise Finish seçeneğine tıklayarak işlemlerimizi tamamlamış oluruz.

Yapmış olduğumuz bu işlemler sonucunda yerel diskimizde istediğimiz yere uygulamamızın dosyaları oluşturulmuştur. Bu oluşturulmuş olan dosyalarda yayınlama ile ilgili bir web sayfası kurulum için gerekli olan dosyalar ve uygulamanın sürüm numarası ile yer alan bir çalışma dosyası bulunmaktadır. Şimdi bu dosyalara ilişkin ekran görüntülerine bir göz atalım.



Yayınlama işleminin yapılabilmesi için belirtmiş olduğumuz yolda oluşturulmuş olan klasörün içerisindeki dosyalar ekran görüntüsünde net olarak gözükmektedir. Hatırlarsanız uygulama ile ilgili olarak gerekli olan dosyaların yayınlama dosyasında yer alması gerektiğinden bahsetmiştik. Şimdi Publish.htm isimli web sayfasının içeriğini görüntüleyerek bizim uygulamadan yapmasını istediğimiz işlemi gerçekleştirip gerçekleştirmediğine göz atmış olalım.



Yukarıda karşımıza çıkan sayfada ActiveX kontrolü yardımı ile bilgisayarımızda gerekli olan bileşenlerin yüklü olup olmadığını kontrol edecek eğer bileşenler yüklü ise bu bilgilendirme mesajı ortadan kalkacak eğer ki yüklü değil ise yüklenmesi istenecek. Şimdi biz bilgisayarımızda bu sorgu işlemini yaptıralım.

Yapılan işlem sonucunda .NET Framework ‘ün yüklü olduğu anlaşıldı ve bu bilgilendirme mesajı kaldırıldı. Artık sadece uygulamanın yüklenebilmesi için gerekli olan link kalmıştır.



Sorgulama işlemi bittikten sonra karşımıza çıkan pencereden Install seçeneğine tıklanarak yüklenme işlemi başlatılır. Bu yükleme işlemi esnasında gerekli olan dosyaya uygulamanın dosyalarının yer aldığı klasöre erişerek, bu klasör içerisinden uygulamanın_ismi.application isimli uygulama dosyası çağırılarak yükleme işlemi başlatılmaktadır. Bu işlemin gerçekleştirildiğinden emin olmak için aşağıdaki ekran görüntüsünün bilgisayarınızda gerçekleşiyor olması gerekmektedir.



Bu uygulamanın dosyalarının internet üzerinden ya da yerel diskimiz üzerinden dosyaların belleğe alınması ile aşağıda göreceğimiz yükleme ekranı oluşmaktadır.



Bu seçenekten Install seçildiği zaman bilgisayarımıza uygulamamız offline çalışmak üzere kurulmuş olacaktır. Yayınlama işlemleri ile ilgili ayrıntıları girerken başlat menüsünde de uygulamanın gözükmesini istemiştik. Bu sebepten ötürü uygulamamız çalıştırılmayı beklemek üzere başlat menüsüne de yerleştirilmiştir.



İstediğimiz bütün işlemler sonucunda uygulamamız çalıştırılmak üzere hazırlanmış bulunuyor. Başlat menüsünde yer alan çalışan dosyasına tıklamamız durumunda uygulamamız çalışacaktır.



Bu uygulamamız ile ilgili güncelleştirme işlemlerine bakmayacağız. Bu özelliği Visual Studio 2008 ve WPF uygulaması üzerinde yapacak olduğumuz değişiklikler üzerinde değinmek yeni teknolojileri kullanım pratiği açısından daha uygun olacaktır.

Uygulamamızı yayınladık, bilgisayarımıza yükledik ve çalıştırdık. Peki, bu uygulamayı başlat menüsünden ve bilgisayarımızdan kaldırmak istediğimizde ne tür işlemler izlememiz gerekecektir. Hazırlanmış olan bu uygulamayı kaldırırken sanki bilgisayarımızdan kullanmadığımız bir programı kaldırırken uyguladığımız adımları gerçekleştirmek yeterli olacaktır.

Bu adımlar Denetim Masası --> Program Ekle ve Kaldır uygulaması çalıştırıldığı zaman karşımıza bilgisayarımızda yüklü olan programlar sıralanacaktır. Bu sıralanmış olan programlar arasından bizim hazırlamış olduğumuz uygulamayı bulamamız gerekmektedir. Şu anda yazı için hazırlamış olduğumuz uygulama aşağıdaki ekran görüntüsünde olduğu gibi gözükmektedir.



Uygulamamızın kaldırılıp değiştirilmesi ile ilgili seçeneğe artık ulaşmış oluyoruz. Bu uygulama ile ilgili bilgilere de ulaşabilmemiz mümkündür. Hatırlasanız ki uygulamayı yayınlamadan önce uygulama seçeneklerinden uygulamayı kimin yaptığını, hangi kuruma ait olduğunu ve web sitesi gibi ayrıntıları girmiştik. İşte bu ayrıntılar bilgilendirme linkine tıkladığı zaman görülebilecektir. Bu bilgilendirme mesaj kutusunun ekran görüntüsü aşağıdaki gibidir.



Yukarıdaki paragrafta da belirttiğimiz gibi bizim girmiş olduğumuz bilgiler gözükmektir. Uygulamayı kaldırmak istediğimiz zaman ise kaldır seçeneğine tıklayarak bilgisayarımızdan tamamen kaldırabilmek mümkündür. Kaldırma işlemi esnasında bilgisayarımızda oluşan ekran görüntüsü aşağıdaki gibidir.



Karşımıza çıkan bu ekranda uygulamayı kaldır seçeneği seçili iken tamama tıklamanız durumunda uygulama bilgisayarınızdan tamamen kaldırılmış olacaktır. Ek bilgiler(More Information…) seçeneğinde ise uygulamayı yapan kurumun web sitesinin görülmesi sağlanmaktadır.

Visual Studio 2005 ile oluşturmuş olduğumuz uygulamaların yayınlanmasından kaldırılmasına kadar geçen süreci ekran görüntüleri ile birlikte ayrıntılı bir biçimde incelemeye çalıştık. Şimdi ise gerçek amacımız olan Visual Studio 2008 ile WPF uygulaması için yayınlama işlemlerine göz atacağız. Fakat değinmemiz gereken bir nokta var ki Visual Studio 2005 ile 2008 arasında uygulamaların yayınlanması konusunda belirgin bir değişiklik görülmemektedir. Bu yüzden ilk olarak basit bir WPF uygulaması geliştireceğiz. Geliştirmiş olduğumuz bu uygulamayı VS2005 ’te olduğu gibi yayınlama seçeneklerini gireceğiz. Sadece VS2005 ‘te değinmediğimiz Signing seçeneğine değineceğiz. Daha sonra uygulamamızın yayınlanma işlemi yapıldıktan sonra basit bir güncelleme işlemi yaparak sürüm numarasında olan değişiklikleri de gözlemleyerek yazımızı tamamlamış olacağız.

İlk olarak WPF uygulamasını geliştirelim. Geliştirecek olduğumuz bu uygulama sürükleme çubuğu ile bir resmi büyültüp küçülten bir uygulama olacaktır. Bu uygulama geliştirilirken sürükleme çubuğunun resim ile uyumlu bir biçimde hareket edebilmesi için Data Binding(veriye bağlamak) özelliğini kullanacağız.

Uygulamamız XAML kodu aşağıdadır…

<Window x:Class="MakBinding.Window1"
   
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
   
Title="Window1" Height="300" Width="300">

   <StackPanel>
      <
Slider x:Name="resimKaydirma" Minimum="100" Maximum="300" Width="300"/>
      <
Image Source="net35.jpg" Width="{Binding ElementName=resimKaydirma, Path=Value}"
         Height
="{Binding ElementName=resimKaydirma, Path=Value}" HorizontalAlignment="Center"/>
   </
StackPanel>

</Window>


Geliştirmiş olduğumuz bu basit uygulama sonucunda karşımıza aşağıdaki gibi bir ekran görüntüsü çıkmaktadır.



Bu uygulamamızda Binding nesnesini kullanarak kaydırma çubuğunu resim ile ilişkilendirerek istediğimiz oranda resmin büyütülüp küçültülmesini sağlıyoruz. Bu bağlama işlemini saylayan kod parçacığı ise {Binding ElementName=resimKaydirma, Path=Value} dür. Uygulamamız çalıştırdıktan sonra yayınlama işlemlerine başlayabiliriz.

Uygulama yayınlamak istediğimizde de VS2005 ‘in aynı ekranı karşımıza çıkacaktır. Karşımıza çıkan bu ekran yine Publish seçeneği üzerindeki işlemlerimizi gerçekleştiriyoruz. Fakat bu sefer VS2005 ile uygulama yayınlarken değinmemiş olduğumuz Signing seçeneğine değineceğiz.

Signing ile ilgili özellikler seçildiği zaman karşımıza aşağıdaki gibi ekran görüntüsü çıkmaktadır.



Karşımıza gelen bu ekran sertifika ile ilgili işlemleri kendimiz yapabilmek için Sign the ClickOnce mainfests seçeneğini seçili olacak biçimde ayarlıyoruz.



Bu seçeneği seçtiğimiz zaman özelleştirebileceğimiz üç seçenek bizlere sunulmaktadır. Biz ilk olarak Select from Store yani bilgisayarımızın içerisinde mevcut bulanan sertifikalara göz atacağız.



Bu butona tıklamamız durumunda karşımıza aşağıdaki gibi ekran görüntüsü gelecektir.



Bu ekranda bilgisayarımızda bulanan ve uygulamalar ile bilgisayarımıza eklenen sertifikalar görülebilmektedir. Bu sertifikalar ile ilgili ayrıntılara göz atabilmek için View Certificate seçeneği kullanılabilir.

Bu ayrıntılar ile bilgisayarda yer alan sertifikalar seçeneğini incelemiş oluyoruz. Şimdi inceleyeceğimiz seçenek ise Select From File… yani sertifikalar listesinde gözükmeyen sertifikaları kendimiz bilgisayarımızın içerisinden bulabilmemizdir.



Bu seçeneği seçtiğimiz zaman bizden bilgisayarımızın içerisinden *.pfx uzantılı sertifika dosyalarını bulup uygulamamıza eklememizi istemektedir. Bu tür sertifikaları bizler özel olarak oluşturabiliriz ya da başka bir uygulamada kullanılmış olan sertifikalara erişerek kullanabiliriz. Bu sertifika bulma ekranını çağırdığımız zaman karşımıza aşağıdaki gibi bir ekran görüntüsü çıkmaktadır.



Biraz önce değindiğimiz gibi bizden bir sertifika dosyası eklememizi istemekteydi. Bizde eklemek istediğimiz sertifika dosyasını bilgisayarımızın içerisinden bularak ekliyoruz. Eklediğimiz bu sertifikalar uygulama yayınlandıktan sonra uygulamamızın proje dosyası içersinde oluşacaktır. Bizimde yukarıda bulmuş olduğumuz sertifika dosyası biraz önce VS2005 ile oluşturulmuş olan uygulama sonrasında oluşturulmuş olan sertifikadır. Bu sertifikalar özellikle web üzerinden çalışacak olan uygulamalarda ve web servis kullanan uygulamalarda kullanılması güvenlik açısından gerekli olmaktadır.

Signing(Sertifikalar) özelliğinde değineceğimiz bir diğer özellik ise Create Test Certificate olacaktır. Bu seçenek geliştirdiğimiz uygulama için bir sertifika oluşturmaktır.



Bu seçeneği seçtiğimiz zaman ise karşımıza sertifika için bir şifre gireceğimiz bir ekran çıkmaktadır. Bu ekranda unutmayacağımız bir şifre girdikten sonra test sertifikamız oluşturulmuş olacaktır ve karşımıza aşağıdaki gibi ekran görüntüsü gelecektir.



Bu oluşturduğumuz test sertifikasını istersek More Details… seçeneği sonrasında sertifikayı yükle seçeneği yardımı ile ekleyebilmemiz mümkündür. Fakat biz sertifikayı yükleme işlemini editörümüze bırakarak yayınlama işlemini başlatıyoruz.

Uygulamanın yayınlanması ile ilgili işlemleri tekrardan anlatmaya gerek yok. Yukarıda değindiğimiz adımların hepsini tek tek yapmamız durumunda uygulama yayınlanmaya hazır duruma gelecektir. Fakat değineceğimiz bir özellik var. Bu da uygulamanın çalışması için gerekli olan bileşenlerdir. Hatırlarsanız ki VS2005 ile geliştirmiş olduğumuz uygulamaların çalışabilmesi için .NET Framework 2.0 ‘ın bilgisayarda yüklü olması gerektiği için bu bileşenin yüklü olması gerektiği mesajı vermesini istemiştik. VS2008 uygulamaları için ise .NET Framework 3.5 ‘in yüklü olması gerekmektedir. Bu sebepten ötürü sistem gereksinimleri kısmında bu bileşenin isteneceği detayına dikkat etmemiz gerekmektedir. Yoksa uygulamamız başka bilgisayarlarda çalışmayabilir.



Ekran görüntüsüne de dikkat edeceğiniz üzere yüklenmesi için gerekli bileşenler ve ne tür yükleme kontrolü yapacağımıza dair kontroller yapılmaktadır. Şimdi uygulamamızı yayınlayarak yayınlama ile ilgili web sayfasında ne tür değişiklikler oluşmuş kontrol edelim.

Oluşacak olan web sayfasına göz atmadan önce VS2005 ile oluşturmuş olduğumuz uygulamayı hatırlayalım. Bu uygulamada ActiveX kontrolü yardımı ile bilgisayarda gerekli bileşenlerin yüklü olup olmadığı kontrol edilmişti. Bu kontrol sonrasında ise bileşenlerin yüklü olduğunu anlayıp kurulum için herhangi bir eksiklik kalmadığını anlamıştık. Şimdi bu uygulamanın benzerleri VS2008 de gerçekleştirildiği zaman nasıl bir ekran görüntüsü oluştuğuna göz atalım.



Kontrol yapıldıktan sonraki ekran görüntüsünde bu bileşenlerin yüklü olduğu anlaşılıp kurulum için izin verilmiştir.

Uygulamamız artık bilgisayarımıza yüklenmiş oldu. Şimdi ise güncelleştirme işlemleri ile ilgili bölüme değineceğiz. Güncelleştirme işleminin yapılması için uygulama üzerinde basit bir değişiklik yapıyoruz. Yapılan bu değişiklikte uygulamaya “bu yeni sürümdür.” Biçiminde bir mesaj ekliyoruz. Mesajı ekledikten sonra Publish özelliğinden Publish Now seçeneği yardımı ile uygulamayı yeniden yayınlanmasını istiyoruz. Yayınlanmış yeni uygulamaya ilişkin dosyalarda sürüm kodu değiştirilmiş olması dikkat çekici bir ayrıntıdır. Şimdi bu sürüm değişikliğinin görüldüğü klasöre ilişkin ekran görüntüsüne göz atalım.



Görüldüğü gibi bir önceki uygulamanın sürümü 1_0_0_0 iken güncellenmiş uygulamanın sürümü 1_0_0_1 olmuştur. Bu sürüm değişikliği uygulamada küçük bir değişiklik olduğundan bizlere bahsetmektedir. Bu değişiklik yapılmış olan uygulamayı tekrardan kurmak istediğimizde ise bizlere yeni sürüm olduğunu bunu kurmak istiyor musunuz biçiminde bir sorusu olacaktır. Kurulum dışında online olarak kullanıcı uygulamayı çalıştırmak istediğinde ise yeni sürüm bulundu mesajı alınacak ve bu alınan mesaj doğrultusunda kullanıcı yeni sürümü bilgisayarına kurmak istiyorsa uygulama güncellenecektir. Şimdi bu güncelleme ile ilgili ekran görüntüsüne göz atalım.



Güncellenmiş uygulamanın ekran görüntü yukarıdaki biçimde olmuştur.

Bu yazımızda kullanmış olduğumuz örnekler anlaşılırlık açısından kolay olabilmesi açısından basit tutulmaya çalışılmıştır. Daha büyük ölçekli projelerde de bu tür işlemlerin yapılabilmesi mümkündür. Özellikle internet üzerinden çalışan uygulamalarda ve mobil cihazlarda kullanılmakta olan uygulamalarda bu yöntem oldukça yararlı olmaktadır. Bu sayede hem kullanıcılar uygulamanın yeni sürümlerini kullanmış olacaklar hem de bizler yeni sürüm olduğunu duyurmak zorunda kalmayacağız. Uygulamayı kullanan kullanıcının internet kullanırken uygulamamızı bir kere çalıştırması yeni sürümün yüklenebilmesi açısından yeterli olacaktır.

Uygulamaların yayınlanması konulu yazımızın burada sonuna gelmiş bulunuyoruz. Bu yazımızda ilk olarak Visual Studio 2005 ile bir uygulama geliştirip bu uygulamanın nasıl yayınlanacağı konusuna ayrıntılı bir biçimde değinmeye çalıştık. Daha sonrasında ise VS2005 ‘te uygulama yayınlanması konusunda edindiğimiz bilgiler ile VS2008 ‘te WPF ile bir uygulama geliştirdikten sonra bu uygulamanın yayınlanmasına göz attık. Yayınladığımız uygulamaya sonrasında ise yeni bir değişiklik yapmak istediğimiz zaman kullanıcılara nasıl ulaştırabileceğimiz ile ilgili konulara değindik.

Umarım yararlı olmuştur.

Bir sonraki yazımızda görüşünceye dek esenlikle kalın…

Turhal TEMİZER

Cuma, Ocak 18, 2008

Windows Mobile 7.0

Microsoft firmasının son zamanlardaki yazılımsal yaklaşımları yıllardır alışkın olduğumuz şablonların dışına çıkmaya başladı. Bu farklı yaklaşımlar ilk olarak Windows Vista ve Office Sistem 2007 ile karşımıza çıktı. İlerleyen zamanlarda ise Microsoft Surface ile dokunmatik masalar karşımıza çıktı. Biz bu teknolojinin ne kadar farklı ve güzel olduğunu düşünürken Microsoft Silverlight ile web de, dokunmatik ve daha dinamik bir yaklaşımlar içerisine girmeye başladı. Tabii ki Silverlight teknolojisi başka bir teknolojinin web ’e uyarlanması ile ortaya çıkmıştı. Bu yeni teknoloji ise Windows Presentation Foundation (WPF) ‘dır. Bu yeni teknoloji ise Windows ile artık standartlaşmış olan formları artık kalıplarının dışına çıkararak çok daha görsel ve başarılı uygulamalar durumuna geçirmişti.

Web ve masaüstü uygulamalar geliştirilirken mobile sistemlerin geliştirilmemesini beklemek hayalden başka bir şey olamazdı. Özellikle Apple firmasının iPhone ürününde kullanmış olduğu mobile işletim sistemi taşınabilir cihazlarda görülmemiş özellikleri taşıyor ve dokunmatik cihazlarda devir açıyor gibiydi. iPhone ‘dan sonra IMate Touch 'in dokunmatik telefonu da formlar arası geçişi kübik olarak yapmıştı. Mobile işletim sistemlerinden bu kadar devrimsel değişiklikler yaşanırken Microsoft firması tarafından çıkartılmakta olan Windows Mobile (WM) taşınabilir cihazlar için işletim sisteminde de devrimsel değişiklikler yapılması beklenmekteydi.

Yaklaşık bir yıl önce çıkartılmış olan Windows Mobile 6.0 (WM 6.0) ile bir önceki sürümde yaşanan sorunlar kapatılmakla birlikte genel çizgiden dışarı çıkılmamıştı. Genellikle getirilmiş olan yenilikler tuş kilidinin yapılabilmesi, tek bir sürüm yerine standart profesyonel gibi sürümlerin çıkartılması ile kapsamsal olarak kullanabilmesinin sağlanması, performansından iyileştirilmeler ve bunlar dışında daha birçok özellikte yenilikler aramıza katılmıştı. Fakat yukarıda bahsetmiş olduğumuz diğer mobile işletim sistemi üreticilerinin yaptığı yaklaşımlar WM ’in bir sonraki sürümünden beklentileri arttırmıştı. Bu beklentiler karşısından Microsoft ‘ta çalışmakta olan WM geliştiricileri gereken yenilikleri yaptıklarını açıklamışlardı. Yapılamakta olan yenilikleri de BLOG ‘ları ile sunmaya başladılar. İşte bizde bu yazımızda WM geliştiricileri tarafından bizlere sunulmakta olan yeniliklere değinmeye çalışacağız.

Windows Mobile 7.0

Windows Mobile 7.0 'ı incelemeye başlamadan önce genel perspektifini yansıtan bir resim ile başlamak çok daha aydınlatıcı olacaktır.



Yukarıdaki resimden de görebileceğiniz gibi dokunmatik taşınabilir cihazlara daha fonksiyonel bir kullanış kazandıracak. Ayrıca bizlere sunulmuş olan genel görüntülerinde tek kelimeyle Windows Mobile geliştiricileri bir devrim yapacaklar. Bu devrim özellikle işletim sisteminin görünüşünde ve kullanım kolaylığında ön plana çıkacak gibi gözükmektedir. Böyle bir değişime sebep olan etken ise Windows Vista ile birlikle kullanmakta olduğumuz teknolojik cihazların sistem özelliklerindeki inanılmaz yükselişler ve bu yükselişlerin sonucunda son kullanıcılar tarafında bu sistemleri maksimum olarak kullanabilecek ve geçmişten farklı olarak 2000 ‘li yıllarla uyumlu yazılımlar istenmektedir. İşte bu isteklerin karşılanması sonucunda web den masaüstü uygulamalara gelişimler yapılırken son etken olarak mobil işletim sistemlerinde de son bir yıldaki gelişim Microsoft tarafından da görülerek istenen değişikliklerin yapılması planlanmıştır. Bu yapılmış olan planlar 2009 yılında sunulacak olmasına rağmen günümüzden itibaren değişikleri bizlere sunarak karşımıza nelerin geleceğini göstermektedirler.

Microsoft Windows Mobile geliştiricileri tarafından hazırlanmış olan gayet uzun bilgilendirme dokümanında belirtilen çok güzel, güzel olduğu kadar da iddialı bir söz var; ”WM 7.0 tereddüt etmeden kullanabileceğiniz bir işletim sistemi olacaktır” diyorlar. Bu sözlerini de ilk olarak sunmuş oldukları ekran görüntüleri bizlere sunacaklarını belirtmektedirler. Ayrıca yapılacak olan değişikliğin sadece görüntüsel anlamda değil işletim sisteminin arka plan çalışma prensibinde de değişikliklere sebep olacağından bahsedilmektedir.

Windows Mobile 7.0 Ne Tür Yenilikler ile Geliyor?



Üst taraftaki yazılarda iPhone ile gelen değişikliğin mobil işletim sistemlerinde de değişikliğe sebep olan faktörlerin başında olduğundan bahsetmiştik. Windows Mobile ‘da ki bu dramatik değişikliğin sebebi de diğer mobile işletim sistemleri hazırlayıcıları gibi iPhone ile gelen yeniliklerdir.

iPhone ‘nun dokunmatik taşınabilir cihazlardaki başarısı Microsoft tarafından da kabul edilmiş ve VM 7.0 ile gelecek özelliklerden bahsedilirken iPhone da ne varsa aynısı ve daha da fazlası yer alacaktır gibi iddialı sözler yer almaktadır.

Şimdi iPhone da varken WM ‘a da eklenecek olan özelliklerden bahsetmeden önce iPhone işletim sistemi kullanıcılara ne tür kolaylıklar sağladığına kısaca değinmek yararlı olacaktır. İlk olarak en çok ilgi çeken özelliği parmak ile formlar arası geçişlerde direk geçiş değil de sanki sayfa çevirme esnasında olduğu gibi sürüklenerek formlar arası geçişler sağlanıyordu. Bir diğer özelliği bilgisayarlarımızda kullanmış olduğumuz tarayıcıları sorunsuz bir biçimde telefon da kullanabilmemizdi (iPhone için Safari). Bir başka özelliği yer çekimine bağlı olarak ekranda yer alan resimlerin veya videoların dönmesiydi. Bu özellik birçok kişi tarafından çok başarılı bir özellik olarak görülmekteydi. Bir başka özelliği ise Google Eart gibi uygulamalar ile merak edilen bir yerin adresi ve telefonu bulunabiliyor ve istenen bir işlem var ise bulunan telefon numarası ile yapılabiliyordu. Genel olarak iPhone ‘nun özellikleri bunlardır. Bu özelliklere göz attıktan sonra WM ‘de ne tür yenilikler olduğuna artık değinebiliriz.

Not: Bilgisayar sektöründe firmaların kendilerini daha başarılı bir biçimde geliştirebilmeleri için başka firmalar tarafından gerçekleştirilmiş olan uygulamalar incelenerek bu uygulamaların eksiklikleri kapatılır ve daha başarılısı kullanıcılara sunulur. Microsoft geliştiricilerinin de iPhone teknolojisini bu kadar ayrıntılı bir biçimde incelemesi ve üzerine yenilikler eklenmesi yeni çıkacak uygulamalar için olması gereken bir işlemdir. Aksi taktirde yapılmak istenen bir işlem bir ay gibi bir süre alacakken yıllar boyunca süren çalışmalara dönüşebilmektedir. Yeni çıkmış veya çıkacak olan bir ürünü incelerken bu ince detayı aklınızdan çıkarmamanızı öneririm.

WM ‘in iPhone da yer alan birçok özelliği bünyesinde barındırdığından bahsetmiştik. Rakibinden farklı olarak WM 7.0 kullanıcı tarafından yapılmış olan el hareketlerini algılayarak bu el hareketi fonksiyonu gerçekleştiği zaman istenen işlemi kolayca yapabilmesini sağlayacaktır. Bu özellik geliştirilirken özelliklede Surface ile uygulanan teknolojinin kullanıldığından bahsedilmektedir.

WM 7.0 ile gelecek olan bir başka özellik telefonlarda yer alan kameraların en büyük sorunu olan elimiz titrediği zaman çekilmiş olan resmin bulanık bir biçimde çıkmasıydı. WM 7.0 fotoğraf çekilmesi esnasında elde olan sarsılmayı görüntü işleme teknikleri ile en uygun kareleri alarak kusursuz bir fotoğraf çekimi bizlere sağlayacaktır.

WM 7.0 ile ekranı kilitlememiz durumunda standart zamanlarda yapmış olduğumuz çizim işlemleri, bilgisayar işlemleri gibi özellikleri iptal edecektir. Bu sayede telefonumuzu şarjını en tasarruflu biçimde kullanmamız sağlanacaktır.

Windows Mobile 'in olağan üstü işletim sistemi temaları açısından devrim yaptığından bahsetmiştik. Bu devrim esnasından WM 5.0 ve WM 6.0 dan alışkın olduğumuz mavi veya standart sistem rengi kullanılmaktaydı. İlk olarak rengin hem iPhone da hem de Vista da kullanılmakta olan renk olan siyaha geçilmiştir. Bu geçişin dışında Vista ‘nın görüntüsel öğelerini bünyesinde barındırmaktadır. Bu görüntüsel özellikler grafiksel dönüşümler, pencerelerin şeffaflık özellikleri ve gölgelendirilmeleri gibidir.

Windows Mobile 7.0 ile diğer işletim sistemlerinden farklı olarak Media Player ‘da oluşturmuş olduğumuz müzik listesini silebilmekteyiz. İnternet sayfasını ise telefonumuzun ekranını tam ekran olarak kullanabiliyoruz. Bu özelliğin dışında Internet Explorer 7 ile Microsoft tarafından kullanılmaya başlanan web sayfasındaki "tab" özelliği WM 7.0 ile de kullanılmaktadır.

Şu anda hazır olmayan fakat planlanmış olan bir başka özellik ise maillerde ve SMS ‘ler de kullanılacak olan klavyenin tam ekran olarak kullanılabilmesidir. Şu anda ki sürümünde ise klavye ekranın yaklaşık olarak yarısını kapsamakta ve tuşlara basıldığı zaman büyük görüntüsü ile kullanılmaktadır. Tam ekran klavyenin yararları ufak ekranlı telefonlarda klavyede yer alan harfleri ve sayıları görmeleri oldukça zor olacağı için avantajlı bir özellik olacaktır.

Belki de son kullanıcı tarafından şu anda telefonlarda en çok kullanılan özellik olan fotoğrafların gösterilmesi üzerinde yapılan çalışmalar hoşlarına gidecektir. Çünkü hazırlanmış olan özellik sayesinde boyutu ne olursa olsun telefonunuzun ekranında tam ekran olarak gösterdiğimiz zaman maksimum görüntü kalitesi ile bizlere sunmasıdır. Bu özellik en çok yakınlaştırılarak çekilmiş resimlerin çözünürlükleri düşük olacağı için bu resimleri görüntülerken işimize yarayacaktır.

Kullanıcı Ara Yüzü İçin Yapılması Düşünülenler

İlk olarak tamamlanan özelliklerin neler olduğunu belirtip neler yapılmak istendiğine değinelim.

Tamamlanmış olan özellikler: Dokunmatik özellikler, el hareketi senkronizasyonları, scroll özelliklerin tanımlanması ve direk yapılacak olan işlemler.
Yapılma aşamasında olan diğer özellikler ise animasyonlar, el hareketi ile formlar arası geçişlerdir.

Şimdi ise hedeflenen özelliklerden bahsedelim.

İlk olarak bahsedeceğimiz özellik parmak ile yapılacak olan işlemlerde iyileştirme sağlanmasıdır. Bu işlem gerçekleştirildiği takdirde daha az dokunma ile en çok işlemi gerçekleştirmemiz mümkün olacaktır. En iyi sınıf hazırlanarak düşünülen işlemlerin gerçekleştirilmesi durumunda son kullanıcılara oldukça rahat bir kullanım olanağı sunulacaktır.

Hedeflenen başka bir düşünce ise minimum bellek performansı ile maksimum işlemin yapılmasıdır. Bu düşüncenin gerçekleştirilmesi durumunda çok daha basit telefonlar ile en uygun ve performanslı animasyon işlemlerinin, en iyi performansın sağlanması mümkün olacaktır. Böyle bir geliştirmeye sebep duyulmasının sebebi ise günümüzde kullanılmakta olan taşınabilir cihazların çok düşük bellekler ile ve grafik özellikleri çalışmasıdır.

Bir diğer hedeflenen özellik ise iPhone ile dokunmatik işlemlerin başarılı bir biçimde kullanılıyor olması sebebiyle kullanılmakta olan bu teknolojinin nasıl yapıldığı incelenerek en iyi dokunmatik sistemi oluşturmaktır

Son kullanıcı açısından getirilecek bir başka yenilik ise kaydırma çubuğu ile ekran üzerindeki yukarı ve aşağı dolaşma ile kısıtlı kalmayacağıdır. Yukarıdaki yazılarda da bahsettiğimiz gibi sağa ve sola animasyonlu bir biçimde geçişler ile son kullanıcı açısından başarılı bir sistem sunulacaktır. Tabii ki unutulmaması gereken başka bir özellik var ki bundan bahsetmeden geçemeyeceğiz. Kısa bir süreye kadar masaüstü bilgisayarlarda oynanmakta olan oyunların mobil sisteme dönüştürülmüş olarak telefonlarımızda da oynanabilecek olmasıdır. Bu özelliği okuduğunuzda zaten oynanabiliyordu diye bir söz söylemeniz mümkündür. Fakat biraz önce bahsetmiş olduğumuz minimum sistem özellikleri ile maksimum performans sağlanması olayı sayesinde oyunların grafikleri çok daha gerçekçi olarak sunulacaktır.

Telefonlarımızda dinleyecek olduğumuz ses dosyalarının kaliteleri yükseltilmiş olarak kullanılabilecek. Ayrıca günümüz telefonlarında karşımıza çıkan yüksek ses kaliteli müzikleri dinlememiz durumunda oluşan ses kesiklikleri ortadan kaldırılacak. Bunların dışında dinleyebildiğimiz bu müzikleri telefon çağrı melodisi olarak da kullanabileceğiz.

Dokunmatik ekranlı telefonlar tasarlanırken dokunmatik olarak sunulacak olan ekranların boyutlarının arttırılması ile geniş kullanım alanlı bir kullanım gerçekleştirmiş olacağız.

Ekran genişlemelerinin sağlanması sonucunda ise şu anda kullanmakta olduğumuz analog tuşlar kalkarak yazılımsal olarak geliştirilmiş olan dokunmatik ekran ile karşımıza çıkan sanal klavye kullanılacaktır. Hatırlasınız ki bu özellik iPhone ile bizlere sunulmuş ve tuşlara basarken ortaya çıkan sesler ortadan kalktığı için kullanıcıların beğenisini kazanmıştı.

Telefonumuzda gridList ler yardımı ile bir şeyler göstermek istediğimizde çok fazla veri sonuç olarak geri döndüğü zaman hangi veriye ulaşmak istediğimizi şaşırarak karıştırılabiliriz. Bu karıştırmayı öncelemek için verileri listelemek için kullandığımız paneli görsel öğelere de yer verilerek köşe noktalarından çekilmesi durumunda büyütülüp küçültülmesidir.

Ekran üzerinde gerçekleştirilen işlemler sonucunda kullanılmakta olan ikonlar, nesneler gibi öğelerin çözünürlüklerin bir değişiklik olmadan görülebilecektir. Bu işlemin gerçekleşe bilmesi için tasarlanacak olan öğelerin yüksek çözünürlükler de tasarlanması yeterli olacaktır.

Masaüstü bilgisayarlarımızdan alışkın olduğumuz bir uygulamanın çalışan dosyasını bulunduğu dosyadan başka bir yere sürüklediğimiz zaman kısa yolu oluşuyordu. Bu güzel özellik artık WM 7.0 ile bizlere telefonlarımızdan da sunulacaktır.

Bence gelecek olan en güzel özelliklerden birisi dokunmatik ekranlarda sadece tek parmak ile işlemlerimizi yapabiliyorken WM 7.0 iki veya daha çok parmağımızı kullanarak işlemlerimizi yapabileceğiz. Bu işlemlerin iPhone ile gerçekleştirildiğini resimlerin büyütülüp küçültülmesi işlemlerinden görmüştük. Fakat resim çizilmek istendiği zaman sadece tek parmak kullanılmaktaydı. Bu güzel özelliğin geliştirilmesi sonucundan ekran üzerinden istediğimiz kadar parmak kullanabileceğiz.

El Hareketleri İle Yapabileceklerimiz

Parmaklarımız ile genel olarak yapabileceklerimizi tekrardan hatırlamakta yarar var. Bunlar; kaydırma çubuğu olarak kullanabilme, ekran üzerindeki formları yatay ve dikey eksende animasyonlu bir biçimde kaydırılması, başka bir formun üzerinde yer alan program kısa yollarını başka bir klasöre sürükleme imkânı tanınması gibidir.

Arama yaparken ise parmaklarımızı bilgisayar farelerinde olduğu gibi sağ ve sol tuş gibi kullanabilmemiz mümkündür. Örneğin bu özellik sayesinde arama esnasından sol tuş özelliğini kullanarak aramayı bekletebilir veya konferans türü konuşmaları başlatabilmemiz mümkün olacaktır.

Daha önceki yazılarımızda kamera çekimi esnasından oluşan sorunlardan bahsetmiştik. Bu sorunların çözümü için Microsoft araştırma geliştirme biriminin (Microsoft Research) yaptığı gelişmelerden biraz daha bahsedelim. İlk olarak başlıca sorun olan fotoğraf çekimi esnasında titreşimlerden oluşan sorunlardan bahsetmiştik. Bu sorunun çözümü için en doğru kare seçilerek görüntü işleme teknikleri ile çözülebildiğine değinmeye çalışmıştık. Bu sorunun dışında karşımıza çıkan bir başka sorun ise telefonumuzu dik olarak değil de açılı bir biçimde tutarak fotoğraf çekmemizdir. Bu durumda örneğin 45 derece açı ile çekilmiş bir resme daha sonra bakılmak istendiğinde çekildiği gibi olduğunu görürüz. Fakat bu tür çekimlerin sonucunda özellikle istemiyorsak resimlerin sanki dik olarak çekilmiş düzeninde görülme daha hoş bir görünüm sunmaktadır. İşte bu sorunun çözülmesi için yine en doğru kare seçimi ve telefonun yer çekimi ile yapmış olduğu açı göz önüne alınarak gerekli çalışmalar sonucundan bu tür sorunlardan da kurtulmuş oluyoruz. Günümüzde telefon kullanıcılarının kameralarını fotoğraf makinesi gibi kullandığını düşünürsek daha profesyonel resim çekimi açısından bu özellik kullanıcıların oldukça beğenisini kazanacaktır.

Ayrıca Windows Mobile 8 ‘de el hareketleri için yardımcı bir asistan olabileceğinden bahsedilmektedir. Fakat bu özelliğin Windows Mobile 7.0 ‘da olmayacağı kesin gibidir.

Windows Mobile 7.0 ‘da Media Player ve Resim Görüntüleyicisi gibi uygulamalarda müzikler ve resimler arası geçişlerde bu öğeler birbirlerinden ayrılarak sanki bir uzayda dolanıyormuş gibi bir görünüm veriyor ve tekrar istenen bir sonraki öğeye geçildiğinde standart görünüme geçilmektedir. Bu özellik telefonu olan kullanıcıların daha çok eğlenmesini sağlayacaktır. Bu işlemleri aşağıdaki resimde daha ayrıntılı bir biçimde görebilmekteyiz.



Media Player ile ilgili başka bir özellik ise albüm kapaklarını ve müzik dosyasının içeriğini oldukça güzel bir görünüm ile bizlere göstermektedir. Bu özelliğin görüntüsünü yazımızın ilerleyen yerlerinden sizlere sunacağız.

Değineceğimiz bir başka özellik ise internet tarayıcımızda sayfaların boyutları telefonumuzun ekranın boyutu geçmesi durumunda ne tür işlemleri gerçekleştireceğimizdir. Ama bunları anlatmadan önce ne demek istediğimizin daha net şekilde anlaşılabilmesi için resmini verelim.



Windows Mobile 7.0 ‘ın internet tarayıcısı olarak Internet Explorer ‘ı kullanacağı kesindir. İnternet sayfalarını görüntüleyeceğimiz zaman yukarıdaki resimde sol tarafta yer alan telefon resmi gibi sadece bir kısmı görüntülenmektedir. Bu sorunu gidermek için daha önceden bahsetmiş olduğumuz parmaklarımız ile ekran üzerinde yer alan formu yatay ve dikey olarak hareket ettirebiliyorduk. İşte bu özellik kullanılarak internet sayfasının bir kısmını bitirdikten sonra kaydırma çubuğu ile uğraşmadan rahatça başka bir kısmını görüntüleye bilmemiz sağlanacaktır.

Resimde dikkat ettiğiniz üzere sağ taraftaki telefonda açık olan pencerelerin tab biçiminde gözüktüğünü göreceksiniz. Bu özellik ile daha önceden WM işletim sistemlerinde ekranda sadece açık olan pencerenin görülebilmesi özelliğini ortadan kaldıracak ve açık olan sayfayı görev çubuğuna indirmeden açık olan pencereler görülebilecek.

Uyku Durumundan Çıkış ve Ekran Kilidi

Bu özelliği incelemen önce sarsılma durumunda ve uyku durumundan çıkış esnasında telefonun nasıl bir görünüm alacağına dair bir resim sunmak daha yararlı olacaktır.



Telefonun sarsılmasından sonra ilk olarak yazılar bulanıklaşacak ve daha sonra net okunabilecek düzeye gelecektir. Aynı şekilde kilitli durumdan çıkışta da sarsılma durumunda yaşananlar gerçekleşecektir.

Şimdi de uyku durumundan çıkış şeklini adım adım açıklayan bir resme bakalım.



Bu tür grafiksel öğeler oldukça güzel olmakta birlikte uyku durumundan çıkış esnasından oluşabilecek ekstra zaman kayıplarından ötürü çok sinir bozucu bir durumda olabilir. Fakat genel olarak hızlı bir biçimde işlemlerini tamamlayabilirse oldukça güzel bir dönüşüm olacaktır.

Zaman aralığında gelişecek başka bir özellik ise ekrana bir şeyler çizebilmektedir. Bu işlemler resmin üzerine dokunulduğu zaman dalga durumunu alması veya resim çizmeye yarayan bir yazılım üzerinden istediğimiz şekilde bir şeyler çizebilmemize yarayacaktır. Bir diğer özelliği ise yazı yazmak istediğimiz zaman tuşlarla veya sanal klavye ile uğraşmak yerine parmağımız yardımıyla yaptığımız harfleri tanımlayarak yazı yazmasıdır. Bu işlemelerin hepsinin gerçekleşebilmesinin kilit noktası ise ekrana bir şeyler çizebilmektedir.

Şimdi bu yukarıda açıklamış olduğumuz özelliği ilk olarak tasarımsal bir resim ile daha sonrada uygulamadan alınmış olan ekran görüntüsü ile görelim:



Şimdi de ekrana dokunulması durumunda oluşan dalgalanmayı ve yapılan çizime ait ekran görüntüsüne göz atalım:



Görüntüler her şeyi anlatmaya yetiyor...

Hafif Dokunuşlar ile Kaydırma Çubuğu İşlemleri

Kaydırma işlemleri ile ilgili yaralanacağımız birkaç uygulamadan bahsetmekte yarar var. İlk olarak program listesi arasından istediğimiz şekilde dolaşmamıza yaramaktadır. Bunun dışında üst kısımda yer alan program arasında dolaşabilmemiz mümkündür. Tabii sadece bu iki özellikle kısıtlı kalmıyor. Bu özelliklerin dışında Outlook ‘a gelen maillerimizi kontroller ederken yeni mailler liste halinde karşımıza çıkmaktadır. Çıkan bu liste çok fazla ise kaydırma çubuğunu kullanmamız gerekecektir. Bu kaydırma çubuğu kullanma zorunluluğundan kurtulmamızı da sağlayacaktır. Başka özelliklerde yer almaktadır. Bunlara yazımızın ilerleyen yerlerinde görüntüsel olarak değinmeye çalışacağız.

İlk olarak ekran görüntüsüne göz atacağımız uygulama, programların yer aldığı üst çubuk üzerinde ki hareket ve daha önceden kullanılmış olan programlara ulaşımı gösteren bir resim olacaktır.



Şimdi inceleyeceğimiz ekran görüntüsü ise Outlook uygulamasında kullanım kolaylığı ile ilgilidir.



iPhone ‘dan bahsederken GoogleEarth uygulaması yardımı ile dünya üzerindeki herhangi bir nokta ile ilgili bilgilere ulaşabileceğimizden bahsetmiştik. Windows Mobile 7.0 ile de LiveEarth uygulaması ile dünya üzerindeki farklı noktalar ile ilgili bilgilere ulaşabilmemiz mümkündür. Şimdi bu LiveEarth ile ilgili ekran görüntüsüne göz atalım:



Bu uygulama yardımı ile dünya üzerinde istediğimiz bir mağazanın ya da noktanın telefonuna ve adres bilgilerine ulaşabilmemiz mümkündür.

Windows Mobile 7.0 ‘ın genel tanıtımından bahsederken özellikle kullanıcılara kullanım kolaylığı konusunda büyük gelişmeler yapılacağından bahsetmiştik. Bu kolaylıklara ek olarak birkaç özellikten daha bahsedelim. İnternet sayfalarının görüntülenmesinde eğer telefonumuzun ekranına sığmıyorsa parmak hareketleri ile sayfa üzerinde hareket edebilmemiz mümkündür. Bu hareketlerin dışında sayfanın genelini de yakınlaştırıp uzaklaştırmamız mümkündü. Bu özeliliklerin dışında internet sayfaları ile ilgili başka bir özelikler daha var. Bunlardan en çok kullanılması düşünülen özellik ekranda seçilen bir noktanın yakınlaştırılmasıdır. İnternet sayfalarının dışında sanal klavye kullanırken eğer kullandığımız telefonun ekranı küçükse karşımıza çıkan klavyede karakterler oldukça küçük gözükecektir. Bu durumun ortadan kaldırılması için istenen karakterlere ön izleme yapılabilmesi mümkündür. Bir diğer özelliği ise okumakta olduğumuz dokümanların üzerinden sanki fosforlu kalem ile çiziyormuşuz gibi çizebilmemize olanak tanımasıdır.

Şimdi bahsetmiş olduğumuz bu özelliklerin yer aldığı ekran görüntüsüne göz atalım:



Yukarıdaki resimde yer alan Word dokümanına dikkat ettiyseniz Word 2007 kullanılmaktadır. Bu kullanım şekli sayesinden bizlere oldukça fazla kolaylık sağlayan Office Ribbon ‘larını kullanabilmemiz sağlanmıştır.

Şimdi göreceğimiz ekran görüntüsünde Office üzerinde ekran kilitlenmiş olarak bulunmaktadır. Bu kilitlenme işlemi bilgisayarlarımızda kullandığımız sağ tuş fonksiyonu kullanıldığı zaman gerçekleşmektedir ve yapabileceğimiz işlemler sıralanmaktadır.



İnceleyeceğimiz bir diğer ekran görüntüsü ise arama yapıldığı zaman ekranın kilitlenmesi, çabuk menüde nelerin olduğu ve parmağımız ile hızlı olarak kaydırma işlemi yapmak istediğimizde oluşan görüntüdür.



Hızlı kaydırma işlemleri yaparken ekranın kilitlenmesi gerçekleşmektedir. Aynı şekilde hızlı menünün çıkması esnasında da arka plan kilitlenir ve sadece açılan menü aktif olarak yer alır.

Yukarıdaki bahsettiğimiz özelliklerden biride şarkı dosyaları ile ilgili bilgilere ulaşabilmemizdi. Bu durum ile ilgili ekran görüntüsü aşağıdadır.



Yukarıda görülen işlemleri yapabilmemiz için gerekli olan yazılımlar WM 7.0 ile bizlere sunulacaktır. Ayrıca albüm kapağı gibi özellikleri Microsoft ‘un müzik servisi olan Microsoft Zune yardımıyla ulaşılabilmektedir. Ayrıca ulaştığımız bu müzikleri telefonumuza indirdikten sonra da dinleyebilmemiz mümkündür.

Son olarak göz atacağımız ekran görüntüsü ise resimler çekilirken ve görüntülenirken yer çekimi ile ilişkili olarak kendisini yeniden düzenlemesidir. Bu teknolojinin bir benzer iPhone ile fotoğraflar ve videoları görüntülerken kullanılmaktadır. Bu işlem yer telefona yerleştirilmiş olan algılayıcı ile yer çekimini kontrol ediyor ve telefonun belirtilen yer çekimi düzeninden farklı bir açı almış ise yeni duruş şekline göre ekrandaki görüntü kendisini yenilemektedir. Bu özelliğin WM 7.0 ile kullanım şeklini gösteren ekran görüntüsüne göz atalım:



Bu yöntem resmin duruma göre genişletilebilirlik ve uyumluluk özelliklerinin birlikte uyumu ile çalışmaktadır. Bu birliktelik kamera ile alınmış olan görüntünün her durumda sorunsuz bir biçimde ekranda görüntülenebilmesini sağlayacaktır.

Windows Mobile 7.0 ‘ı tanımayı burada bitirmiş oluyoruz. Windows Mobile 6.1 ‘in sunulduğu şu günlerde WM 7.0 ile yapılmış ve yapılmakta olan çalışmaları gördüğümüz zaman bu yeni sürümü çok yakın bir tarihte kullanabileceğimiz görülüyor. Belki de Bill GATES 2008 yılının sonunda başkanlığı bırakırken son sunumunu Windows Mobile 7.0 ile yapacak. Bunun gerçekleşmesini görebilmek için bekleyip görmek gerekiyor. Fakat ortak kanı 2009 yılı taşınabilir cihazlarda kullanılmakta olan işletim sistemleri için gerçek bir devrimin yaşandığı bir yıl olacaktır.

Not: WM 7.0 ile kullanılması planlanan çoklu parmak ile kullanım özelliğini karşılayacak ürün günümüzde yoktur. Bu ince detayı belirtmekte yarar var.

Bir sonraki yazımızda görüşmek dileğiyle,

İyi çalışmalar…

Turhal TEMİZER

Kaynak
Microsoft Blog News Channel

Cuma, Ocak 11, 2008

C#nedir?com’dan Büyük Etkinlik! - Tekrar

C#nedir?com ekibinden bir ilk daha! 26 Ocak 2008 C.Tesi günü Microsoft Türkiye sponsorluğunda tamamı ücretsiz bir dizi seminer düzenliyoruz. Tamamını C#nedir?com ekibinde bulunan editörlerin düzenlediği seminer dizisinde yok yok! Microsoft’’un yeni ürünleri ve platformları hakkında güzel ve kapsamlı sohbetlerin ve paylaşımların yapılacağı etkinliğe katılmanız için yapmanız gereken tek şey C#nedir?com üyesi olmanız ve katılmak istediğiniz sunumlara kayıt olmanızdır.

Etkinliğin ana konusu Microsoft’’un yeni geliştirme platformları olacaktır. Etkinlikte Microsoft’’un Şubat 2008’’de lansmanını yapacağı ürünler de bulunmaktadır. Öncelikle C# 3.0, LINQ to SQL gibi konular ele alınacak, ardından Microsoft’’un .NET 3.0 platformu ile birlikte sunmuş olduğu, WPF (Windows Presentation Foundation) altyapısı, WF (Workflow Foundation altyapısı) ve WCF (Windows Comunication Foundation) altyapıları ile ilgili ayrı ayrı sunumlar yer alacak. Ayrıca Microsoft’’un görsel web medyasına giriş yaptığı ürünü Silverlight da etkinlikteki sunumların arasında yer alıyor.

Geleceği şimdiden görmek isteyen ve yatırımları gelecekteki platformlara göre yapan kişilerdenseniz bu büyük etkinliği kaçırmayın.

Önemli Not : Etkinliğe katılan kişilerin giriş, orta yada ileri düzey C# ve .NET bilgisine sahip olması beklenmektedir.


Etkinlik Takvimi


C# 3.0 ile birlikte gelen yeniliklerin de anlatılacağı etkinliğin ana konusu "Yeni nesil Microsoft Teknolojileri" olacaktır. Özellikle veri tabanı ve yazılım tarafındaki geliştiricilerin en çok merak ettikleri konular ele alınacaktır. Detaylı etkinlik takvimi aşağıda belirtilmiştir.

Saat Sunum Konusu Konuşmacı
09:00-09:30 Açılış Konuşması Burak Selim Şenyurt
09:30-10:15 C# 3.0 (Dil Yenilikleri) Sefer Algan
10:15-11:00 LINQ to SQL (DLINQ) Sefer Algan
11:00-11:15 Ara  
11:15-12:00 WPF (Windows Presentation Found.) Turhal Temizer
12:00-13:00 Silverlight Çiğdem Çavdaroğlu
13:00-13:45 Ara (Yemek Arası)  
13:45-14:15 WF(Workflow Foundation) Burak Selim Şenyurt
14:15-15:00 WCF(Windows Comunication Foundation) Burak Selim Şenyurt
15:00-15:30 Ara  
15:30-16:15 Visual Studio.NET 2008 İlker Acar
16:15-17:00 MSF, MSF Agile ve Team System (TFS) Sadun Sevingen
17:00-17:30 SORU - CEVAP Oturumu Tüm Ekip
Etkinlik Yeri : Barbaros Plaza, Microsoft Türkiye Seminer Salonu Dikilitaş - İstanbul

Etkinlik Tarihi : 26 Ocak 2008 C.Tesi

Konuşmacılar

İlker Acar

Etkinlik Kayıt Formu

Not : Her sunumun kontenjanı 80 kişi ile sınırlıdır ve seminere yalnızca C#nedir?com üyeleri katılabilir. Katılmak istediğiniz her sunum grubu için ayrı ayrı kayıt olmanız gerekmektedir. Sadece kayıt olduğunuz sunumlara katılabilirsiniz. Bir sunum grubuna kayıt olduğu takdirde sunumlara haber vermeksizin katılamayanlar bir sonraki C#nedir?com etkinliklerine katılma haklarını kaybedeceklerdir.

Sunum Konusu Kayıt
C# 3.0 (Dil Yenilikleri) 1.Grup İçin Kayıt
LINQ to SQL
WPF (Windows Presentation Found.) 2. Grup İçin Kayıt
Silverlight
WF(Workflow Foundation) 3. Grup İçin Kayıt
WCF(Windows Comunication Foundation)
MSF, MSF Agile ve Team System (TFS) 4. Grup İçin Kayıt
Visual Studio.NET 2008
SORU - CEVAP Oturumu
Etkinlik Yeri : Barbaros Plaza, Microsoft Türkiye Seminer Salonu Dikilitaş - İstanbul

Etkinlik Tarihi : 26 Ocak 2008 C.Tesi

Etkinliğimize katılmabilmeniz dileğiyle...