Slide 1

Slide 1 text

.NET Core Tugberk Ugurlu

Slide 2

Slide 2 text

Disclaimer ¯\_(ツ)_/¯ “I am still all fuzzy about the concepts”

Slide 3

Slide 3 text

So, it’s RTM now :tada: https://blogs.msdn.microsoft.com/dotnet/2016/06/27/announcing-net-core-1-0/

Slide 4

Slide 4 text

Not entirely... :sadpanda:

Slide 5

Slide 5 text

Hmm... • The CLR and Core Framework is RTM • The Tooling is still Preview • Compilation • Package Restore • Publish • Packaging • Running • etc.

Slide 6

Slide 6 text

All Open Source • CoreCLR: https://github.com/dotnet/coreclr • Framework: https://github.com/dotnet/corefx • .NET Compiler Platform: https://github.com/dotnet/roslyn • .NET CLI tools: https://github.com/dotnet/cli

Slide 7

Slide 7 text

Works Everywhere

Slide 8

Slide 8 text

Good-old C# http://dot.net

Slide 9

Slide 9 text

New CLI Tooling

Slide 10

Slide 10 text

Hello World

Slide 11

Slide 11 text

Hello World

Slide 12

Slide 12 text

Hello World

Slide 13

Slide 13 text

Anatomy of a Project

Slide 14

Slide 14 text

Anatomy of a Project

Slide 15

Slide 15 text

Anatomy of a Project

Slide 16

Slide 16 text

New Concepts • Runtime Identifier (RID) • .NET Standard Library • Frameworks • Platform Metapackages • Portable Applications • Self-Contained Applications • .NET Core Command Line Interface

Slide 17

Slide 17 text

.NET Standard Library • TODO: brain melt gif • TODO: add link to docs • TODO: add pic of the .net standard lib table https://docs.microsoft.com/en-us/dotnet/articles/standard/library#net-platforms-support

Slide 18

Slide 18 text

Different Deployment Models: Portable https://docs.microsoft.com/en-us/dotnet/articles/core/deploying/index#portable-applications

Slide 19

Slide 19 text

Different Deployment Models: Self-contained https://docs.microsoft.com/en-us/dotnet/articles/core/deploying/index#self-contained-applications

Slide 20

Slide 20 text

Different Deployment Models: Self-contained https://docs.microsoft.com/en-us/dotnet/articles/core/deploying/index#self-contained-applications

Slide 21

Slide 21 text

Linux All The Things

Slide 22

Slide 22 text

Be Closer to Tools like NGINX, HAProxy http://www.tugberkugurlu.com/archive/nginx-reverse-proxy-and-load-balancing-for-asp-net-5-applications-with-docker-compose

Slide 23

Slide 23 text

Proper Code Editor Experience

Slide 24

Slide 24 text

IntelliSense

Slide 25

Slide 25 text

Smart Thingies

Slide 26

Slide 26 text

Debugging

Slide 27

Slide 27 text

dotnet CLI Integration

Slide 28

Slide 28 text

Docker! > docker run -it microsoft/dotnet:latest https://github.com/tugberkugurlu/AspNetCoreSamples/tree/master/haproxy-zero-downtime-sample

Slide 29

Slide 29 text

ASP.NET Core • Completely new • Unified MVC/Web API Frameworks • New and Modern Data Protection Stack • Modern Configuration Model • New, Libuv based Web Server (Kestrel, > 1.15 Million RPS) • Nice docs: docs.asp.net • All Open Source under https://github.com/aspnet (including docs)

Slide 30

Slide 30 text

Why would I move to .NET Core + CoreCLR? • Do you want your products to run on non-Windows platforms? • Do you want your products to run on Nano Server? • Do you want to be ready when PowerShell goes xPlat? • Do you want your hosted applications run on Linux and save money? • Do you want to run on Docker and be supported? • Do you want to adopt new, modern Web stack (ASP.NET Core)?

Slide 31

Slide 31 text

Post 1.0.0/Preview2- Roadmap https://blogs.msdn.microsoft.com/dotnet/2016/07/15/net-core-roadmap/