Windows Presentation Foundation'a Giriş

Bahadır ARSLAN tarafından yazıldı

      Windows Presentation Foundation (Avalon) 'ın son sürümü 2006'nın sonbaharında .Net Framework 3.0 ile birlikte duyuruldu ve Ocak 2007'nin sonunda Vista'nın piyasaya çıkması ile beraber son kullanıcıların karşısına çıktı.

       Vista'nın en büyük özelliklerinden görsel yenilikler son kullanıcıların hepsini hayran bıraktı. 3 boyutlu görünen ekranlar, yumuşak ve göz yormayan grafikler ve şeffaf ekranlar; bunların hepsi bugün Vista kullanan kullanıcıların bilgisayarlarında mecvut. Bilgisayarı sadece hobi olarak kullanmayan ve işin arka tarafını merak eden birçok kullanıcı ise bu görsel zenginliğin altında yatan teknolojiyi merak etmeye başladı yani .Net Framework 3.0 ve onun bir parçası olan Windows Presentation Foundation'ı.

       WPF, yazılım geliştiren kişilere standart 2B tasarımların dışına çıkma ve kalıplarından sıyrılma imkanı veren, etkin ve etkileşimli kullanıcı arayüzleri tasarlama imkanı veren bir teknolojidir.

       Microsoft'u bu kadar büyük teknoloji geliştirmeye iten sebep ise son kullanıcıların, programın arka tarafında ne iş yapıldığından çok, görsel arayüzün zenginliğini ve programla olan etkileşimini önemsemesidir.


WPF ile zengin görselliğe sahip kullanıcı arayüzleri tasarlanabilir

         WPF Neler Getiriyor?
       
Windows Forms PDF Windows Forms/
GDI+
Windows Media Player Direct3D WPF
Grafik arayüz... Formlar ve kontroller X         X
Ekran dökümanları X         X
Sabit biçimlendirilmiş dökümanlar   X       X
Resimler     X     X
Video ve ses       X   X
İki boyutlu grafikler     X     X
Üç boyutlu grafikler         X X

        Yukarıdaki tablodan da görülebileceği üzere WPF, birçok uygulamaya dağılmış olan özellikleri tek elde toplayabilme kabiliyetine sahiptir. Böylece üç boyutlu grafiklere sahip, grafik arayüzü olan ve video ve ses oynatacak olan bir program yazmak için birden fazla teknoloji kullanmak yerine WPF ile daha kolay birşekilde yapabilir hale geliyoruz.
 
        Ancak şu noktanında altını çizmekte de fayda var, WPF tüm bu teknolojilerin yerine geçecek yeni bir teknoloji değil, sadece bu teknolojiler ile birlikte çalışarak eksiklerini kapatacak bir teknolojidir. Yani WPF ile uygulama geliştirirken hala Windows Forms'a ihtiyaç duyacağımız zamanlar olacaktır.
 
        WPF'in sağladığı en büyük yenilik ise oluşturulan arayüzlerin hem web tarayıcıları ile hem de Windows programlarında kullanılabilmesidir. Böylece geliştirilen arayüz herhangi bir değişikliğe gerek kalmadan, aynı güç ile hem Windows programlarında hem de web ortamında kullanılabilir. Bu güçlü özelliğin arkasında yatan ise XAML (okunuşu zammel)'dir. XAML, eXtensible Application Markup Language, XML kurallarına göre yazulan ve .Net Framework 3.0 tarafından otomatik olarak algılanıp C# kodlarına döndürülen ve bu sayede bize ortam bağımsızlığı sağlayan bir dildir.

        Aşağıda geliştirilen bir arayüzün Windows ortamındaki görüntüsü görülmektedir.

 

                 Aşağıda ise aynı arayüzün Internet Explorer'daki görüntüsü görülmektedir.


WPF ile zengin görselliğe sahip kullanıcı arayüzleri tasarlanabilir


       WPF'i Kullanmaya Başlamak
      
WPF .Net Framework 3.0 ile gelen bir özellik olduğu için öncelikle bazı program ve eklentileri yüklemek gerekmektedir.

1) .Net Framework 3.0
.Net Framework 3.0 Vista yüklü makinelerde hazır olarak bulunmasına karşın, Windows XP yüklü ve Windows Server 2003 yüklü makinelere yüklenmesi gerekir.

2) Visual Studio 2005 için .Net Framework 3.0 Eklentisi
Visual Studio 2005 ile WPF uygulamaları geliştirebilmek için bu eklenti yüklenmelidir. Eklenti yüklendikten sonra Visual Studio 2005, XAML desteğine sahip olacağı gibi yeni uygulamalar için uygun şablonlara da sahip olacaktır.

3) Windows SDK
Windows SDK, yaklaşık 1 GB büyüklüğünde bir paket olup hem dökümantasyon hem de WPF uygulamaları geliştirebilmek için XamlPAD gibi  araçlarıda içermektedir.

      WPF Kaynakları

       
Yeni bir teknoloji olan WPF i öğrenmek için aşağıdaki kaynakları takip etmenizi önerim.

     WPF bundan sonra adını sık sık duyacağımı yeni nesil uygulama arayüzü geliştirme teknolojisidir. Eğer arayüzü tasarımları ile ilgileniyorsanız, yeni teknolojilere meraklıysanız WPF'i şiddetle öneririm.



MaxiASP.Net - Gelecek Çok .Net - www.maxiasp.net