Kısaca RIA nedir?
Rich Internet Applications yani Zengin İnternet Uygulamaları deyiminin kısa yazımı olan RIA son zamanlarda geliştiriciler tarafından oldukça sık duyurulan bir terimdir. RIA, genel olarak internet uygulamalarının daha zengin bir arayüz ile sunulmasını sağlayan uygulamalar olarak adlandırılır. Günümüzde bir çok RIA uygulama geliştirme ortamı mevcuttur. Bunlardan en bilineni eskiden Macromedia'nın şimdi ise Adobe firmasının Flash merkezli uygulamalarıdır. Günümüze kadar RIA daha çok interaktif web uygulamalarında sıkça ihtiyaç duyulan bir araç olmuştur. Çok kısa bir süre sonra RIA tabanlı web uygulamalarının hemen hemen bütün web uygulamalarının bir ihtiyacı olacağı uzmanlarca belirtilmektedir. RIA uygulamaları günümüzdeki standart HTML web uygulamaları ile standart masaüstü uygulamaları arasındaki boşluğu dolduran bir geliştirme konseptidir. Web arayüzünde basit HTML ile sınırlı kalmadan masaüstündeki zengin görsel öğeleri programatik olarak kullanabileceğiniz her tür araç RIA konseptini uygulamaktadır. Java Applet, Adobe Flash ve Microsoft Silverlight uygulamaları en bilinen RIA uygulamalarıdır.
Kısaca Silverlight 4.0?
"Light up the web!" sloganıyla yola çıkan Silverlight, Microsoft'un yeni nesil RIA geliştirme aracı olarak duyuruldu. Temelde .NET platformu üzerine inşa edilen Silverlight çalışma zamanı bileşenleri istemci bilgisayarında çalışması için .NET Framework'e ihtiyaç duymaz. Ancak Silverlight uygulamalarının çalışabilmesi için yaklaşık 4 MB büyüklüğündeki bir plug-in'in istemci bilgisayarlara kurulması gerekir. Silverlight bileşenleri web tarayıcısı üzerinde çalıştığı için bu bileşenlerin çalışması için kullanıcıların ayrıca programları bilgisayarlarına manuel olarak yüklemelerine gerek yoktur. Silverlight uygulaması geliştirmek için ayrıca bir yazılım geliştirme platformunu öğrenmenize gerek yoktur. Aşina olduğunuz .NET platformunda ister C# ile isterseniz VB.NET ile rahatlıkla uygulama geliştirebilirsiniz.
Silverlight 4 .0 programına kimler katılmalıdır?
Silverlight programına asp.net ile uygulama geliştirenler, .Net platformunda masaüstü uygulamalar geliştirenler, teknolojiyi yakından takip etmek isteyenler katılmalıdır. Silverlight programı, programlama bakışı açısıyla anlatılmakta olup temel programlama becerilerinin olması beklenmektedir. Hiç bir programlama tecrübesi olmayan kişiler bu programa katılmamalıdır.
Silverlight 4 .0 programının ön koşulu var mıdır?
Bu programa herhangi bir platformda web uygulaması geliştirebilme beceresi olan programcılar katılabilir. .NET platformunda (C#, VB.NET)web uygulama geliştirme beceresi olan kişilerin katılması tavsiye edilmektedir.
Silverlight 4 .0 Programının İçeriği
Bölüm 1 : Silverlight'a Giriş
- Neden Silverlight?
- Silverlight 4.0 nedir?
- Silverlight'ın kullanım alanları
- "Merhaba Dünya" örneği
- Silverlight' nesnelerinin host edilmesi
- Silverlight altyapısı ve mimarisi
- Silverlight ve .NET platformu ilişkisi
- Programlama ve tasarım ilişkisi
Bölüm 2 : Silverlight ve XAML İlişkisi
- Layout kavramları (StackPanel,Canvas, Grid, Border vs)
- XAML ile temel çizim nesneler (Shape, Brush, Text)
- XAML ile medya işleme (Image, Movie )
- Cursor ve Font'lar
- Resource kavramı
- Style kavramları
- Trasnformasyonlar
- XAML ile animasyon işlemleri
Bölüm 3 : XAML ile Tasarım Araçlarının Kullanımı
- Expression Studio ve ürün ailesi
- Expression Blend kullanımına giriş
- Blend ile uygulama yapmak
- Blend ile gruplama yapma ve grid kullanımı
- Blend ile User Control kullanımı
- Clip Region kavramı
- Clipart kullanımı
- Şablon (Template) ve Kaynaklar (Resource)
- XAML ile kompozit kontroller
Bölüm 4 : Silverlight Geliştirme Modeli
- Silverlight 3 nesnelerinin host edilmesi
- Object etkiketi ve Silverlight.js dosyası
- ASP.NET Silverlight bileşeni ile entegrasyon
- Silverlight uygulama mimarisine detaylı bakış
- Silverlight BCL (Base Class Library) nedir?
- Silverlight BCL ne içerir ne içermez?
- XAML Event modeli ve programlama dilleri
- Temel olaylar : Tab Order, Focus, Klavye olayları
Bölüm 5 : Silverlight Kontrolleri ve Data Binding
- Silverlight kontrol modeli
- Temel kontroller (textbox, watermark, calendar, datepicker,slider vs)
- İçerik kontrolleri (button, checkbox,radio,popup,ScrollViewer)
- Gelişmiş kontroller (ItemsControl, DataGrid, ListBox vs)
- Navigasyon ve ayıraç(aplitter) kontrolleri
- Kontrollerde style kullanımı
- Kontrollerde resource kullanımı
- Veri Kontrollerine Giriş
- Binding kuralları
- DataContext yapısı, List Binding, Data Template
- Master / Detail Data Bind
- Convert nesnelerinin kullanımı
Bölüm 6 : Silverlight Programlama Yetenekleri
- Dinamik XAML kullanımı
- Medya elemanlarının kullanımı ( loaded media, streaming, marker, event)
- Storyboard kullanımı
- Application olayları (Startup, Shutdown)
- Silverlight hata yönetimi (exception handling)
- Storyboard kullanımı
- XAP Kaynaklarının kullanımı
- Downloader (isteğe bağlı yada toplu download)
- Silverlight ile Multi-Threading (Dispatcher, Backgrounder, Asenkron Çalışma)
- Isolated Storage kavramı
- İstemcide data erişim yapıları
- Linq ve Linq to Xml kullanımı
- XmlReader ve Document desteği
Bölüm 7 : Gelişmiş Kontrol Yapıları
- Kontroller üzerinde değişiklik yapmak
- Composite kontroller
- Control template (template part, template state)
- Kontrol geliştirme mimarisi
- User Control kavramı (model, dependency property)
Bölüm 8 : Silverlight ve ASP.NET İşbirliği
- IIS ile Silverlight İlişkisi
- Silverlight ve HTML erişimi
- CSS Erişimi
- Silverlight nesnesinden Javascript erişimi
- Silverlight optimizasyonu (display, size)
- Silverlight uygulamalarında hata ayıklama (debug)
- Sunucu taraflı XAML oluşturma
- HttpHandler yada User Control ile XAML oluşturma
Bölüm 9 : Sunucu ile İletişim
- ASMX servislerinin kullanımı
- Proxy yaratmak ve kullanmak
- WCF servislerinin kullanımı
- Astoria servislerinin kullanımı
- Silverlight güvenliği
- TCP soketlerinin kullanımı
- Nesne serileştirme ve veri tipleri (json)
Bölüm 10 : Silverlight 4.0 Yenilikleri
- Data Binding ve Style değişiklikleri
- Yeni gelen kontrolller (WrapPanel, DockPanel,ViewBox, Treeview vs)
- Assembly Caching özellikleri
- Offline SL uygulamaları
- Yeni medya özellikleri (Deep zoom iyileştirmeleri, Efektler vs)
- Networking yenilikleri (lokal bağlantılar vs)