o futuro dos webapps com angularjs 2.0

55
O futuro dos WebApps com Wilson Mendes @willmendesneto 2.0

Upload: wilson-mendes

Post on 16-Jul-2015

2.383 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: O futuro dos WebApps com AngularJS 2.0

O futuro dos WebApps com

Wilson Mendes@willmendesneto

2.0

Page 2: O futuro dos WebApps com AngularJS 2.0
Page 3: O futuro dos WebApps com AngularJS 2.0

Wilson Mendes@willmendesneto

#developer

#opensource

#ThoughtWorker

#GDE AngularJS

Wilson Mendes@willmendesneto

Page 4: O futuro dos WebApps com AngularJS 2.0

Era uma vez...

Marco inicial: 2009

Primeiro produto: Double Click

Page 5: O futuro dos WebApps com AngularJS 2.0

Conceitos

Programação: imperativa x declativa

Page 6: O futuro dos WebApps com AngularJS 2.0

1.0

Page 7: O futuro dos WebApps com AngularJS 2.0

Projetos

Issues

Pull Requests

++ 1600

Page 8: O futuro dos WebApps com AngularJS 2.0

Projetos

Issues

Pull Requests

++ 1600

50%

Comunidade

Vem da

Page 9: O futuro dos WebApps com AngularJS 2.0

Github

Page 10: O futuro dos WebApps com AngularJS 2.0
Page 11: O futuro dos WebApps com AngularJS 2.0
Page 12: O futuro dos WebApps com AngularJS 2.0

DESCOBRIMOS MUITAS COISASBOAS DESDE A CRIAÇÃO DO

ANGULARJS

Page 13: O futuro dos WebApps com AngularJS 2.0

JS EVERYWHERE

CHROME DEVTOOLS

MOBILE

INTERNET OF THINGS

Page 14: O futuro dos WebApps com AngularJS 2.0

#codetime

https://github.com/willmendesneto/social-share

Page 15: O futuro dos WebApps com AngularJS 2.0

ROTAS

NG-ROUTER X UI-ROUTER

https://medium.com/angularjs-meetup-south-london/angular-just-another-introduction-to-ngnewrouter-vs-ui-router-72bfcb228017

Page 16: O futuro dos WebApps com AngularJS 2.0

INTERNACIONALIZAÇÃO

Page 17: O futuro dos WebApps com AngularJS 2.0

FORMULÁRIOS

Page 18: O futuro dos WebApps com AngularJS 2.0

DIRETIVAS

Componentizar sua aplicação tornou-sealgo simples

Page 19: O futuro dos WebApps com AngularJS 2.0
Page 20: O futuro dos WebApps com AngularJS 2.0

++ANIMATIONS

Criar e integrar animações para suaaplicação tornou-se algo simples

Page 21: O futuro dos WebApps com AngularJS 2.0

NÃO QUER COMEÇAR DO ZERO?

Podemos ajudar

;)

Macgyver

Angular-ui

Angularstrap

NgTasty

Keepr

Page 22: O futuro dos WebApps com AngularJS 2.0

++MODULARIZAÇÃO

Page 23: O futuro dos WebApps com AngularJS 2.0

angular.modules();

Modularizar é a alma do negócio

Porque não compartilharmos nossosmódulos?

Page 24: O futuro dos WebApps com AngularJS 2.0

http://bower.io

Page 25: O futuro dos WebApps com AngularJS 2.0

http://ngmodules.org

Page 26: O futuro dos WebApps com AngularJS 2.0

APRENDEMOS QUE PROJETOSGRANDES SE PREOCUPAM COM

SEUS USUÁRIOS

Page 27: O futuro dos WebApps com AngularJS 2.0

NÃO ESCONDEMOS O PROBLEMA

Page 28: O futuro dos WebApps com AngularJS 2.0

Facilidade para integrar bibliotecasExternas como jQuery, Lodash, Moment e

outras

ONDE PODEMOS MELHORAR

Page 29: O futuro dos WebApps com AngularJS 2.0

