Visual Studio 2010 Express for Windows Phones IDE’si ile windows phones isimli yeni teknoloji için geliştirmeye merhaba dedik. Bu yazımda bu teknolojiyi incelerken geliştirme aracını ve yeniliklerden bahsedeceğim. Öncelikle windows mobil 5.0 dan beri telefonlarımıza yeni ROM yüklemeye alışmıştık. Bu aşamadan sonra ise Windows Mobile 6.5 telefonlarımıza dahi yeni işletim sistemini ROM güncellemesi ile yükleyemeyeceğiz. Donanımsal olarak cihazların yeterli teknolojiye sahip olmamasını sayabiliriz. Bunun dışında Multitouch özellipi ve kapasitif ekran özelliklerinin gelmesi aynı zamanda cihazın kullanım özelliklerine uygun olarak 3 tuşun bulunması gerekiyor. Bu özellikler dahi bende büyük heyecan uyandırmaya yetti. Windows Phones ile tüm yazılım geliştirme altyapısı Silverlight üzerine inşa edilmiş gibi gözüküyor bunun yanında XNA önemli bir yer tutmakta. Önceki versiyonlarda XNA desteği yerine DirectX programlama ile uğraşmak zorundaydık artık işlerimiz biraz daha kolay. Yinede yeni platforma alışmak yazılım geliştiriciler açısından biraz tedirginlik yaratabilir. Klasik windows mobile programlama alışkanlıklarımızı bir kenara bırakmak zorundayız. Öncelikle bildiğim temellerden biri Bluetooth API’sinin değişiklik göstereceğiydi. Diğer API’lerle ilgili durum şu anda bilgim dahilinde değil.

Visual Studio 2010 ile beraber gelen Mobil Proje tiplerini inceleyecek olursak karşımıza şu tipler çıkmakta;

 

İki seçeneğimizden ilki Silverlight for Windows Phone seçeneği. Burada Windows Phone Application seçeneği ile temel template’imiz karşımıza çıkmakta. Genel ve gelişmiş tüm programlarımızı bu yapı altında yapabilmekteyiz. Windows Phone List Application’da ise isminden anlaşılabileceği gibi listelerden oluşmuş uygulamalar yapabilmekteyiz. Class Library klasik alışkanlığımız olan kendi sınıflarımız için bir seçenek.

 

XNA Game Studio 4.0 ise Windows Phone Game, Game Livrary, Windows Game ,Xbox 360 gibi seçeneklerle beraber gelmekte.

Bizim ilk uygulamamız Silverlight tabanıyla windows phone application olacak. Karşımıza çıkan standart görüntünün aksine ilk incelediğim yer toolbox kısmı oldu. İhtiyacıma uygun araçları görmek oldukça sevindiriciydi. Bunların ise görsellik olarak standart windows kontrollerinden daha fazla tatmin edici olması işin sevindirici bir boyutu. Baktığınız zaman eski nesil cihazlarda windows formları ile benzerlik üst düzeydeydi. Hatta normal debug ettiğiniz bir uygulamanın penceresini windows üzerinden bile açabilmeniz için gerekli yöntemler mevcuttu. Düşündüğüm zaman WPF’i port etmeleri çok zorlu bir iş olurdu. Görsel olarak port edilebilecek bir uygulama olması açısında Silverlight’ın doğru bir seçim olduğuda düşünülebilir. Tabiki bildiğimiz anlamıyla başlı başına bir silverlight değil. Bir browser’a ihtiyacınız yok. Donanım tabanlı bir silverlight klonu karşınızda diyebilirim.

İlk işim açılan pencere ile beraber gelen gri tonlardan kurtulmak için çareler aramaktı. Baktığınız zaman ilk penceremizin gridlere ayrıldığını ve alttaki yapının contentgrid olduğunu gördüm. Rengi değiştirmek için background özelliğini kolayca buldum. Artık sıkıcı temel renklerden oluşan bir palet yoktu karşımda daha gelişmiş Red Green Blue değerlerini bile ayarlayabileceğim bir paletle karşılaştım.

 

Üstteki bölüm ise TitleGrid idi. Bundaki renkleride aynı metodla değiştirirken. TextBlocklarınıda ilk uygulamaya uygun bir isimle değiştirdim.

 

Hemen toolbox’umdan bir buton sürükledim. X ve Y koordinatından hizalama seçeneği mobil cihazda uygulama geliştirirken oldukça hoş bir özellik. Bu işlemleri yaparken Iphone’un eğlenceye yönelik piyasasınında sarsılacağı öngürüsünü oluşturmak zor değil. Profosyonel uygulamalarda ise Windows Mobile serisis zaten office uygulamaları ile tartışılmaz öncüydü.

 

Buton’a çift tıkladığımda klasik C# kod ekranım karşımdaydı. Kendimi tanıdık bir ekranda bulmak ise bu kadar görselliğin yanında oldukça büyük bir artı. Bu arada pencereme bir textbox’da sürükledim. Buton’un click event’ine her ilk yeni uygulamalarda olduğu gibi bir atama ile tamamladım.

 

NameSpace’lere bakmadan tabi olmaz. Yeni namespace’ler karşımda ve karıştırılacak çok şey olduğu gözükmekte.

Debug->Start without Debugging ile emülatörümü çalıştırmak üzere heyecanla tıkladım.

İlk uygulamamın ekran görüntüsü;

 

Gerçekten heyecan verici olduğu muhakkak. Fakat Windows mobile konusunda deneyiminiz varsa yeni platformda da zorluk çekeceğinizi zannetmiyorum. Kesinlikle eğlenceli zaman geçirerek adapte olabilirsiniz.