100 likes | 244 Views
Open Source Rich Internet Applications with Silverlight & Moonlight. Joseph Hill Product Manager, Novell. What is Silverlight?. Web Browser plugin delivering: Rich Media Experiences Rich Internet Applications Cross-browser, Cross-platform. www.silverlight.net. Enter Moonlight. Mono
E N D
Open Source Rich Internet Applications with Silverlight & Moonlight • Joseph Hill • Product Manager, Novell
What is Silverlight? • Web Browser plugin delivering: • Rich Media Experiences • Rich Internet Applications • Cross-browser, Cross-platform www.silverlight.net
Enter Moonlight • Mono • Open Source, Cross-Platform .NET implementation • Runs Windows.Forms and Gtk# Desktop Apps, as well as ASP.NET • Timeline • WPF/E – '06 through March '07 • Renamed Silverlight 1.0 on eve of Mix 07 • Silverlight 1.1 – Announced Mix 07 - March • Embeds .NET runtime • Moonlight 1.1 – ReMix Paris - September 07 • first public demos (Silverlight Airlines and Chess) go-mono.com/moonlight
Media Support • Media Support • Video Support up to HD resolutions: WMV V7, V8, V9, VC-1 • Audio: WMA V7, V8, V9 (standard), MP3 • Support HTTP Progressive Download
XAML • Similar to SVG • Covered by Open Specification Promise • Basis for other rendering technologies, such as WPF and XPS • Can define both graphics and animation (StoryBoards) • <Canvas • xmlns="http://schemas.microsoft.com/client/2007" • xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" • Width="455" Height="349"> • <TextBlockText="Hello World"/> • </Canvas>
Scripting with JavaScript • DOM-Addressable • findname • equivalent to document.getElementById() • Elements can be controlled via properties and methods • Supports tree walking via children collection • property accessors • getvalue('key') • setvalue('key', value) • positioning • Canvas.Top and Canvas.Left • Width and Height
Page.html • ... • <scripttype="text/javascript" src="Silverlight.js"></script> • <scripttype="text/javascript" src="CreateSilverlight.js"></script> • ... • <divstyle="position:absolute; left:100px; top:100px;" id="SilverlightControlHost"> • <scripttype="text/javascript"> • createSilverlight(); • </script> • </div> • ...
Silverlight 2.0 • Embeds Common Language Runtime (.NET) • C#, VB, Boo, F#, etc • Silverlight Class Libraries • Subset of .NET Base Class Libraries with extra Silverlight Functionality • Silverlight Control Toolkit • TextBoxes, Buttons, DropDownLists, Calendars, DataGrids, etc • MS-PL License • Dynamic Language Runtime • IronPython, IronRuby, Jscript.NET, VBScript, etc
XAP File Format • .xap = Modified .zip file • XAML • Compiled Assemblies • Embedded Resources • chiron.exe • Included in Silverlight Dynamic Language SDK • Runs on Mono • mxap • Performs C# compilation • Will be included in Mono
Leaving the Browser • Desklets • Gtk# Integration