SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
.NET Core e ASP.NET Core
Rogério Moraes de Carvalho
Consultor e instrutor de TI
rogeriom.wordpress.com | @rogeriomc
Agenda
Visão geral da plataforma .NET
Um novo .NET multiplataforma
Evolução da plataforma .NET
Mudança nos nomes de frameworks
Visual Studio e outros editores
.NET Core
O que é o .NET Core?
.NET Core CLI
.NET Platform Standard
.NET Core: da codificação à execução
ASP.NET Core
O que é o ASP .NET Core?
Desempenho do ASP.NET Core
ASP.NET Core x ASP.NET 4.6.2
Hospedagem de apps ASP.NET Core
Frameworks ASP.NET Core
ASP.NET Core MVC
.NET Core, ASP.NET Core e Visual Studio
Recursos para estudo
Documentação, vídeos, OSS e outros
Visão geral da plataforma .NET
Um novo .NET multiplataforma
Inovação MultiplataformaOpen Source
.NET Core xPlat “Roslyn”
ASP .NET Core
EF Core
Inovações nas linguagens
“RyuJit”
SIMDIoT
.NET Core
ASP.NET Core
Evolução da plataforma .NET
.NET Core 1.0.0.NET Framework 4.6.2
Comum
Nova geração do JIT (“RyuJIT”)
SIMD
Componentes do
ambiente de execução
Bibliotecas .NET Core 1.0.0
Bibliotecas .NET Framework 4.6.2
Pacotes NuGetCompiladores
Inovações nas linguagens
Plataforma de compiladores .NET (“Roslyn”)
Evolução da plataforma .NET
.NET Framework
Framework para aplicações
.NET em Windows
Distribuído com o Windows
.NET Core
Distribuído com a aplicação
Framework multiplataforma
e open source otimizado
para
fluxos de desenvolvimento e
aplicações modernas
Xamarin
Distribuído com a aplicação
Ambiente multiplataforma e
open source baseado no
framework Mono para
iOS, OS X e Android
Modelosde
aplicações
Bibliotecas
bases
Componentes do
ambiente de execuçãoCompiladores Linguagens
C#
F#
VB
Infraestrutura comum
WPF Windows Forms
WCF ASP.NET
UWP Console
ASP.NET Core
iOS
OS X
Android
Base Class Library Core Library Mono Class Library
Mudança nos nomes de frameworks
ASP.NET 5 is dead - Introducing ASP.NET Core 1.0 and .NET Core 1.0
Os frameworks estão sendo reescritos do zero
ASP .NET 5 é agora ASP.NET Core 1.0
ASP.NET MVC 6 é agora ASP.NET Core MVC 1.0
.NET Core 5 é agora .NET Core 1.0
Entity Framework 7 é agora Entity Framework Core 1.0 (EF Core 1.0)
As novas nomenclaturas ainda estão sendo gradativamente adotadas
Visual Studio e outros editores
Visual Studio
Visual Studio Community 2015
IDE somente para Windows
Grátis para apps não coorporativas
Visual Studio Code
Editor de código multiplataforma
Windows, Mac OS X e Linux
Edição, compilação e depuração
www.visualstudio.com
Outros editores
Baseados no framework Electron
Atom do GitHub
atom.io
Visual Studio Code
www.visualstudio.com
Brackets da Adobe
brackets.io
Diversas outras opções
Sublime Text, Emacs, Vim etc.
.NET Core
O que é o .NET Core?
Implementação do .NET
Modular e pequena
Multiplataforma
Windows, Linux e Mac OS X
Isolamento em nível de aplicação
Construído de forma aberta
Open Source Software (OSS)
Suporta vários modelos de apps
Opção para os próximos 10 anos
Desenvolvimento de software .NET
Modelo de aplicações
ASP.NET Core
Qualquer outro
modelo de aplicações
Base Class Library (BCL)
unificada
Camada de adaptação do ambiente de execução
.NET Native Outro ambiente
de execução
Modelo de aplicações
Universal Windows Apps
CoreCLR
.NET Core CLI
O que é o .NET Core CLI?
Um novo conjunto de ferramentas CLI
Simples, extensíveis e independentes
Para construir e gerenciar projetos .NET
Objetivos
Agnóstico
Linguagem, destino e ambiente de execução
Extensibilidade simples
Multiplataforma
Substitui o .NET Execution Environment
Substitui as ferramentas do DNX
dnx, dnvm, dnu
Ferramentas do .NET Core CLI
Agregador de ferramentas: dotnet
Sintaxe: dotnet {comando} --arg
Convenção: dotnet-{comando} --arg
Algumas ferramentas disponíveis
dotnet new --lang --type
Cria arquivos de um novo tipo de projeto
dotnet restore [argumentos]
Restaura pacotes NuGet dependentes
dotnet run [argumentos]
Compila e executa sua app em um passo
dotnet build [argumentos]
Compila sua app ou biblioteca
A transição do DNX para o .NET Core CLI foi liberada no RC2 (16/05/2016)
.NET Platform Standard
O que é o .NET Platform Standard?
Um modelo de portabilidade binária
Mais sólido para futuras plataformas .NET
Plano de versionamento mais simples
Evolução da Portable Class Library (PCL)
Define a interseção de APIs por plataformas
Utiliza nomes para identificar as plataformas
Target Framework Moniker (TFM)
Exemplo de TFM: portable-net45+win8
Novo modelo de identificação
Exemplo de TFM: netstandard1.3
Plataforma destino Versões
.NET Platform Standard 1.0 1.1 1.2 1.3 1.4
.NET Framework
    4.6.x
   4.6
  4.5.2
  4.5.1
 4.5
