Developing Rich Web Applications with SilverlightMike OrmondDeveloper & Platform GroupMicrosoft [email protected]://mikeo.co.uk
Introduction
Microsoft UX Technologies
Various criteria for comparison“Richness” of user experience“Reach” of applications that are builtDepth of platform integrationDevelopment experience
– Developer & non-developer tooling, programming model, 3rd party controls, etc.
Status & maturity of technology
Microsoft Silverlight is a cross-browser, cross-platform implementation of .NET for building and delivering the next generation of media experiences & rich interactive applications for the Web.
A richer web with Silverlight
Timeline & Packaging
TimelineV1.0 Released September 2007, V1.1 in Alpha (timing and some functionality TBD)Moonlight – timing TBD (Novell)
PackagingBrowser plug-in, little dependency on other s/w
Silverlight V1.0 and V1.1
SilverlightV1.1
SilverlightV1.0
V1.1 will add .NET to V1.0CoreCLRIndependent subset of the .NET Framework
Installing Silverlight
Developing
Declarative Development - XAML
eXtensible Application Markup Language
XAML usageCompiled to produce executable codeDynamically loaded (parsed or pre-parsed)
Calculator c = new Calculator();Multiply m = new Multiply();m.P1 = 10;m.P2 = 20;c.Operations.Add(m)
Code
<Calculator> <Operations> <Multiply P1=“10” P2=“20”/></Operations></Calculator>
XAML
Core UI Capabilities
Vector Based Graphics2D graphicsPrimitives (ellipse, rectangle, path etc)Composition engineTransformsBrushesTextInk
Animation systemMedia
VideoAudio
Core UI Capabilities
Silverlight Programming Model
Silverlight, Documents and DOMs
Silverlight “Hello World”
Silverlight Architecture
Common Programming Scenarios
Working with StoryboardsUsing the Downloader classRunning in full screen modeCalling backend servicesSwitching XAML pagesDynamically creating content
Common Programming Scenarios
© 2007 Microsoft Ltd. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the
date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.