evolutie vs revolutie chris de kok evolutie vs revolutie.net 2015.net 4.6 asp.net 5 -> mvc 6...

31

Upload: arron-briggs

Post on 23-Dec-2015

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda
Page 2: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs RevolutieChris de Kok

Page 3: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs Revolutie

.NET 2015 .NET 4.6 ASP.NET 5-> MVC 6

Visual Studio 2015

C# 6.0

Agenda

Page 4: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

.NET 2015

Evolutie vs Revolutie.NET 2015

Page 5: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– .NET 2015 is a set of .NET releases– Frameworks (.NET 4.6, ASP.NET 5, MVC 6) – Runtimes (Core en Framework)– Compiler Frameworks (Roslyn) – Compilers (C#, VB.NET, F#)

Evolutie vs Revolutie.NET 2015

Page 6: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs Revolutie.NET 2015

Page 7: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

“.NET Core is a modular development stack that is the foundation of all future .NET platforms.”

Page 8: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda
Page 9: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs Revolutie.NET 2015

Page 10: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

.NET 4.6

Evolutie vs Revolutie.NET 2015

Page 11: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– CultureInfo.CurrentCulture en CultureInfo.CurrentUICulture– Resizing in Windows Forms Controls (uitgebreider dan in FW v4.5.2)– Support for code page encodings– Open Source .NET framework packages op Github

– Immutable collections– SIMD APIs

– Improvements to event tracing– Roslyn..

.NET 2015

.NET Framework 4.6

Page 12: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– The .NET Compiler Platform ("Roslyn") provides open-source C# and Visual Basic compilers with rich code analysis APIs.– https://github.com/dotnet/roslyn/

– Code Analysis tools– Meta programming– Code generation– Code transformation

.NET 2015Wat is Roslyn?

Page 13: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

.NET 2015Roslyn

Page 14: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– Voorbeelden:– Parameter check:

– String.Format– Console.WriteLine– Console.Write

– Demo: – Microsoft.CodeAnalysis.CSharp

.NET 2015Roslyn demo

Page 15: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

ASP.NET5

Evolutie vs RevolutieASP.NET 5

Page 16: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs RevolutieASP.NET 5

Page 17: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs RevolutieASP.NET 5

– Open Source! (en community focused)– https://github.com/aspnet/home

– Ships entirely as NuGet packages – GruntJS - Gulp - Bower Support– Unified MVC and Web API Controllers– HTTP/2 ondersteuning

– Loading page elements in parallel over a single TCP connection– Async model binding– View Components– Tag Helpers

Page 18: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– Anchor (for generating hyperlinks)– Cache (for managing partial page caching)– Environment (for controlling content rendering based on the runtime

environment)– Form (for generating form elements)– Input (generation of input elements)– Label (outputs label elements)– Link (processes link elements)

Evolutie vs ResolutieASP.NET 5 – TagHelpers - Part I

Page 19: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– Option (targets individual options in a select list)– Script (processes script tags)– Select (generates dropdown lists)– TextArea (processes textarea tags)– ValidationMessage (generates individual validation errors)– ValidationSummary (renders the validation summary message)

Evolutie vs ResolutieASP.NET 5 – Taghelpers - Part II

Page 20: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

“We're still investing in WebForms on .NET 4.6 and have no plans to bring any of it to ASP.NET 5"

Page 21: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Visual Studio 2015

Evolutie vs RevolutieVisual Studio 2015

Page 22: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

“Visual Studio remains your one- stop-shop for development.”

Page 23: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs RevolutieVisual Studio 2015

Page 24: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

Evolutie vs RevolutieVisual Studio 2015

Page 25: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– Menus now appear in Title Case style instead of ALL CAPS style.– TimeLine Tool (WPF & Windows Store 8.1)– Custom Window Lay-outs– Ondersteuning ASP.NET 5, C# 6.0– Editor improvements (C#, JSON, HTML, CSS, LESS, SASS, TypeScript 1.4)– Git support– Use [CTRL + .] to find and install NuGet packages– Lambda Expressions in Debugger Windows

Evolutie vs RevolutieVisual Studio 2015

Page 26: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

C# 6.0

Evolutie vs RevolutieC# 6.0

Page 27: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– Elke C# release heeft een thema:

• C# 2: Generics / Collecties• C# 3: LINQ• C# 4: Interop• C# 5: Asynchroniteit• C# 6: Verminderen “boiler plate” code

Evolutie vs RevolutieC# 6.0

Page 28: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

“Boilerplate code or boilerplate is the sections of code that have to be included in many places with little or no alteration”

Page 29: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

• Auto Properties• Getter-only auto-property

• Expression-bodied function members• Extension methods

• Static imports• Null-conditional operators

• Magnetic nulls (chained)• Coalescing operator

• nameof• Index initializers• Exception filters• Await in catch and finally blocks• Extension add methods in collection initializers• Improved overload resolution

Evolutie vs RevolutieC# 6.0

Page 30: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda

– What’s new in the .NET framework?https://msdn.microsoft.com/en-us/library/ms171868(v=vs.110).aspx

– Introducing ASP.NET 5https://weblogs.asp.net/scottgu/introducing-asp-net-5

– Aspnet-vnexthttp://www.asp.net/vnext/overview/aspnet-vnext

– Visual Studio 2015 https://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx

– Roslynhttps://github.com/dotnet/roslyn/wiki/Roslyn%20Overview#introduction

Evolutie vs RevolutieSome links..

Page 31: Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda