Upload
nicolas-takashi
View
267
Download
0
Embed Size (px)
Citation preview
Conhecendo o ASP.NET Core
• MTAC • Web Developer desde 2010• http://ntakashi.net/• [email protected]• @ntakashics
Nicolas Takashi
Agenda• .NET Core – Primeiro de tudo• ASP.NET Core – Visão geral• MVC Core – Mudanças maravilhosas• Web API – REST cada vez mais lindo• EF Core – Novos conceitos• Tooling – Muito mais leve
.NET CorePrimeiro de tudo
.NET Core – Primeiro de tudo
.NET Core – Primeiro de tudo• Subset do .NET Framework• Muito mais clean• Totalmente modularizado• Distribuído via Nuget• Cross-Platform• Open Source
.NET Core – Primeiro de tudo
Funcionalidades .NET Framework .NET Core
Instalação
Atualização
Plataforma
Centralizado Distribuído
Uma grande Frequente
Windows Windows, Mac OS, Linux
ASP.NET CoreVisão geral
ASP.NET Core – Visão geral• Inicialmente chamado de ASP.NET 5• Renomeado em Janeiro de 2016• Atualmente está no RC2 – Release Candidate 2• Em alguns lugares ainda temos referencia com o nome
antigo.
ASP.NET Core – Visão geral• Web UI e Web API’s• Roda no IIS ou Kestrel• Injeção de dependência nativa• Menos duplicações
ASP.NET Core – Visão geralASP.NET 4.6 ASP.NET Core 1.0
.NET Framework 4.6
.NET framework libraries
Compilers and runtime components (.NET Compiler Platform: Roslyn, C#, VB, F# Languages, RyuJIT, SIMD)
.NET Core 1.0
.NET core libraries
ASP.NET Core – Visão geral
Modular
Ciclo de desenvolvimento
ágil
Open SourcePreparado para nuvem
Muitas IDE’s
ASP.NET Core – Visão geral• ASP.NET• MVC Web Apps• Web API• Console Apps• .NET Core Class Library
• Depois do RTM• SignalR• Web Pages
ASP.NET Core – Visão geralVersão Data de entrega
Beta 6 Julho de 2015
Beta 7 Setembro de 2015
Beta 8 Outubro de 2015
Release Candidate – 1 Novembro de 2015
Release Candidate – 2 Maio de 2016
Release To Market – 1.0.0 Junho de 2016
MVC CoreMudanças maravilhosas
MVC Core - Mudanças maravilhosas • Tag Helpers• HTML Helpers como tags• De: @HtmlLabelFor(x => x.Nome) Para: <label asp-for=“Nome” />• Simples customização• Intellisense rico• Código mais simples e bonito
MVC Core - Mudanças maravilhosas • View Components• Parecido com Partial View com um poder maior• Totalmente reutilizável• Muito utilizado em locais de lógicas complexas na views• Não utiliza Model Binding• Dependem apenas de dados de entrada• Totalmente testável
Web APIREST cada vez mais lindo
Web API - REST cada vez mais lindo
ASP.NET Core
Web API
JSON XML
Web Forms
HTML
MVCWeb Pages
Web API - REST cada vez mais lindo• Rotas
app.UseMvc(routes =>{ routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}");});[Route("api/[controller]")]public class TodoController : Controller {
[HttpGet("{id}")] public Todo Get(int id) { /* ... */ }}
Web API - REST cada vez mais lindo• Controller Actions
// GET /api/todos[HttpGet]public IEnumerable<Todo> Get(){ return this.Todo;}
// GET /api/todos/5[HttpGet("{id}")]public Todo Get(int id){ return this.Todo.FirstOrDefault(x => x.Id == id);}
EF CoreNovos conceitos
EF Core – Novos conceitos• Entity Framework 7 foi renomeado para EF Core• Totalmente novo, sem nenhuma herança da sua versão
atual 6.x• EF 6.x continuará ser suportado.• Novo conceito – InMemory DataBase• Recomendado para aplicações novas com target .NET
Core
ToolingMuito mais leve
Tooling – Muito mais leve• Visual Studio• Visual Studio Code + C# Extension• Outros editores de texto com Omnisharp:• VIM• Sublime• Atom
• Command Line
Obrigado!E-mail: [email protected]: http://lab1024.com.br/Twitter: http://twitter.com/lab1024Facebook: http://fb.com/lab-1024