May 28, 2022 | 1 Silverlight 101
May 24, 2015
April 12, 2023 | 1
Silverlight 101
April 12, 2023 | 2
Goals
:Introduce Silverlight (Part 1): Background
: Technology
:Provide knowledge bridge to Flex/Flash technologies (Part 1 & 2)
:Demos (Part 2)
April 12, 2023 | 3
Silverlight
From Microsoft:
A cross-browser, cross-platform, and cross-device plug-in for delivering the next generation of .NET based media experiences and rich interactive applications for the Web.
April 12, 2023 | 4
Silverlight 1.0
: Provide competition to Flash
:Replace media players in current web pages
:Deliver simple animation advertising for websites
:RTW September 2007
:1.37MB Download
:Declarative UI (XAML)
:Controlled via Javascript
April 12, 2023 | 5
Silverlight 2.0
: Same name but much different than 1.0
: Supports all v1.0 Features
: Currently Beta 2 with Go Live license
: Expected RTW October 2008
: ~4MB Download
: Includes cross-platform, thinned-down version of .Net platform
: Controlled via : Compiled .Net language (C#, VB)
: Dynamic Languages (IronPython, IronRuby)
: Interpreted Javascript
April 12, 2023 | 6
Cross-Platform Support
:Windows Server 2003, Vista, XP, 2000
:Mac OS X 10.4.8 and newer for both Power-PC and Intel-based hardware
:Linux via open source Moonlight project
:All major browsers on these platforms
:Silverlight for Mobile due Q4 2008: Silverlight 1.0 features
: Windows Mobile and Nokia S60
April 12, 2023 | 7
Plug-In Distribution
April 12, 2023 | 8
Visual Studio 2008
April 12, 2023 | 9
Expression Blend
April 12, 2023 | 10
Silverlight Applications
:Served by any web server (including Apache on Linux)
:Require a host page
:Each plug-in instance points to a url that returns XAML and optional code
:XAML document can link to .Net managed code OR use Javascript
April 12, 2023 | 11
Security
: Managed through attributes (metadata) placed on code
: Application code (Transparent) vs Platform Code (SafeCritical, Critical)
: Only code signed with MSFT key and downloaded from a MSFT secure server can expose SafeCritical or Critical entry points
: Silverlight app code can only reference other “Silverlight class libraries”
: Cross-domain network security handled through policy file on remote server
April 12, 2023 | 12
Accessibility
:Supports Microsoft’s UI Automation (UIA) Framework: Enables screen readers and other assistive tools to interact with Silverlight components
:Supports high-contrast scenarios
:These features enable section 508 compliant applications
:UIA support also enables automated UI testing of applications
April 12, 2023 | 13
SEO & Analytics
:SEO: Silverlight has same problems as other RIA’s in how do you determine “what” data to expose.
: Currently content is exposed through text-based XAML
: Still requires search engines to index the linked XAML
:Analytics: Enabled through Javascript calls to analytics vendors.
April 12, 2023 | 14
Localization
:Uses standard .Net resource files for development
:Packages resources for desired locales into the application package (xaml, code-behind, resources)
April 12, 2023 | 15
Silverlight Future Investments
:Content Distribution:Video, Audio, IPTV
:Advertising
:MSFT really wants in your living room
:LOB Scenarios
:Designer Mindshare Scenarios
April 12, 2023 | 16
Competitors
:Adobe Flex/Flash
:DHTML + AJAX: Improved Javascript Engines (Google Chrome)
:JavaFX
April 12, 2023 | 17
Factors Leading to Viability
:Player Penetration
:Development Costs
:Designer Tooling
:Client Demand
:Time
April 12, 2023 | 18
Why do we care about Silverlight?
:Because our clients care
:Because we are a solutions/services company, not a platform/product company
:Because there are lots of .Net developers
April 12, 2023 | 19
Resources
: www.silverlight.net (development community)
: www.microsoft.com/silverlight (marketing site)
: http://msdn.microsoft.com/en-us/silverlight/default.aspx (development reference)
: http://weblogs.asp.net/scottgu/default.aspx (MSFT GM Blog)
: http://channel9.msdn.com/tags/Silverlight (developer video site)
: More detailed development scenarios will be covered in upcoming Microsoft Practice Group meetings.
April 12, 2023 | 20
Silverlight 101 Part 2
:Part 2 (Andy Roth): Silverlight for Flash/Flex developers
: Designer – Developer Workflow
: Demos
April 12, 2023 | 21
Silverlight for Flash and Flex Developers
Concerns:
•New set of tools (Expression and Visual Studio)
•New languages (XAML and C#)
•Designer / Developer Workflow
•Simplicity of common tasks
•Animation
•Skinning / Themes
•Custom & built in controls
April 12, 2023 | 22
Silverlight tools
Expression Blend
• Basic vector drawing tools
• Layout controls (Canvas, Stackpanel, Grid)
• User controls (Button, List, Textbox, Scrollbar)
• Detailed properties panel for editing layout, transformation, colors, and other component properties.
• Storyboard component for animations
• Animate any property of controls over a timeline
Similar to Flex’s design view, with Flash’s drawing and animation tools
April 12, 2023 | 23
Silverlight Tools
Visual Studio 2008
•Mature development environment
• Familiar to .NET devs
Languages
• XAML – Markup similar to MXML
• C# - Written in code-behind for each XAML component
Very easy separation of markup and logic
April 12, 2023 | 24
Designer / Developer Workflow
• Expression saves and edits as XAML similar to Thermo
• Switch between Expression and Visual Studio easily
•Unlikely designers will embrace it – Windows only
• Expression Design can import Illustrator and export XAML
• Component skinning using states and transitions between states
• Component styling with XAML resources, not CSS
April 12, 2023 | 25
Overall Impressions
•Pros• Easy to create simple applications
• Languages and tools have small learning curve
• Powerful .NET framework
•Well integrated tools
•Cons• Not enough designer focus
• Young platform – not many 3rd party components & libraries
April 12, 2023 | 26
Resources
• http://www.shinedraw.com/ - Flash and Silverlight comparison examples
• http://www.projectrosetta.com/ - Silverlight resources for Flash devs
• http://www.realsoftwaredevelopment.com/top-10-silverlight-real-world-implementations/ - 10 larger implementations (mostly video)
• http://weblogs.asp.net/scottgu/archive/2008/06/06/silverlight-2-beta2-released.aspx - Beta 2 improvements
April 12, 2023 | 27
THANK YOU