.NET
(r)evolution
😀🕶
William S. Rodriguez
28 bytes / Monkey Nights / .NET Curitiba
@williamsrodz - williamsrz.com.br
🐒
Any developer, any app, any
platform
.NET
.NET (re)evolution
.NET CORE
Cross-platform, high performance .NET


ASP.NET CORE
Cloud-optimized framework for
microservices
UNIVERSAL WINDOWS PLATFORM
Unified development across
Windows devices


XAMARIN
Extend your reach to any device
with .NET
MODERN
DEVICE
EXPERIENCES
.NET FRAMEWORK
Multi-purpose,
comprehensive 

framework for
desktop and
web applications
MODERN
CLOUD
EXPERIENCES
.NET today is huge
Platform for .Net applications
on Windows
Distributed with Windows
.NET FRAMEWORK
Cross-platform and open
source framework optimized
for modern app needs and
developer workflow
.NET CORE
Distributed with app
Cross-platform and open
source Mono-based runtime
for iOS, OS X and Android
Devices
XAMARIN
Distributed with app
.NET today
.NET FRAMEWORK .NET CORE XAMARIN
APP
MODELS
BASE
LIBRARIES
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
Base Class Library Core Library Mono Class Library
ASP.NET
Windows
Forms
WPF UWP
ASP.NET Core
iOS
Android
OS X
.NET FRAMEWORK .NET CORE XAMARIN
APP
MODELS
BASE
LIBRARIES
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
Base Class Library Core Library Mono Class Library
ASP.NET
Windows
Forms
WPF UWP
ASP.NET Core
iOS
Android
OS X
desafios
Difficult to reuse skills
• Need to master 3+1 base class libraries
Difficult to reuse code
• Need to target a small common denominator
Difficult to innovate
• Need implementations on each platform
CHALLENGES
O novo .NET
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
iOS
Android
OS X
.NET STANDARD LIBRARY
One library to rule them all
.NET FRAMEWORK
ASP.NET
Windows
Forms
WPF
.NET CORE
UWP
ASP.NET Core
XAMARIN
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
iOS
Android
OS X
.NET STANDARD LIBRARY
One library to rule them all
.NET FRAMEWORK
ASP.NET
Windows
Forms
WPF
.NET CORE
UWP
ASP.NET Core
XAMARIN
Benefícios
Reuse skills
• Master one library, not a platform
Reuse code
• Big surface area - no small common denominator
Faster innovation
• .NET Standard can grow without updating platforms
BENEFITS
O novo .NET e inovação
*
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
iOS
Android
OS X
.NET STANDARD LIBRARY
One library to rule them all
.NET FRAMEWORK
ASP.NET
Windows
Forms
WPF
.NET CORE
UWP
ASP.NET Core
APPMODEL

INNOVATION
.NETINNOVATION
TOOLS
Visual Studio
Visual Studio
Code
Xamarin Studio
XAMARIN
*
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
iOS
Android
OS X
.NET STANDARD LIBRARY
One library to rule them all
.NET FRAMEWORK
ASP.NET
Windows
Forms
WPF
.NET CORE
UWP
ASP.NET Core
APPMODEL

INNOVATION
.NETINNOVATION
TOOLS
Visual Studio
Visual Studio
Code
Xamarin Studio
XAMARIN
O novo .NET e inovação
Platform support
.NET Standard vs PCL
• Similarities
• Defines APIs that can be use for code share
• Differences
• .NET Standard Library is a curate set of API’s, not an
intersection
• Linear versions
• PCL profiles represent MS platforms, while the .NET
Standard Library is independent of platform;
Ferramental
Visual Studio Visual Studio Code Xamarin Studio Command Line Interface
• Any App: Desktop, Mobile, Server, Cloud
• Any Developer: IDE, Code editor, CLI
• Any OS: Windows, OS X, Linux
OPEN
• Easy and quick installation
• Better productivity with reimagined inner loop
• First-class .NET experiences
POWERFUL
*
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
iOS
Android
OS X
.NET STANDARD LIBRARY
One library to rule them all
.NET FRAMEWORK
ASP.NET
Windows
Forms
WPF
.NET CORE
UWP
ASP.NET Core
APPMODEL