Universal Windows Platform    10.0
Windows
  8.1
 8.0
Windows Phone
  8.1
 8.0
O TFM netstandard foi liberado no .NET Core RC2
.NET Core: da codificação à execução
Ferramentas
.NET Native
Código
(App.cs)
Referências (Módulos, NuGet)
App.exe (stub)
App.dll
Compilador
JIT (RyuJIT)
App.dll
Mais as DLLs referenciadas
Demonstração
Mac OS X El Capitan (10.11.6) Ubuntu 16.04
Atom 1.9.9
Visual Studio Code 1.4.0
Windows 10 Pro
Sublime Text
ASP.NET Core
O que é o ASP .NET Core?
Multiplataforma
Escolha seus editores
e ferramentas
Open Source com
contribuições
OSS
Transição simples de
on-premises para a nuvem
Ciclos rápidos de
desenvolvimento
Totalmente modular
Rápido
Desempenho do ASP.NET Core
Foram 1,15 milhões de requisições por segundo (rps)
www.ageofascent.com/asp-net-core-exeeds-1-15-million-requests-12-6-gbps
ASP.NET Core x ASP.NET 4.6.2
Visual Basic 14 Visual Basic 14 (em breve)
.NET Framework 4.6.2
.NET Framework completo para qualquer cenário
Suporte das bibliotecas somente em Windows
.NET Core 1.0.0
Bibliotecas modulares e multiplataforma
Ambiente de execução otimizado para servidores e para a nuvem
C# 6 C# 6
Hospedagem
Kestrel (servidor web multiplataforma), WebListener e IIS/IISExpress no Windows
Middleware
Roteamento, autenticação, arquivos estáticos, diagnósticos, manipulação de erros,
sessão, CORS, localização, personalizados etc.
Injeção de dependência
Configuração e logging
Frameworks de aplicação
MVC, Web API, Identity, Web Pages e SignalR
Hospedagem de apps ASP.NET Core
Frameworks ASP.NET Core
ASP.NET Web Pages 3.2.3, ASP.NET MVC 5.2.3 e ASP.NET Web API 2.2ASP.NET Core MVC (MVC + Web API + Web Pages)
ASP.NET Core MVC
Remoção de duplicações de tipos similares
ASP.NET Core
Suporta o .NET Core
WebListener em Windows
Kestrel multiplataforma
Tag Helpers
ASP.NET Core MVC
Recurso Executa no .NET 4.6.2 Executa no .NET Core 1.0.0
Pronto para a nuvem  
Projeto modular  
Injeção de dependência  
Depuração e rastreamento consistente  
Desenvolvimento rápido (sem necessidade de compilação)  
Open Source  
Lado a lado completo (framework distribuído dentro da aplicação) 
Inicialização rápida, baixo uso de memória, alta taxa de transferência 
.NET Core, ASP.NET Core e Visual Studio
Visual
Studio
ASP.NET Core
Ambiente de execução e bibliotecas base
CLR
Bibliotecas
Compiladores
CLI etc.
Modelo de aplicações web modernas
ASP.NET Core MVC
ASP.NET Core Web API
ASP.NET Core Web Pages
SignalR Core (provavelmente)
Ferramentas de desenvolvimento
Preview 1 com ASP.NET Core RC2 e .NET Core RC2
Preview 2 com ASP.NET Core RTM e .NET Core RTM
Visual Studio “15” RTM (Visual Studio 2016 ou 2017)
.NET Core
Demonstração
Ubuntu 16.04
Firefox
Windows 10 Pro
Edge
Mac OS X El Capitan (10.11.6)
Safari
Recursos para estudo
Documentação, vídeos, OSS e outros
Instalação do .NET Core
dot.net
.NET Foundation
www.dotnetfoundation.org
.NET Core (GitHub: Pages | Repositórios)
dotnet.github.io | github.com/dotnet
.NET Blog
blogs.msdn.microsoft.com/dotnet
.NET Core CLI tools (GitHub: Repositório)
github.com/dotnet/cli
.NET Web Development and Tools Blog
blogs.msdn.microsoft.com/webdev
Documentação e tutoriais de ASP.NET Core
docs.asp.net
ASP.NET Community Standup
live.asp.net
Código fonte do ASP.NET Core
github.com/aspnet
Seção de ASP.NET Core no site de ASP.NET
www.asp.net/core
ASP.NET Core Deep Dive into MVC
channel9.msdn.com/Events/Build/2016/B812
Deploying ASP.NET Core Applications
channel9.msdn.com/Events/Build/2016/B811

