Javascript Geliştiricileri İçin Xaml Ve Microsoft Silverlight
Wpf tabanlı (windows presentation foundation) browser eklentisi hakkında bir sunum
Nedir?
Genel Bakış
Uyumluluk
Moonlight
Lisans
XAML
Elementler
Animasyon
Scripting
Sonuç
Nedir?
Microsoft Silverlight, web (browser) uygulamaları için animasyon, vektör ve 3D grafik ve video oynatma imkanları sağlayan, WPF tabanlı (Windows Presentation Foundation) browser eklentisidir.
Adobe Flash, DHTML ve JavaFX ile rekabeti amaçlıyor.
Genel Bakış
Kod adı: WPF/E (Windows Presentation Foundation, Everywhere)
Silverlight, WPF türevi görsel programlama tekniğiyle multimedya,grafik,animasyon ve interaktif uygulamaların tek eklenti üzerinden yürütülmesini sağlıyor.
Görsel geliştirme dili XAML (Extensible Application Markup Language).
Silverlight, WPF türevi görsel programlama tekniğiyle multimedya,grafik,animasyon ve interaktif uygulamaların tek eklenti üzerinden yürütülmesini sağlıyor.
Silverlight ile oluşturulan içerik, Adobe Flash'in aksine derlenmiyor.
Vektör grafik ve animasyonların işaretleme dili biçiminde kodlanmasını sağlayan görsel geliştirme dili XAML, içerdiği belgedeki Javascript değerlerine ulaşıp çalıştırabilmesi sayesinde, XAML belgeleri DHTML/Ajax/Javascript içerikleri tarafından düzenlenip, programlanabiliyor.
Silverlight, WMV ile bazı VC-1 türü videoları ve WMA,MP3 formatlı ses içeriklerini desteklenen tüm tarayıcılarda oynatılmasını, çalıştığı sistemde Windows Media Player veya ActiveX eklentilerine ihtiyaç duymadan sağlıyor.
Uyumluluk
Silverlight, Windows 2000,Xp,2003 ve Vista, Mac OS 10.4.8+ Intel üzerinde Internet Explorer ve Mozilla tarayıcılarıyla çalıştırılıyor.Linux içinse yıl sonuna kadar tamamlanması planlanan Moonlight adlı proje yürütülüyor.Safari ve Opera tarayıcılarının da yakın gelecekte Silverlight’ı destekleyecekleri biliniyor.
Monolight
Linux için Miguel de Icaza ve ekibi tarafından geliştirilen yorumcu.
Açık kaynak.
Şu an kullanılan sürümü Silverlight 1.0 uygulamalarını destekliyor.
Aynı ekip Linux için “Lunar Eclipse” adında, Microsoft’un Expression Blend yazılımına alternatif bir XAML tasarımcısı geliştiriyor.
Resmi olmayan kaynaklar Silverlight yorumlayıcısının kaynağının açılacağını söylese de henüz açılmadı.
XAML için editör geliştirmek Microsoft’un tekeli altında değil.Adobe Flash uygulamalarının aksine, Silverlight uygulamaları geliştirmek için, Lunar Eclipse gibi pek çok farklı IDE geliştirilebilir.
Yorumlama işi browser’da yapıldığına göre, niçin browser tabanlı bir IDE yapılmasın?
Rainbow9 şimdiden web üzerinde XAML geliştirmeyi sağlıyor.
XAML
“Zamel” olarak okunur.
Açılımı: Extensible Application Markup Language
XUL,GladeXML gibi, XML tabanlı kullanıcı arayüzü oluşturma dillerinden biridir.
Silverlight arayüzü hazırlarken, bu dil ile elementler oluşturulur, biçimlendirilir , animasyonları yazılır ve olayları tanımlanır.
XAML oluşturmak için herhangi bir editör yeterli olduğu gibi, Microsoft’un bu iş için hazırladığı “Expression Blend” uygulamasıyla daha kolay çizim yapılabilir, animasyon oluşturulabilir.
XAML, henüz pek yeterli görünmese de 3D grafik oluşturmayı da sağlıyor.
XAML belgesi <Canvas> katmanıyla başlıyor.
Bu katmanın içinde yükseklik, genişlik, arkplan gibi özelliklerin belirlenmesinin yanısıra, HTML’deki DOCTYPE bloğuna benzer şekilde Microsoft’un şemaları referans gösteriliyor.
Animasyon
XAML diliyle animasyon yazmak, element biçimlendirmeye göre nispeten zor olacağından, Expression Blend’in araçları kullanılabilir.
Objects and Timeline panelinde yeni bir kayıt ekledikten sonra “record” ikonu belirir.Record açıkken gerçekleşen element değişiklikleri, zaman çizgisinde seçili hale getirdiğimiz yere dek kaydedilir.
Daha doğru ifadeyle, XAML elementleri için tanımlanan event değerleri, bir javascript fonksiyonunun adıymış gibi kabul ediliyor.
Sonuç
Derlenmeden çalışan görsel geliştirme dili XAML sayesinde Silverlight için pek çok IDE ve yorumcu geliştirilebilir, bu da teknolojinin diğer alternatiflerden daha hızlı gelişmesi anlamına geliyor.