Introduction to Silverlight
By Alan Cobb
2008-Jan-10
Sacramento, CA
www.alancobb.com
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:
Win16
Win32
WinForms
WPF
Web:
HTML / CSS /
JavaScript / AJAX
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
Demo – Yahoo Finance Charts *
Demo – Picnik.com Photo Editor *
Feature Details
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 welldesigned 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?
Demo: Silverlight Airlines *
Demo: MS Download Center *
Demo: 3rd Party Control Vendor *
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
Development
Walk-through
Silverlight Tools
Expression Blend:


GUI builder
Graphic designers
Visual Studio 2008:


Includes a more limited GUI builder
Programmers
Descargar

Introduction to Silverlight