Mais conteúdo relacionado

Mais procurados

Visual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroVisual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroRogério Moraes de Carvalho
 
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...Rogério Moraes de Carvalho
 
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”Rogério Moraes de Carvalho
 
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...Rogério Moraes de Carvalho
 
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...Rogério Moraes de Carvalho
 
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015Rogério Moraes de Carvalho
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...MVP ShowCast
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisRogério Moraes de Carvalho
 
Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Rogério Moraes de Carvalho
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicRicardo Guerra Freitas
 
Apostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NETApostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NETJosé Corrêa Viana
 
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...Rogério Moraes de Carvalho
 
Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)Fernando Gonçalves
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Rogério Moraes de Carvalho
 

Mais procurados (20)

Visual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroVisual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
 
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
 
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
 
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
 
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
 
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
 
Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4
 
Novidades do .NET 3.5
Novidades do .NET 3.5Novidades do .NET 3.5
Novidades do .NET 3.5
 
Escalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLIDEscalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLID
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
Apostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NETApostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NET
 
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
A evolução e o futuro da linguagem C# (1.0, 2.0, 3.0, 4 e 5) - Virtual Develo...
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)
 
Apostila de C# & Asp.Net
Apostila de C# & Asp.NetApostila de C# & Asp.Net
Apostila de C# & Asp.Net
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 
Tdd com Node.js
Tdd com Node.jsTdd com Node.js
Tdd com Node.js
 
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
 

Semelhante a NET Core e ASP.NET Core

TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataformaTDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataformaRogério Moraes de Carvalho
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Interoperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeInteroperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeAlessandro Binhara
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...Renato Groff
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...Renato Groff
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010Norton Guimarães
 
ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017
ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017
ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017Renato Groff
 
ASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e AzureASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e AzureGiovanni Bassi
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Fabrício Lopes Sanchez
 
ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!Vinicius Mussak
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoLorival Smolski Chapuis
 
Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017
Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017
Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017Renato Groff
 
.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo mais.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo maisakamud
 
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017Renato Groff
 
ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017Renato Groff
 
ASP.NET Core 2.0 - NESS - Outubro/2017
ASP.NET Core 2.0 - NESS - Outubro/2017ASP.NET Core 2.0 - NESS - Outubro/2017
ASP.NET Core 2.0 - NESS - Outubro/2017Renato Groff
 
.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?akamud
 

Semelhante a NET Core e ASP.NET Core (20)

TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataformaTDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
.NET Open Source
.NET Open Source.NET Open Source
.NET Open Source
 
Interoperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeInteroperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente Mainframe
 
.NET Open Source 2009
.NET Open Source 2009.NET Open Source 2009
.NET Open Source 2009
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010
 
ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017
ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017
ASP.NET Core e Linux: Explorando novas fronteiras - Araras Dev - Julho/2017
 
ASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e AzureASP.NET Core com Linux, Docker e Azure
ASP.NET Core com Linux, Docker e Azure
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
 
ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - Introdução
 
Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017
Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017
Novidades do ASP.NET Core 2.0 - ASP.NET Core Campinas - Agosto/2017
 
