Silverlight 2 coreclr
Download
1 / 38

Silverlight 2 CoreCLR - PowerPoint PPT Presentation


  • 108 Views
  • Uploaded on

Silverlight 2 CoreCLR. Bringing the power of .NET to the net. Andrew Pardoe, Common Language Runtime. Agenda. Programming with the Silverlight 2 .NET Framework is the right client-side solution for the web. Agenda.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Silverlight 2 CoreCLR' - deepak


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Silverlight 2 coreclr

Silverlight 2 CoreCLR

Bringing the power of .NET to the net

  • Andrew Pardoe, Common Language Runtime


Agenda
Agenda

  • Programming with the Silverlight 2 .NET Framework is the right client-side solution for the web


Agenda1
Agenda

  • Programming with the Silverlight 2 .NET Framework is the right client-side solution for the web

  • We did some really cool things to make .NET programming fit web scenarios


Agenda2
Agenda

  • Programming with the Silverlight 2 .NET Framework is the right client-side solution for the web

  • We did some really cool things to make .NET programming fit web scenarios

  • The web application model makes some unfamiliar .NET features shine




Silverlight is different
Silverlight is different

  • What’s wrong with existing Web technologies?

    • They require specialized knowledge

    • They have weak development tool support

  • Silverlight uses your existing .NET skills

    • .NET is the world’s most popular platform

    • WPF enables rich, reusable UI design

  • Use the world’s best development tools

    • Visual Studio

    • Expression Studio


Silverlight offers
Silverlight offers...

  • Rich, interactive applications

    • Silverlight 2 features

      • Adaptive streaming of VC-1 high-def video

      • Animation, vector graphics, scalable text

    • Silverlight 3 features

      • H.264 high-def video support

      • 3D graphics & GPU acceleration

  • Broad customer reach

    • Fast, simple install

    • Cross-platform support



DEMO

Silverlight Chess



Web development
Web development

  • Design and development

    • WPF provides a better workflow through a clean interface separating development from design

  • Deployment

    • Simplified deployment: just create a .XAP and link to it from your web page

  • The rest of the CLR is the same


XAML

  • eXtensible Application Markup Language

    • Declarative language describes user interface

    • UI elements map directly to .NET objects

    • Created with Expression Blend

      • Visual Studio contains a WPF designer (“Cider”)


XAML

  • eXtensible Application Markup Language

    • Declarative language describes user interface

    • UI elements map directly to .NET objects

    • Created with Expression Blend

      • Visual Studio contains a WPF designer (“Cider”)



Developer designer
Developer != Designer

  • Cider is targeted to developers

    • Toolbox of XAML controls

    • Gridlines, zoom, split screen

  • Use Cider to define the interface between functional code and UI elements

    • x:Name names a object that C# can use

    • Event handlers hook up actions to functions


Hosting CoreCLR

NPCtrl.dll: Hosted in the browser through ActiveX

AGCore.dll: Silverlight Presentation Foundation

XAML

CoreCLR.dll

MSCorLib.dll: .NET Framework for Silverlight

System.*.dll


Sandboxed execution
Sandboxed execution

  • Silverlight applications execute in a sandbox

    • One AppDomain per .XAP

    • AppDomainManager controlled by Silverlight

  • Communicate through the HTML DOM


Application models
Application models

  • .NET for Silverlight is the same across desktop and browser application models

    • Managed languages are the same

    • WPF and BCL are subsets of the desktop

  • CoreCLR is the same as the desktop CLR

    • JIT focuses on startup time

    • GC runs in interactive (non-server) mode


DEMO

Porting between browser and desktop


So what s different
So what’s different?

  • Execution engine is 100% compatible

    • Tuned for interactive applications

  • BCL (and WPF) are subsets of the desktop

    • Some things not applicable on the web

    • Code Access Security removed

    • No support for full-trust scenarios

  • APIs consistent across application models


Mac os x support
Mac OS X support

CoreCLR, MSCorLib, and other platform assemblies

perform system calls

Platform Adaptation Layer

Mac OS X (Darwin)

Win32


Coreclr is
CoreCLR is...

  • Smaller

    • Exposes the subset of functionality that makes sense for the web application model

  • More secure

    • Web applications are partial trust

  • Consistent and compatible

    • Reuse your existing skills across desktop and web application models








Transparent code
Transparent code

  • Security Transparency model replaces CAS

  • Code is divided into three groups

    • Transparent code cannot perform actions requiring escalated privilege

    • Security Critical code does all work requiring escalated privilege

  • Transparent code cannot call Security Critical code directly


Safecritical code
SafeCritical code

Transparent User code wants to write to a file on disk

[SafeCritical]Validates that request is safe and appropriate

[SecurityCritical] Platform code (full-trust) calls Win32 functions


In process side by side
In-process side by side

  • CLR has never been able to run side by side with itself in a single process

  • CoreCLR is not intended to replace desktop

    • If we want to run in a managed browser, we need InprocSxS

    • You don’t need to worry about a CLR being installed on the user’s machine


DEMO

CoreCLR and desktop CLR in one process


DLR

  • Dynamic Language Runtime brings

    • IronPython

    • IronRuby

  • DLR services are usable by any language

    • Dynamic type system

    • Dynamic method dispatch

    • Dynamic code generation


DEMO

DLR Console


What you ve learned
What you’ve learned

Silverlight .NET Framework is the right choice for client-side web applications

  • You already know how to code against the Silverlight 2 .NET Framework

  • The libraries are targeted toward the browser application model

  • Silverlight is small, fast and secure


Other sessions
Other sessions

Silverlight liiketoimintasovelluksissa

  • 17:30 – 18:30 5.3.2009

  • An Introduction to F#

  • 09:30 – 10:30 6.3.2009

  • Code Contracts, Pex and CHESS

  • 11:00 – 12:00 6.3.2009

  • .NET Common Language Runtime 4

  • 16:00 – 17:00 6.3.2009


Questions
Questions?

More questions? mailto://[email protected]

Silverlight – Get Started

http://silverlight.net/GetStarted/

Great CLR blogs on MSDNhttp://blogs.msdn.com/clrteam CLR blog links to other great CLR team blogs

Scott Guthrie’s bloghttp://weblogs.asp.net/scottgu

Where to find these slides

http://blogs.msdn.com/apardoe


ad