developing rich web applications with...
TRANSCRIPT
Developing Rich Web Applications with SilverlightMike Ormond
Developer & Platform Group
Microsoft Ltd
http://mikeo.co.uk
Introduction
Microsoft UX Technologies
ASP.NET ASP.NET AJAX Win Forms Silverlight WPF DirectX
Various criteria for comparison“Richness” of user experience
“Reach” of applications that are built
Depth of platform integration
Development 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
Platforms & Browsers (Mirosoft support)
IE 6.0+ FireFox 1.5+ Safari 2.0
Windows Vista, XP, 2003, 2000*
Mac OS X 10.4.8+
Novell Support (Moonlight)
Linux(various distros)
KonquerorFireFox Opera
Silverlight V1.0 and V1.1
SilverlightV1.1
SilverlightV1.0
V1.1 will add .NET to V1.0
CoreCLR
Independent subset of the .NET Framework
Installing Silverlight
Developing
Declarative Development - XAML
eXtensible Application Markup Language
XAML usageCompiled to produce executable code
Dynamically 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 Graphics
2D graphics
Primitives (ellipse, rectangle, path etc)
Composition engine
Transforms
Brushes
Text
Ink
Animation system
Media
Video
Audio
Core UI Capabilities
Silverlight Programming Model
• Silverlight 1.0 and 1.1
• Code against both HTML and XAML content
• Integrates with ASP.NET AJAX controls
JavaScript
• Silverlight 1.1 only
• CoreCLR + Silverlight .NET Framework subset
• VB and C# against both XAML and HTML content
.NET
Silverlight, Documents and DOMs
HTML DOM
<body><object
id=“ctrlSilverlight" type="application/ag-plugin">
<paramvalue="Scene.xaml" name="source"/>
</object>
</body>
XAML DOM
<Canvas><Rectangle />
</Canvas>
Scene.xaml
Silverlight “Hello World”
Silverlight Architecture
Legend
V1.1
Legend
V1.0
CLR Execution Engine
.NET f
or
Silverl
igh
t
Framework
HTML DOM
Integration
XAML
Pre
sen
tati
on
Co
reNetworking
JSON
REST POX
RSS
Data
LINQ XLINQ
DLR
Ruby Python
UI Framework
Extensible Controls
BCL
Generics Collections
Inputs
Keyboard Mouse Ink
Media
VC1 WMA MP3
Browser Host
Integrated
Networking
Stack
Installer
Application
Services
MS AJAX
Library
UI Core
Images
Vector Text
Animation
DRM
Media
Controls
Layout Editing
Common Programming Scenarios
Working with Storyboards
Using the Downloader class
Running in full screen mode
Calling backend services
Switching XAML pages
Dynamically 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.