.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo mais.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo mais
 
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
 
ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017
 
ASP.NET Core 2.0 - NESS - Outubro/2017
ASP.NET Core 2.0 - NESS - Outubro/2017ASP.NET Core 2.0 - NESS - Outubro/2017
ASP.NET Core 2.0 - NESS - Outubro/2017
 
Aula 1
Aula 1Aula 1
Aula 1
 
.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?
 

Mais de Rogério Moraes de Carvalho

Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7Rogério Moraes de Carvalho
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Rogério Moraes de Carvalho
 
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...Rogério Moraes de Carvalho
 
Uma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programaçãoUma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programaçãoRogério Moraes de Carvalho
 
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...Rogério Moraes de Carvalho
 
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...Rogério Moraes de Carvalho
 
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...Rogério Moraes de Carvalho
 
MVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo realMVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo realRogério Moraes de Carvalho
 
MVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebMVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebRogério Moraes de Carvalho
 
TechEd 2011 Review - Evolução da linguagem de programação C#
TechEd 2011 Review - Evolução da linguagem de programação C#TechEd 2011 Review - Evolução da linguagem de programação C#
TechEd 2011 Review - Evolução da linguagem de programação C#Rogério Moraes de Carvalho
 
TechEd Brasil 2011 Review - Evolução da linguagem de programação C#
TechEd Brasil 2011 Review - Evolução da linguagem de programação C#TechEd Brasil 2011 Review - Evolução da linguagem de programação C#
TechEd Brasil 2011 Review - Evolução da linguagem de programação C#Rogério Moraes de Carvalho
 
TDC 2011 Goiânia: Evolução da linguagem de programação JavaScript
TDC 2011 Goiânia: Evolução da linguagem de programação JavaScriptTDC 2011 Goiânia: Evolução da linguagem de programação JavaScript
TDC 2011 Goiânia: Evolução da linguagem de programação JavaScriptRogério Moraes de Carvalho
 

Mais de Rogério Moraes de Carvalho (15)

Tecnologias XML e XML no SQL Server 2016
Tecnologias XML eXML no SQL Server 2016Tecnologias XML eXML no SQL Server 2016
Tecnologias XML e XML no SQL Server 2016
 
Suporte XML nativo no SQL Server 2014/2016
Suporte XML nativo no SQL Server 2014/2016Suporte XML nativo no SQL Server 2014/2016
Suporte XML nativo no SQL Server 2014/2016
 
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
 
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
 
Uma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programaçãoUma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programação
 
`
``
`
 
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
 
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
 
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...
 
MVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo realMVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo real
 
MVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebMVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões Web
 
TechEd 2011 Review - Evolução da linguagem de programação C#
TechEd 2011 Review - Evolução da linguagem de programação C#TechEd 2011 Review - Evolução da linguagem de programação C#
TechEd 2011 Review - Evolução da linguagem de programação C#
 
TechEd Brasil 2011 Review - Evolução da linguagem de programação C#
TechEd Brasil 2011 Review - Evolução da linguagem de programação C#TechEd Brasil 2011 Review - Evolução da linguagem de programação C#
TechEd Brasil 2011 Review - Evolução da linguagem de programação C#
 
TDC 2011 Goiânia: Evolução da linguagem de programação JavaScript
TDC 2011 Goiânia: Evolução da linguagem de programação JavaScriptTDC 2011 Goiânia: Evolução da linguagem de programação JavaScript
TDC 2011 Goiânia: Evolução da linguagem de programação JavaScript
 

