Cobb_Alan_IntroductionToSilverlight_CD v09 SD West 2008 2008 Mar 07
Document Sample


Introduction to Silverlight
Alan Cobb
Independent .NET Consultant
Alan Cobb & Associates, Inc.
Sacramento, CA
alan -at- alancobb -dot- com
Friday, March 7, 2008
10:15 am – 11:45 am
About Alan Cobb
• Independent consultant since mid-
80s on Microsoft platforms
• .NET, C#, C++, WinForms, WPF
• One of directors of the SacDotNet
User Group
• http://www.alancobb.com
Presentation Overview
• What is Silverlight?
– How does it relate to other client-side
technologies? How important is it?
• What can it do?
– Feature details and demos
• Silverlight app development walk-
walkthrough.
– Expression Blend. Visual Studio 2008.
What is Silverlight?
• Like Flash:
– Browser plug-in: cross-browser, cross-
platform
– Animated ads, video, applications (like Flex)
– Benefits:
• Write-once-run-everywhere,
• Adds functionality not in HTML / AJAX
Versions of Silverlight
• v 1.0
– RTM in Sept. 2007
– Code behind – JavaScript only
• v 1.1 / 2
– .NET based
– SL 1.1 Alpha introduced in Spring 2007.
– SL 2 Beta 1 released at MIX08 in March 2008
– RTM maybe Q3-2008? For Olympics?
– Code behind - .NET languages C#, etc.
– Partial .NET class library
SL for Mobile: Schedule
SL for Mobile: Weatherbug Demo
Inside Silverlight 2
Silverlight 2:
GUI “eye-candy”:
XAML, Layout, Styling, Animation
.NET “plumbing”:
CLR, Base Class Libraries
Comparing client platforms
Desktop: Web:
WPF Silverlight Flash /
Flex
WinForms HTML / CSS /
Win32 JavaScript / AJAX
Win16
Competing technologies
• Web-based:
– Adobe Flash / Flex
– “Ajax”: HTML + CSS + JavaScript
• Desktop based “smart clients”
– WPF on high end
• 3D, Hardware acceleration
– WinForms: (Mature, proven)
• Desktop-web hybrid (?):
– Adobe AIR
Silverlight and WPF: Differences
• WPF:
– Windows only
– Requires 50 / 200 MB .NET 3.x runtime
– Steeper learning curve
• Silverlight:
– Cross OS, cross browser
– Small download (approx. 4 to 5 MB)
– Reduced feature set
– Sandboxed – Secure but limiting
How important is Silverlight?
• 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
What Can Silverlight Do?
Feature Details
SL2 Feature Summary:
• GUI system features:
– XAML, etc.
• Controls:
– What controls come “in the box”?
• Data:
– Features related to database-type apps
• Communications:
– Web services
GUI System Features
• WPF subset
• Vector based vs. pixel based
– Scalable – Looks good at multiple resolutions
• Dynamic layouts
• XAML – Similar to HTML
– Declarative
– Designers and programmers work in parallel
• Rich customization is easier
– “Lookless” controls
– Styles and templating
Non-GUI Features
• More than just “eye-candy”
– OpenFileDialog
– Threads
– Direct cross-domain access rather than
proxied by your server.
SL2 Features: Controls
• Controls:
– Extensible control base classes
– Common controls:
• Textbox, Checkbox, Radiobutton, etc
• TabControl, Slider, ScrollViewer, ProgressBar, etc
– Layout controls:
• Grid, StackPanel
– Data controls:
• DataGrid, etc
SL2 Features: Control Source Code
SL2 Features: Data
• Data:
– 2-way data binding
– More LINQ support:
• LINQ to XML
• LINQ to Objects
SL2 Features: Communications
• Communications:
– REST, POX, RSS, and WS-* communication
– Cross domain network access (coming)
– Sockets (no cross-domain yet)
– WCF? (How much client side?)
SL2 Features: Other
• Isolated Storage:
– Secure
– Size? (100KB, expandable to X?)
• Security
– See Perry Birch’s talk from 1:30-3:00
Feature Unknowns (?)
• Local client integration?
– Read and write local files?
– Read local mic and webcam? (Not in Beta 1)
• Depth of class libraries?
– Pay-for-play
Resources
• Recorded videos:
– Sessions from MIX08, MIX07
• Forums:
– silverlight.net / forums
• Books:
– Adam Nathan’s WPF book
– Silverlight 2 books in the pipeline
Resource: MIX session videos
Features in Action:
Demos
Demos: Showcase
Demo: Deep Zoom
Demo: Home Shopping Network
Demo: Indian Fashion Show
Demo: SL1.1 Chess App
Demo: Silverlight Airlines
Demo: MS Download Center
Demo: 3rd Party Control Vendor
Other possible demos
• tafiti:
– Search front-end from MS in SL
• Popfly:
– Mashup builder from MS in SL
• Silverlight.net / Showcase:
• Seattle PI Reader (WPF currently):
– Shows possible future for SL (Rich text)
Silverlight
Development
Walk-through
Silverlight Tools
• Expression Blend:
– For graphic designers
– GUI builder
• Visual Studio 2008:
– For programmers
– Includes a more limited GUI builder
ScottGu – SL2 Intro Tutorials
ScottGu’s SL2 Digg Client
Get documents about "