Por dentro do
.NET Core
@giovannibassi
http://bit.ly/lambda3democracia
• Programador
• MVP
• Não gerente
• Trouxe a Scrum.org, PSM e PSD pro Brasil
• blog.lambda3.com.br, tecnoretorica.com.br,
dotnetarchitects.net
• Escalador e ciclista
Giovanni Bassi
@giovannibassi
Tenha cuidado,
posso ser eu na
sua frente
podcast.lambda3.com.br
0 – Eventos
1 – Docker
2 – .NET Core RC2
3 – Git
4 – Estudo
5 – Open Source
6 – Xamarin
7 – Node.js
8 – Democracia organizacional
9 – O programador poliglota
...
Toda sexta-feira em:
M u i t a s d e m o s
• .NET Core
• ASP.NET Core
• Release Contínuo
• VSTS
• Docker e micro-serviços
• Azure Container
Services
Agenda
Agenda • Plataforma .NET
• .NET Core
• .NET CLI
• Demos
• Desenvolvimento multiplataforma
• .NET Standard
• Futuro do .NET Core
Plataforma.NET Versão Data de lançamento Incluído na versão do VS
1.0 02/2002 Visual Studio .NET
1.1 04/2003 Visual Studio .NET 2003
2.0 11/2005 Visual Studio 2005
3.0 11/2006 Expression Blend
3.5 11/2007 Visual Studio 2008
4.0 04/2010 Visual Studio 2010
4.5 08/2012 Visual Studio 2012
4.5.1 10/2013 Visual Studio 2013
4.5.2 05/2014 -
4.6 07/2015 Visual Studio 2015 (embora algumas
bibliotecas .NET estão disponíveis via
NuGet)
4.6.1 11/2015
4.6.2 08/2016
Plataforma.NET
Acoplamento
Plataforma.NET
Falta de desempenho
.NETCore Ecossistema
.NET FRAMEWORK .NET COREXAMARIN
.NETCore Ecossistema
.NET FRAMEWORK .NET CORE XAMARIN
APP
MODELS
BASE
LIBRARIES
.NETCore
Construir e alavancar uma comunidade mais forte
Desenvolvimento aberto
Up for grabs
Sobre nós
Open Source
.NETCore
Construir e alavancar uma comunidade mais forte
Desenvolvimento aberto
Up for grabs
Sobre nós
Open Source
Fonte: Github Octoverse 2016 https://octoverse.github.com/
.NETCore
Multiplataforma
.NETCore Desempenho
Techempower Round 13 https://www.techempower.com/benchmarks/
3,730,467
2,795,049
1,822,366
993,518
975,225
836,746
467,246
0 500,000 1,000,000 1,500,000 2,000,000 2,500,000 3,000,000 3,500,000 4,000,000
LIBREACTOR
NETTY
ASPNETCORE-LINUX
NGX_MRUBY
WHEEZY.WEB
OPENRESTY
NODEJS
requests/s
.NETCore
Modular
.NETCore&.NETFramework
Lado a lado
.NETCLI Command Line Interface
Aplicações completamente portáteis e independentes.
Demo Console
Web
Desenvolvimento
multiplataforma Desenvolvimento multiplataforma
PortableClassLibrary Projeto Class Library (Portable)
PortableClassLibrary Projeto Class Library (Portable)
PortableClassLibrary Projeto Class Library (Portable)
PortableClassLibrary TFM (Target Frameworks Moniker)
PortableClassLibrary TFM Profiles
PortableClassLibrary
Implementação
PortableClassLibrary
Implementação
PortableClassLibrary
Implementação
PortableClassLibrary Modelo antigo
.NETStandard
???
.NET Standard Library veio
substituir PCL?
.NETStandard
PCL is dead! Long live .NET Standard!
.NETStandard
O que é?
A .NET Standard Library é uma
especificação formal de APIs
.NETStandard Novo modelo
.NETStandard Garantia
“Verifique minhas dependências, rodarei nas
plataformas que elas suportam”
De
“quais plataformas suporto”
para
“quais minhas dependências”
.NETStandard
Suporte para as plataformas
https://docs.microsoft.com/en-us/dotnet/articles/standard/library
.NETStandard Exemplo
WindowsAzure.Storage
.NETStandard Exemplo
.NETStandard
Suporte para as plataformas
.NETStandard Resumindo
Pense nisso como interfaces, classes e aplicativos.
.NET Standard fornece a interface, enquanto o
.NET Framework e .NET Core, por exemplo,
fornecem as implementações.
Demo
Linux e Docker
• .NET Core no blog da Lambda3: http://blog.lambda3.com.br/tag/net-core
• .NET Core: http://dot.net
Recursos
Dúvidas?
Perguntas
@giovannibassi
Avenida Angélica, 2318, 1º andar | Consolação - São Paulo - SP
11 2386.1886 | contato@lambda3.com.br
w w w . l a m b d a 3 . c o m . b r

Por dentro do .NET Core