NET Core e ASP.NET Core

  • 1. .NET Core e ASP.NET Core Rogério Moraes de Carvalho Consultor e instrutor de TI rogeriom.wordpress.com | @rogeriomc
  • 2. Agenda Visão geral da plataforma .NET Um novo .NET multiplataforma Evolução da plataforma .NET Mudança nos nomes de frameworks Visual Studio e outros editores .NET Core O que é o .NET Core? .NET Core CLI .NET Platform Standard .NET Core: da codificação à execução ASP.NET Core O que é o ASP .NET Core? Desempenho do ASP.NET Core ASP.NET Core x ASP.NET 4.6.2 Hospedagem de apps ASP.NET Core Frameworks ASP.NET Core ASP.NET Core MVC .NET Core, ASP.NET Core e Visual Studio Recursos para estudo Documentação, vídeos, OSS e outros
  • 3. Visão geral da plataforma .NET
  • 4. Um novo .NET multiplataforma Inovação MultiplataformaOpen Source .NET Core xPlat “Roslyn” ASP .NET Core EF Core Inovações nas linguagens “RyuJit” SIMDIoT .NET Core ASP.NET Core
  • 5. Evolução da plataforma .NET .NET Core 1.0.0.NET Framework 4.6.2 Comum Nova geração do JIT (“RyuJIT”) SIMD Componentes do ambiente de execução Bibliotecas .NET Core 1.0.0 Bibliotecas .NET Framework 4.6.2 Pacotes NuGetCompiladores Inovações nas linguagens Plataforma de compiladores .NET (“Roslyn”)
  • 6. Evolução da plataforma .NET .NET Framework Framework para aplicações .NET em Windows Distribuído com o Windows .NET Core Distribuído com a aplicação Framework multiplataforma e open source otimizado para fluxos de desenvolvimento e aplicações modernas Xamarin Distribuído com a aplicação Ambiente multiplataforma e open source baseado no framework Mono para iOS, OS X e Android Modelosde aplicações Bibliotecas bases Componentes do ambiente de execuçãoCompiladores Linguagens C# F# VB Infraestrutura comum WPF Windows Forms WCF ASP.NET UWP Console ASP.NET Core iOS OS X Android Base Class Library Core Library Mono Class Library
  • 7. Mudança nos nomes de frameworks ASP.NET 5 is dead - Introducing ASP.NET Core 1.0 and .NET Core 1.0 Os frameworks estão sendo reescritos do zero ASP .NET 5 é agora ASP.NET Core 1.0 ASP.NET MVC 6 é agora ASP.NET Core MVC 1.0 .NET Core 5 é agora .NET Core 1.0 Entity Framework 7 é agora Entity Framework Core 1.0 (EF Core 1.0) As novas nomenclaturas ainda estão sendo gradativamente adotadas
  • 8. Visual Studio e outros editores Visual Studio Visual Studio Community 2015 IDE somente para Windows Grátis para apps não coorporativas Visual Studio Code Editor de código multiplataforma Windows, Mac OS X e Linux Edição, compilação e depuração www.visualstudio.com Outros editores Baseados no framework Electron Atom do GitHub atom.io Visual Studio Code www.visualstudio.com Brackets da Adobe brackets.io Diversas outras opções Sublime Text, Emacs, Vim etc.
  • 10. O que é o .NET Core? Implementação do .NET Modular e pequena Multiplataforma Windows, Linux e Mac OS X Isolamento em nível de aplicação Construído de forma aberta Open Source Software (OSS) Suporta vários modelos de apps Opção para os próximos 10 anos Desenvolvimento de software .NET Modelo de aplicações ASP.NET Core Qualquer outro modelo de aplicações Base Class Library (BCL) unificada Camada de adaptação do ambiente de execução .NET Native Outro ambiente de execução Modelo de aplicações Universal Windows Apps CoreCLR
  • 11. .NET Core CLI O que é o .NET Core CLI? Um novo conjunto de ferramentas CLI Simples, extensíveis e independentes Para construir e gerenciar projetos .NET Objetivos Agnóstico Linguagem, destino e ambiente de execução Extensibilidade simples Multiplataforma Substitui o .NET Execution Environment Substitui as ferramentas do DNX dnx, dnvm, dnu Ferramentas do .NET Core CLI Agregador de ferramentas: dotnet Sintaxe: dotnet {comando} --arg Convenção: dotnet-{comando} --arg Algumas ferramentas disponíveis dotnet new --lang --type Cria arquivos de um novo tipo de projeto dotnet restore [argumentos] Restaura pacotes NuGet dependentes dotnet run [argumentos] Compila e executa sua app em um passo dotnet build [argumentos] Compila sua app ou biblioteca A transição do DNX para o .NET Core CLI foi liberada no RC2 (16/05/2016)
  • 12. .NET Platform Standard O que é o .NET Platform Standard? Um modelo de portabilidade binária Mais sólido para futuras plataformas .NET Plano de versionamento mais simples Evolução da Portable Class Library (PCL) Define a interseção de APIs por plataformas Utiliza nomes para identificar as plataformas Target Framework Moniker (TFM) Exemplo de TFM: portable-net45+win8 Novo modelo de identificação Exemplo de TFM: netstandard1.3 Plataforma destino Versões .NET Platform Standard 1.0 1.1 1.2 1.3 1.4 .NET Framework     4.6.x    4.6   4.5.2   4.5.1  4.5 Universal Windows Platform    10.0 Windows   8.1  8.0 Windows Phone   8.1  8.0 O TFM netstandard foi liberado no .NET Core RC2
  • 13. .NET Core: da codificação à execução Ferramentas .NET Native Código (App.cs) Referências (Módulos, NuGet) App.exe (stub) App.dll Compilador JIT (RyuJIT) App.dll Mais as DLLs referenciadas
  • 14. Demonstração Mac OS X El Capitan (10.11.6) Ubuntu 16.04 Atom 1.9.9 Visual Studio Code 1.4.0 Windows 10 Pro Sublime Text
  • 16. O que é o ASP .NET Core? Multiplataforma Escolha seus editores e ferramentas Open Source com contribuições OSS Transição simples de on-premises para a nuvem Ciclos rápidos de desenvolvimento Totalmente modular Rápido
  • 17. Desempenho do ASP.NET Core Foram 1,15 milhões de requisições por segundo (rps) www.ageofascent.com/asp-net-core-exeeds-1-15-million-requests-12-6-gbps
  • 18. ASP.NET Core x ASP.NET 4.6.2 Visual Basic 14 Visual Basic 14 (em breve) .NET Framework 4.6.2 .NET Framework completo para qualquer cenário Suporte das bibliotecas somente em Windows .NET Core 1.0.0 Bibliotecas modulares e multiplataforma Ambiente de execução otimizado para servidores e para a nuvem C# 6 C# 6
  • 19. Hospedagem Kestrel (servidor web multiplataforma), WebListener e IIS/IISExpress no Windows Middleware Roteamento, autenticação, arquivos estáticos, diagnósticos, manipulação de erros, sessão, CORS, localização, personalizados etc. Injeção de dependência Configuração e logging Frameworks de aplicação MVC, Web API, Identity, Web Pages e SignalR Hospedagem de apps ASP.NET Core
  • 20. Frameworks ASP.NET Core ASP.NET Web Pages 3.2.3, ASP.NET MVC 5.2.3 e ASP.NET Web API 2.2ASP.NET Core MVC (MVC + Web API + Web Pages)
  • 21. ASP.NET Core MVC Remoção de duplicações de tipos similares ASP.NET Core Suporta o .NET Core WebListener em Windows Kestrel multiplataforma Tag Helpers
  • 22. ASP.NET Core MVC Recurso Executa no .NET 4.6.2 Executa no .NET Core 1.0.0 Pronto para a nuvem   Projeto modular   Injeção de dependência   Depuração e rastreamento consistente   Desenvolvimento rápido (sem necessidade de compilação)   Open Source   Lado a lado completo (framework distribuído dentro da aplicação)  Inicialização rápida, baixo uso de memória, alta taxa de transferência 
  • 23. .NET Core, ASP.NET Core e Visual Studio Visual Studio ASP.NET Core Ambiente de execução e bibliotecas base CLR Bibliotecas Compiladores CLI etc. Modelo de aplicações web modernas ASP.NET Core MVC ASP.NET Core Web API ASP.NET Core Web Pages SignalR Core (provavelmente) Ferramentas de desenvolvimento Preview 1 com ASP.NET Core RC2 e .NET Core RC2 Preview 2 com ASP.NET Core RTM e .NET Core RTM Visual Studio “15” RTM (Visual Studio 2016 ou 2017) .NET Core
  • 24. Demonstração Ubuntu 16.04 Firefox Windows 10 Pro Edge Mac OS X El Capitan (10.11.6) Safari
  • 26. Documentação, vídeos, OSS e outros Instalação do .NET Core dot.net .NET Foundation www.dotnetfoundation.org .NET Core (GitHub: Pages | Repositórios) dotnet.github.io | github.com/dotnet .NET Blog blogs.msdn.microsoft.com/dotnet .NET Core CLI tools (GitHub: Repositório) github.com/dotnet/cli .NET Web Development and Tools Blog blogs.msdn.microsoft.com/webdev Documentação e tutoriais de ASP.NET Core docs.asp.net ASP.NET Community Standup live.asp.net Código fonte do ASP.NET Core github.com/aspnet Seção de ASP.NET Core no site de ASP.NET www.asp.net/core ASP.NET Core Deep Dive into MVC channel9.msdn.com/Events/Build/2016/B812 Deploying ASP.NET Core Applications channel9.msdn.com/Events/Build/2016/B811