INNOVATION
.NETINNOVATION
TOOLS
Visual Studio
Visual Studio
Code
Xamarin Studio
XAMARIN
.NET Core?
.NET Core?
• Flexible deployment
• Cross-platform Runs on Windows, macOS and Linux
• Command-line tools
• Compatible, NET Core is compatible with .NET
Framework, Xamarin and Mono, via the .NET Standard
Library.
• Open source
DEMO
💀🕶
.NET Open Source
Shared Source “Rotor”
Mono
.NET Reference Source
ASP.NET Open Sourced
TypeScript
.NET Foundation
.NET Core - Open Sourced
Roslyn
.NET Core everywhere
Xamarin OSS
.NET Core RTM June 27th
2001 2004 2008 2012 2014 2016
Linha do tempo
Contribuições para .NET OSS em 2015
Contribuições para .NET OSS em 2016
Contribuições
Contribution by CompanyGitHub Community
Está tudo no Github
ASP.NET
github.com/aspnet github.com/fsharpgithub.com/dotnet open.xamarin.com
Developed 

in the open together
Fully open development process
Open Source
Open to community contributions
Open process: roadmap, design docs,
standups…
+ Great community momentum
>175 repositories
>24,000 forks
>4,000 contributors
= Amazing results
1.15+ Million requests/second!
New performance record for .NET Core
8x node.js performance in our labs
~40% performance gains contributed 

by community
github.com/dotnet
microsoft.com/net/core
Para saber mais
fb.com/dotnetcuritiba
Para saber quando tem evento da
comunidade, vagas ou meetups?
William S. Rodriguez
28 bytes / Monkey Nights / .NET Curitiba
@williamsrodz - williamsrz.com.br
🐒Obrigado

