Successfully reported this slideshow.

Exploring Moonlight: Novell's Implementation of Silverlight on Linux

781 views

Published on

Come experience .NET on Linux. Learn how to develop and deploy Microsoft Silverlight and cross platform server applications using Moonlight

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Exploring Moonlight: Novell's Implementation of Silverlight on Linux

  1. 1. Moonlight: Silverlight on Linux. Miguel de Icaza miguel@novell.com
  2. 2. Getting here.
  3. 3. Ximian: early history Ximian: Linux Desktop Startup founded in 1999  “fill the gaps” Develop missing pieces (and applications).
  4. 4. Mono Project Mono: .NET on Unix.  Open Source implementation. Better Developer Tools for Linux developers. Allow Windows developers to port to Linux:  Bring expertise. No need to learn new languages/APIs. No need to rewrite in Java/C++.
  5. 5. Silverlight, in 3 bullet points. WPF/E at PDC  Cute. WPF/E at Mix 06  Still cute. Silverlight 1.1 at Mix 07  Awesome, and in our domain.
  6. 6. Mix 07. Interest at Mix 07  Journalist quote. Marc Jalabert's “Can you demo it in 3 weeks?”  Start work on May 31st. Remix 07 in Paris, France, June 21st. Microsoft/Novell interoperability framework. 
  7. 7. Microsoft Opening Up. Open source efforts inside the company.  DLR, IronPython, IronRuby and many more. Opening up formats, protocols.  Open Specification Promise (OOXML, WS-*) Scott Guthrie, web guy in charge of .NET.  Bob Muglia's interop initiative with Novell.  Sam Ramji's group. 
  8. 8. Microsoft/Novell agreement. Microsoft to provide:  Media Pack for all Moonlight users on Linux. Regression test suites. Complete specifications for implementation. Novell to:  Deliver a 100% compatible Moonlight. Support it on all major Linux distributions/platforms.
  9. 9. Moonlight
  10. 10. Moonlight Today
  11. 11. Moonlight Roadmap. Previews available now:  http://www.go-mono.com/moonlight No media yet. Moonlight 1.0:  Available in June Moonlight 2.0:  Previews by the end of the summer. Final release shortly after MS Silverlight 2
  12. 12. mopen command tool. mopen launches xaml files from the desktop  Applications can be contained in directories Pure XAML or XAML + managed code. Similar to MacOS X “open” Desklets: window-less XAML applications.  Similar to Widgets, Gadgets.
  13. 13. Original Moonlight Core
  14. 14. Moonlight with MS Media Pack
  15. 15. Moonlight Directions Today Complete/ship 1.0  Integration of MediaPack. Complete our media pipeline. Improve performance (complex scenes, drivers) Parallel work on 2.0:  VM changes developed in parallel.
  16. 16. Silverlight Class Libraries. Core Libraries: Subset of 3.5 .NET Libraries.  Most are a straight subset. A few one have different class hierarchies. Silverlight APIs:  Draw inspiration from WPF. Almost no code reuse possible. DLR and DLR-based code is open source.  Reuse existing Silverlight 2 controls. 
  17. 17. 2.1 class libraries 2.0 2.1 mscorlib mscorlib Add new code from2.1 2.0 Mono Linker mscorlib
  18. 18. Moonlight: APIs today Moonlight 1.0 Moonlight 2.0   Tracks SL 1.0 Track upcoming 2.0 No Mono. Lots of changes  Testing new pipeline Only started on 3.5  Moonlight 1.1 LINQ  Implements SL 1.1 Others Few missing features Missing new work.  Development frozen
  19. 19. Moonlight SDK Tools to develop Silverlight apps on Unix.  Compiler (smcs) Class libraries. On Linux, MacOS X, Solaris IDE  Early Prototype of Silverlight designer written. Bringing our MonoDevelop IDE to MacOS X.
  20. 20. Wishes. Work with other browser vendors:  Opera, WebKit and Konqueror Support BSD and custom Linux variants:  Ship the binary codecs for those systems. Use Moonlight on OSX for designer. 
  21. 21. Mono
  22. 22. Mono. Our implementation of the CLR:  VM, JIT, AppDomains, GC, Remoting, etc. A re-implementation of the class libraries  Reflection, XML, etc ASP.NET, Web Services, ADO.NET Compilers for most .NET languages  C# 3.0, VB.NET  Third party compilers 
  23. 23. Overall Progress. 2.0 mostly complete:  Core, ASP.NET and ADO.NET are done Windows.Forms the only piece on hold. 3.5 the actual heir to 2.0:  C# 3, LINQ, XLINQ mostly done Have not started on DLINQ 3.0 add-on:  Only WCF in progress, no WPF at this point.
  24. 24. Microsoft's Open Source Code. Reuse Microsoft-produced code:  ASP.NET AJAX  Client side libraries. ASP.NET AJAX Control Toolkit. Dynamic Language Runtime  IronPython, IronRuby.
  25. 25. Visual Studio Deployment Mono is binary compatible with .Net  Same .DLL and .EXE file formats. Implements the same APIs. Winforms or ASP.NET apps  Demo
  26. 26. Mono Migration Analysis Demo

×