25
Meet the new kid on the block Microsoft’s :5 Christos Matskas Join the conversation on Twitter: @DevWeek #DW2015

Microsoft ASP.NET 5 - The new kid on the block

Embed Size (px)

Citation preview

Meet the new kid on the blockMicrosoft’s :5

Christos Matskas

Join the conversation on Twitter: @DevWeek #DW2015

Who am I?

Name: Christos Matskas

I blog here: https://cmatskas.com

I tweet here: @christosmatskas

Github: https://github.com/cmatskas

Agenda

• The .NET Ecosystem

• Where does ASP.NET fit in the new world?

• What’s new in ASP.NET 5?

• Demos

Microsoft in the past…

And now?

2014 – 2015 “OPEN” for business

• .NET Foundation

• Over 32 open source projects

• Highlighted projects

• Roslyn• ASP.NET 5• .NET Core• SignalR

• MSBuild• Orleans• Owin• NuGet

The Ecosystem

History of .NET “verticals”

.NET Windows Desktop Windows Store Windows Phone ASP.NET 4 ASP.NET 5

App ModelApp Model

App ModelApp Model App Model

Framework

Framework

Framework

Framework

Runtime

Runtime

Runtime

Framework

Runtime

Runtime

Enter .NET Core

.NET Core

Unified BCL(Base Class Library)

Runtime Adaptation Model

Core CLR .NET Native and Runtime Other Runtime

ASP.NET 5App Model

Universal Windows App Model (UAP)

Any other App Model

NuGet is integral to .NET Core

.NET Core

Where does ASP.NET fit in the new world?

ASP.NET 5Unified framework for MVC, Web API & SignalR

.NET Framework 4.6 stack and libs

Full .NET Framework for all scenarios & libraries

.NET Core 5 stack and libs

Small runtile optimized for server & cloud workloads

OpenSource

Runtime LoaderIIS: WebEngine4

Exe: OSDNX

Operating SystemWindowsWindows, OSX,

Linux

LibrariesLoose, GAC, Nuget NuGet

App FrameworksFCL, GAC, NuGet NuGet

Web ServerIISIIS, HTTP.SYS,

Kestrel

Application HostSystem.Web DNX

Platform Libraries.NET BCL & FCL.NET BCL & FCL.NET on Nuget

Runtime.NET CLR.NET CLR - .NET

Core CLR

ApplicationMSBuild/CodeDom

-> csc.exeDNX (Roslyn)

ASP.NET 5 – Features

• Agility• Control• Speed• Client side tools• Performance• Cloud support• Cross Platform• Web Standards• Browser tooling support

Agility

Faster Development Cycle• Features are shipped as packages

• Framework is part of the application (.NET Core)

More Control• Only zero-day security bugs will be patched automatically

• Same code running from development to production

• New version choice in the hands of the developers

Speed

Development productivity + low friction• No compilation => Save and refresh

• Framework is part of the application (.NET Core)

Improved runtime performance• Faster startup times (~2-3”)

• Lower memory / higher density for HTTP Requests (> 90%)

• Modular, only pull the functionality and features required

• Raw sockets/full framework or both

Cloud-ready

Seamless transition from on-premise to the cloud• No code changes required

Diagnostics• Run/Debug directly in the Cloud

• Tracing/Logging without re-deploy

Cloud ready and cloud optimized• Consistent configuration across environments• Session and Cache providers same for on-premise and cloud operation

Cross-Platform

Truly OSS where anyone can contribure

Editors• Visual Studio, any text editor, cloud editors

• Hardcore level : command-line

Runtime• Windows – Mac - Linux

Standards & Tooling

Full support for HTML5, CSS3 and JavaScript• Adaptive and open for integration

Client tools• Why re-invent the wheel?

• Grunt, Bower and Node.js fully integrated in VS2015

Tooling support• Bi-directional communication between browser tools and VS2015

Legacy code?

Getting started with ASP.NET 5

• Go to http://asp.net/vnext and install VS2015 (CTP6)

• Docs: http://asp.net/vnext

• Code:• ASP.NET 5: http://github.com/aspnet/home• .NET Core: http://github.com/dotnet/home

• Getting help• ASP.NET vNext forum: http://forums.asp.net• JabbR: https://jabbr.net/#/rooms/aspnetvnext• StatckOverflow (asp.net-vnext)

ASP.NET 5 – Demos

Show me the money!

Questions?