Academy PRO: .NET Core intro

26
.NET Core Intro binary- studio.com

Transcript of Academy PRO: .NET Core intro

Page 1: Academy PRO: .NET Core intro

.NET CoreIntro

binary-studio.com

Page 2: Academy PRO: .NET Core intro

Contents

1. History

2. Selling points

3. Key points

4. Application Model

5. .NET SDK

6. Tools

7. Support

8. Hello World

Page 3: Academy PRO: .NET Core intro

History

Page 4: Academy PRO: .NET Core intro

.NET on Linux

Project K.NET Core

Microsoft

Community

Page 5: Academy PRO: .NET Core intro

Open Source

Past

- MVC

- Small libs

Present

- .NET Core

- ASP.NET Core

- msbuild

- Entity Framework

- etc

Page 6: Academy PRO: .NET Core intro
Page 7: Academy PRO: .NET Core intro

Selling Points

Page 8: Academy PRO: .NET Core intro

Cross-platform: Runs on Windows, macOS and Linux.

Flexible deployment: Can be included in your app or installed side-by-side user- or machine-wide.

Command-line tools: All product scenarios can be exercised at the command-line.

Compatible: .NET Core is compatible with .NET Framework, Xamarin and Mono, via the .NET Standard Library.

Open source: The .NET Core platform is open source, using MIT and Apache 2 licenses. Documentation is licensed under CC-BY. .NET

Core is a .NET Foundation project.

Supported by Microsoft: .NET Core is supported by Microsoft, per .NET Core Support

Page 9: Academy PRO: .NET Core intro

“.NET is a great technology that dramatically boosts developer productivity. Samsung has been contributing to .NET Core on GitHub – especially in the area of ARM support – and we are looking forward to contributing further to the .NET open source community. Samsung is glad to join the .NET Foundation’s Technical Steering Group and help more developers enjoy the benefits of .NET.” Hong-Seok Kim, Vice President, Samsung Electronics.

“.NET Core has reduced our release cycle by 20% and cost on engineering resources by 30%.” When speaking about the throughput improvements and cost savings: “Additionally, it has made it possible to reduce the number of VMs needed in production by half.”

We see throughput that is 8x better than Node.js and almost 3x better than Go, on the same hardware. We’re also not done! These improvements are from the changes that we were able to get into the 1.0 product.

Page 10: Academy PRO: .NET Core intro

Key Points

Page 12: Academy PRO: .NET Core intro

Application Model

Page 13: Academy PRO: .NET Core intro

Tools

Local Services

WCF services self-hosted (only build)

WCF clients (windows only)

Text based games (wtf)

Console app

Page 14: Academy PRO: .NET Core intro

MVC

WebAPI

ASP.NET Core

Page 15: Academy PRO: .NET Core intro

Native application for:

Phone

Laptop

Tablet

Surface Hub

XBox

IoT

UWP

Page 16: Academy PRO: .NET Core intro

Xamarin

Page 17: Academy PRO: .NET Core intro

.NET SDK

Page 18: Academy PRO: .NET Core intro

.NET Core Tools

.NET Core

SDK

You can update only .NET Core without tools.

You can pick right version of both .NET Core or .NET Core Tools

You can have multiple versions of both .NET Core and .NET Core Tools

You can specify their dependence via project.json

Page 19: Academy PRO: .NET Core intro

.NET Core Toolsdotnet new – Initializes a sample console C# project.

dotnet restore – Restores the dependencies for a given application.

dotnet build – Builds a .NET Core application.

dotnet publish – Publishes a .NET portable or self-contained application.

dotnet run – Runs the application from source.

dotnet test – Runs tests using a test runner specified in the project.json.

dotnet pack – Creates a NuGet package of your code.

Page 20: Academy PRO: .NET Core intro

Tools

Page 21: Academy PRO: .NET Core intro
Page 22: Academy PRO: .NET Core intro

Support

Page 23: Academy PRO: .NET Core intro

Long Term Support (LTS) releases

Typically a major release, such as “1.0” or “2.0”

Supported for three years after the general availability date of a LTS release

And one year after the general availability of a subsequent LTS release

Fast Track Support (FTS) releases

Typically a minor release, such as “1.1” or “1.2”

Supported within the same three-year window as the parent LTS release

And three months after the general availability of a subsequent FTS release

And one year after the general availability of a subsequent LTS release

Page 24: Academy PRO: .NET Core intro

Hello world

Page 25: Academy PRO: .NET Core intro

PS

Page 26: Academy PRO: .NET Core intro

Telemetry

https://github.com/dotnet/cli/pull/2145