ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman | Seminário

57
Tecnologia de Programação 2- Seminário Professor: Cleiton dos Santos Garcia Alunos: Djiovani Douglas, Luiz Machado e Osmar Petry ASP .NET CORE, Angular 2, e TypeScript Scaffolding

Transcript of ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman | Seminário

Page 1: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Tecnologia de Programação 2- Seminário Professor: Cleiton dos Santos Garcia Alunos: Djiovani Douglas, Luiz Machado e Osmar Petry

ASP .NET CORE, Angular 2, e TypeScript

Scaffolding

Page 2: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

O que é Scaffolding

Page 3: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

vs

Page 4: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Hulk:• Força bruta!

• Mais código

• Muito rápido

• Difícil de achar

• Ou se tornar

• (ninguém quer ser verde)

Page 5: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Homem de ferro:• Ferramentas!

• Menos código

• Atalhos, IDEs

• Fácil de disseminar

• (todo mundo quer ser milionário)

Page 6: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Qual é melhor?

Page 7: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

+53Armaduras diferentes do Iron Man

http://marvel.wikia.com/wiki/Iron_Man_Armor

Page 8: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Hulkbuster ArmorComo o nome sugere, foi feito especificamente feita para batalhar contra o Hulk. […] Durante seu primeiro uso enagural, ela conseguiu aguentar um combate fisico contra o Hulk

Page 9: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário
Page 10: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Use ferramentas de produtividade• Frameworks, Bibliotecas …

• Snippets, shortcuts, scripts …

• IDEs, livre reload, hot deploy …

• Geradores de código

Page 11: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Tempogasto

ganha.geek

não-greek

Tamanhotarefa

faz manualmente

fica puto

roda script

faz manualmente

zoa o método complicado do geek

retorno doinvstimento

escreve script

perde.

Page 12: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Emmet - Ferramenta para desenvolvedores Web

http://emmet.io/

Page 13: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

SCAFFOLDINGÈ um termo […] da engenharia civil, que denota a colocação de andaimes e outras estruturas para suportar tenoriamente trabalhadores e/ou maquinário enquanto a construção definitive não está pronta […]

Page 14: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Scaffolding• Rails (Ruby)

• Spring Roo (Java)

• Cake (PHP)

• Yeomen (WEB)

Page 15: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Nova paradigma…

Page 16: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

…vem com muitas outras ferramentas!

Page 17: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals.”

Open-Source Version Controll

Multiplataforma (Linux, Windows,Mac, [...])https://github.com/git/git

Page 18: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“GitHub is a web-based Git repository hosting service”

Open-Source Social NetworkGit Repository

https://github.com/git/git.github.io

Page 19: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário
Page 20: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Scaffolding Tool

Page 21: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Yeoman is a robust and opinionated set of tools, libraries, and a workflow that can help developers quickly build beautiful, compelling web apps.”

Open-Source Scaffolding

Web Componentshttps://github.com/yeoman/yeoman

Page 22: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

BUILD TOLL

Page 23: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Gulp is a toolkit that helps you automate painful or time-consuming tasks in your development workflow.”

Open-Source Automation

https://github.com/gulpjs/gulp

Page 24: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

OU

Page 25: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Grunt: The JavaScript Task Runner”

Open-Source Automation

https://github.com/gruntjs/grunt

Page 26: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Qual melhor?

1,910,975Download ultimo mês

Plugins disponíveis

Contribuidores GitHub

Perguntas Stackoverflow Benchmarks

1,910,975 5,915 64 22,945 930ms

2,437,448 2,656 174 23,052 493ms

Page 27: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Diferença código

Page 28: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Diferença código

Page 29: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Package Manager

Page 30: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Bower package manager for the Web, created by Twitter”

Open-Source Package manager

https://github.com/bower/bower

Page 31: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Exemplo código

Page 32: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

+4321Geradores registrados, sendo +46 oficias

http://yeoman.io/generators/

https://github.com/yeoman

Page 33: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Geradores oficiais• generator-angular

• generator-polymer

• generator-bootstrap

• generator-chrome-extension

• (…)

Page 34: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Geradores comunidade• Javascript: Mean, React, Meteor

• Mobile: Android, iOS, Ionic, Cordova, Xaramin

• Java: Jhipster, Spring, JAX-RS

• .NET: Aspnetmvc, Aspnetcore,

• (…)

Page 35: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Frameworks SPA

Page 36: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

O que é SPA• Single page application

• Menos lado servidor, mais do lado cliente

• Não necessáriamente Parallax ou Infinite Scroll

Page 37: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Vantagens• Melhor experiência usuário

• Performance

• Maior responsabilidade para o lado do cliente

Page 38: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Desvantagens• Um novo framework

• Javascript desabilitado

• SEO (Search engine optimization)

Page 39: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Angular is a development platform for building mobile and desktop web applications”

Open-Source Single Page Application

Web Componentshttps://github.com/angular/angular

Page 40: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

COMPONENTES DIRETIVAS SERVIÇOSROTEAMENTO

TEMPLATE METADATA DATA BINDING INJEÇÃO DEPÊNCIA

PRINCIPAIS BLOCOS

Page 41: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

{ }

{ }

{ }

{ }

{ }

Barra de navegação

Barra Lateral

Post

Post

Post

Star Widget

Page 42: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

{ }Node.JsJava.NETRubyPython

COMPONENTSERVICE

BACKEND

Page 43: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“TypeScript is a superset of JavaScript that compiles to clean JavaScript output”

Open-Source MultiBrowser(Chome,Edge,Firefox, [...])

Multiplataforma (Linux, Windows,Mac, [...])https://github.com/Microsoft/TypeScript

Page 44: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário
Page 45: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“.NET Core is a blazing fast, lightweight and modular platform for creating web applications and services that run on Windows, Linux and Mac”

Open-Source Multiplataforma (Linux, Windows,Mac,[...])

Ambiente .NEThttps://github.com/dotnet/core

.NET Core

Page 46: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

https://channel9.msdn.com/Events/Build/2016/B891

Android

.NET STANDARD LIBRARYUma biblioteca para reger tudo

.NET FRAMEWORK

WPF Windows Forms

ASP.NET

.NET CORE

UWP

ASP.NET CORE

XARAMIN

iOS

OS X

Android

Page 47: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Exemplo

Page 48: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

“Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine”

Open-Source Roda sem auxilio do navegador

Multiplataforma (Linux, Windows,Mac,[...])https://github.com/nodejs/node-v0.x-archive

Page 49: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Instalaçãonpm install -g yo

npm install -g generator-aspnetcore-angular2npm install -g typescript

Page 50: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Instalaçãonpm install -g yo

npm install -g generator-aspnetcore-angular2npm install -g typescript

Page 51: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Instalaçãonpm install -g yo

npm install -g generator-aspnetcore-angular2npm install -g typescript

Page 52: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Gerar um novo projetoyo aspnetcore-angular2

Page 53: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Command-linecd src/sua-aplicacao

tscdotnet restore

dotnet run

Page 54: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Resultado

Page 55: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

O que gerou

Page 56: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Se informe sobre Yomen

http://yeoman.io/

Page 57: ASP .NET CORE, Angular 2, e Typescript com Scaffolding Yeoman  | Seminário

Tecnologia de Programação 2- Seminário Professor: Cleiton dos Santos Garcia Alunos: Djiovani Douglas, Luiz Machado e Osmar Petry

ASP .NET CORE, Angular 2, e TypeScript

Scaffolding