.NET (r)evolution

  • 1.
  • 2.
    William S. Rodriguez 28bytes / Monkey Nights / .NET Curitiba @williamsrodz - williamsrz.com.br 🐒
  • 3.
    Any developer, anyapp, any platform .NET
  • 4.
    .NET (re)evolution .NET CORE Cross-platform,high performance .NET 
 ASP.NET CORE Cloud-optimized framework for microservices UNIVERSAL WINDOWS PLATFORM Unified development across Windows devices 
 XAMARIN Extend your reach to any device with .NET MODERN DEVICE EXPERIENCES .NET FRAMEWORK Multi-purpose, comprehensive 
 framework for desktop and web applications MODERN CLOUD EXPERIENCES
  • 5.
    .NET today ishuge Platform for .Net applications on Windows Distributed with Windows .NET FRAMEWORK Cross-platform and open source framework optimized for modern app needs and developer workflow .NET CORE Distributed with app Cross-platform and open source Mono-based runtime for iOS, OS X and Android Devices XAMARIN Distributed with app
  • 6.
    .NET today .NET FRAMEWORK.NET CORE XAMARIN APP MODELS BASE LIBRARIES Compilers Languages Runtime components COMMON INFRASTRUCTURE Base Class Library Core Library Mono Class Library ASP.NET Windows Forms WPF UWP ASP.NET Core iOS Android OS X
  • 7.
    .NET FRAMEWORK .NETCORE XAMARIN APP MODELS BASE LIBRARIES Compilers Languages Runtime components COMMON INFRASTRUCTURE Base Class Library Core Library Mono Class Library ASP.NET Windows Forms WPF UWP ASP.NET Core iOS Android OS X desafios Difficult to reuse skills • Need to master 3+1 base class libraries Difficult to reuse code • Need to target a small common denominator Difficult to innovate • Need implementations on each platform CHALLENGES
  • 8.
    O novo .NET CompilersLanguages Runtime components COMMON INFRASTRUCTURE iOS Android OS X .NET STANDARD LIBRARY One library to rule them all .NET FRAMEWORK ASP.NET Windows Forms WPF .NET CORE UWP ASP.NET Core XAMARIN
  • 9.
    Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE iOS Android OS X .NET STANDARD LIBRARY One library to rule them all .NET FRAMEWORK ASP.NET Windows Forms WPF .NET CORE UWP ASP.NET Core XAMARIN Benefícios Reuse skills • Master one library, not a platform Reuse code • Big surface area - no small common denominator Faster innovation • .NET Standard can grow without updating platforms BENEFITS
  • 10.
    O novo .NETe inovação * Compilers Languages Runtime components COMMON INFRASTRUCTURE iOS Android OS X .NET STANDARD LIBRARY One library to rule them all .NET FRAMEWORK ASP.NET Windows Forms WPF .NET CORE UWP ASP.NET Core APPMODEL
 INNOVATION .NETINNOVATION TOOLS Visual Studio Visual Studio Code Xamarin Studio XAMARIN
  • 11.
    * Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE iOS Android OS X .NET STANDARD LIBRARY One library to rule them all .NET FRAMEWORK ASP.NET Windows Forms WPF .NET CORE UWP ASP.NET Core APPMODEL
 INNOVATION .NETINNOVATION TOOLS Visual Studio Visual Studio Code Xamarin Studio XAMARIN O novo .NET e inovação
  • 12.
  • 13.
    .NET Standard vsPCL • Similarities • Defines APIs that can be use for code share • Differences • .NET Standard Library is a curate set of API’s, not an intersection • Linear versions • PCL profiles represent MS platforms, while the .NET Standard Library is independent of platform;
  • 14.
    Ferramental Visual Studio VisualStudio Code Xamarin Studio Command Line Interface • Any App: Desktop, Mobile, Server, Cloud • Any Developer: IDE, Code editor, CLI • Any OS: Windows, OS X, Linux OPEN • Easy and quick installation • Better productivity with reimagined inner loop • First-class .NET experiences POWERFUL
  • 15.
    * Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE iOS Android OS X .NET STANDARD LIBRARY One library to rule them all .NET FRAMEWORK ASP.NET Windows Forms WPF .NET CORE UWP ASP.NET Core APPMODEL
 INNOVATION .NETINNOVATION TOOLS Visual Studio Visual Studio Code Xamarin Studio XAMARIN .NET Core?
  • 16.
    .NET Core? • Flexibledeployment • Cross-platform Runs on Windows, macOS and Linux • Command-line tools • Compatible, NET Core is compatible with .NET Framework, Xamarin and Mono, via the .NET Standard Library. • Open source
  • 17.
  • 18.
  • 19.
    Shared Source “Rotor” Mono .NETReference Source ASP.NET Open Sourced TypeScript .NET Foundation .NET Core - Open Sourced Roslyn .NET Core everywhere Xamarin OSS .NET Core RTM June 27th 2001 2004 2008 2012 2014 2016 Linha do tempo
  • 20.
  • 21.
  • 22.
  • 23.
    Está tudo noGithub ASP.NET github.com/aspnet github.com/fsharpgithub.com/dotnet open.xamarin.com
  • 24.
    Developed 
 in theopen together Fully open development process Open Source Open to community contributions Open process: roadmap, design docs, standups… + Great community momentum >175 repositories >24,000 forks >4,000 contributors = Amazing results 1.15+ Million requests/second! New performance record for .NET Core 8x node.js performance in our labs ~40% performance gains contributed 
 by community github.com/dotnet
  • 25.
  • 26.
    fb.com/dotnetcuritiba Para saber quandotem evento da comunidade, vagas ou meetups?
  • 27.
    William S. Rodriguez 28bytes / Monkey Nights / .NET Curitiba @williamsrodz - williamsrz.com.br 🐒Obrigado