250 likes | 360 Views
Introduction to Silverlight. About Alan Cobb. Independent consultant since mid-80s on Microsoft platforms C#, WinForms, WPF, .NET One of directors of the SacDotNet U.G. http://www.alancobb.com. Presentation Overview. What is Silverlight?
E N D
About Alan Cobb • Independent consultant since mid-80s on Microsoft platforms • C#, WinForms, WPF, .NET • One of directors of the SacDotNet U.G. • http://www.alancobb.com
Presentation Overview • What is Silverlight? • How does it relate to other client-side technologies? • How important is it? Silverlight app development walk-through
What is Silverlight? • One word definition: Flash • Browser plug-in: cross-browser, cross-platform • Use case today: Animated ads, Video • Use case tomorrow: Applications (Flex) • Benefits: Adds functionality + write-once-run-everywhere • Why Silverlight not Flash? • More words: Flash + .NET • More words: WPF-subset + .NET-subset
This is a big deal • Once-every-20-years event • Existing client-side web technology has reached the peak of its life-cycle • Fresh start of a new client GUI technology • Web is where the action is • The network is the computer
Comparing client platforms Desktop: Web: Win16 Win32WinForms HTML / CSS / JavaScript / AJAX WPF Silverlight Flash / Flex
Competing technologies • Desktop based “smart clients” • WPF on high end • 3D, Hardware acceleration • WinForms: (Mature, proven) • Web-based: • ASP.NET - HTML + CSS • ASP.NET - HTML + CSS + AJAX • Adobe Flash / Flex • Desktop-web hybrid (?): • Adobe AIR
WPF / Silverlight – Positives: • Vector based vs. pixel based • Scalable – Looks good at multiple resolutions • XAML – Similar to HTML • Declarative • Designers and programmers work in parallel • Rich customization is possible in a well-designed way
WPF - Negatives • Windows only • Requires 50 / 200 MB .NET 3.x runtime • Steep learning curve
Versions of Silverlight • 1.0 • RTM in Sept. 2007 • Code behind – JavaScript only • 1.1 / 2.0 • Alpha introduced in Spring 2007. • Beta at MIX08 in March 2008. • RTM maybe Q3-2008. • Code behind - .NET languages C#, etc. • Partial .NET class library
Silverlight - Positives • Lightweight at 4-6 MB, quick download • .NET based • Write in C# or VB.NET • Use familiar class libraries • Rich state-of-the-art GUI • Vector based • All types of content handled uniformly • Secure - sandboxed
Silverlight - Negatives • Not quite here yet • “Pig in a poke” • Sandboxing limits functionality • Conflicting products within Microsoft?
Silverlight 2.0 Features: • Won’t know details until March 2008 Controls: Data: Communications:
Silverlight 2.0 Features: • Controls: • Extensible control base classes • Common controls: • Textbox, Checkbox, Radiobutton, etc • TabControl, Slider, ScrollViewer, ProgressBar, etc • Layout controls: • Grid, StackPanel • Data controls: • DataGrid, etc
Silverlight 2.0 Features: • Data: • 2-way data binding • More LINQ support: LINQ to XML
Silverlight 2.0 Features: • Communications: • REST, POX, RSS, and WS-* communication • Cross domain network access • Sockets
Feature Unknowns (?) • Local client integration? • Read and write local files? • Read local mic and webcam? • WCF? • Depth of class libraries? • Pay-for-play
Silverlight Tools • Expression Blend: • GUI builder • Graphic designers • Visual Studio 2008: • Includes a more limited GUI builder • Programmers