Alterações bruscas sempre são avisadascom antecedência

UPDATES? NO PROBLEM

Page 30: O futuro dos WebApps com AngularJS 2.0

https://docs.angularjs.org/guide/migration

Page 31: O futuro dos WebApps com AngularJS 2.0

Projetos grandes precisam de organização

ONDE PODEMOS MELHORAR

Page 32: O futuro dos WebApps com AngularJS 2.0

John Papa + Todd Motto

=

AngularJs Style guide

Page 33: O futuro dos WebApps com AngularJS 2.0

Testes são fáceis, mas onde encontro:

Boas práticas?Exemplos?

Dicas?

ONDE PODEMOS MELHORAR

Page 34: O futuro dos WebApps com AngularJS 2.0

Wilson Mendes + Ciro Nunes

=

AngularJs Testing Recipes

Page 35: O futuro dos WebApps com AngularJS 2.0

...ainda faltava algo

COMEÇAMOS BEM, MAS...

Page 36: O futuro dos WebApps com AngularJS 2.0

#WHAT ??

Page 37: O futuro dos WebApps com AngularJS 2.0

!==

Page 38: O futuro dos WebApps com AngularJS 2.0

Performance

Injeção de dependência

Facilidade para alterar comportamentos dosbindings

Aprender a sintaxe “like AngularJS”

Page 39: O futuro dos WebApps com AngularJS 2.0

NOVOS DESAFIOSNOVAS NECESSIDADES

2.0

Page 40: O futuro dos WebApps com AngularJS 2.0

Removendo dependências externas paramanipulações do DOM

* jQuery/jQlite/etc

MANIPULAÇÃO DE DOM

Page 41: O futuro dos WebApps com AngularJS 2.0

New router

Correções de bugs das rotas

Nested routers

ROTAS NO ANGULAR 2.0

Page 42: O futuro dos WebApps com AngularJS 2.0

Melhorias no algoritmo

(DOM virtual? Não utilizamos)

TWO WAY DATA BINDING 2.0

Page 43: O futuro dos WebApps com AngularJS 2.0

Web Components

Shadow DOM spec

Agora a brincadeira começa a ficar séria

DIRECTIVES 2.0

Page 44: O futuro dos WebApps com AngularJS 2.0

$scope is the glue

$scope is dead

Page 45: O futuro dos WebApps com AngularJS 2.0

this is the glue

++Javascript like

$scope

Page 46: O futuro dos WebApps com AngularJS 2.0

Immutable Data

Estado não pode ser alterado após criação

Thread safe (sem alterações)

Bons para se usar como chave hash

Page 47: O futuro dos WebApps com AngularJS 2.0

Mori.js

Baseada em ClojureScript’s

Imutabilidade

Page 48: O futuro dos WebApps com AngularJS 2.0

Immutable.js

Immutable.js fits better with the rest of the JSecosystem in my opinion, because it is designed

for and written in JS, rather than ClojureScript. TheAPI follows the native Array API where possible,

so it's a lot easier to switch between the two.“Lee Byron, Interactive Information Designer at Facebook

Page 49: O futuro dos WebApps com AngularJS 2.0

Angular-immutable

http://blog.mgechev.com/2015/03/02/immutability-in-angularjs-immutablejs/

Page 50: O futuro dos WebApps com AngularJS 2.0

Ng immutable data

AngularJS 2.0 vai possuir estrutura de dadosimutáveis e observers por padrão

++performance++render

Page 51: O futuro dos WebApps com AngularJS 2.0

EM ALGUNS MOMENTOSJAVASCRIPT PODE SE

TORNAR O VILÃO

* Typescript

Page 52: O futuro dos WebApps com AngularJS 2.0

#codetime

Page 53: O futuro dos WebApps com AngularJS 2.0
Page 54: O futuro dos WebApps com AngularJS 2.0

http://angular.io

Page 55: O futuro dos WebApps com AngularJS 2.0

#obrigado

Wilson Mendes@willmendesneto