Upload
huge
View
449
Download
0
Embed Size (px)
Citation preview
Tools.
Typescript.
Babel.
Framework.
HTML, CSS, JS.
Devices*.
Browser/V8.
Linguagem de prog.
Sist. Operacional
Kernel.
Ling. Máquina.
Hardware.
Computador.
Tools.
Typescript.
Babel.
Framework.
HTML, CSS, JS.
Devices*.
Browser/V8.
Linguagem de prog.
Sist. Operacional
Kernel.
Ling. Máquina.
Hardware.
Computador.
Tools.
Typescript.
Babel.
Framework.
HTML, CSS, JS.
Devices*.
Browser/V8.
Linguagem de prog.
Sist. Operacional
Kernel.
Ling. Máquina.
Hardware.
Computador.
Tools.
Typescript.
Babel.
Framework.
HTML, CSS, JS.
Devices*.
Browser/V8.
Linguagem de prog.
Sist. Operacional
Kernel.
Ling. Máquina.
Hardware.
Computador.
Tools.
Typescript.
Babel.
Framework.
HTML, CSS, JS.
Devices*.
Browser/V8.
Linguagem de prog.
Sist. Operacional
Kernel.
Ling. Máquina.
Hardware.
Computador.
Tools.
Typescript.
Babel.
Framework.
HTML, CSS, JS.
Devices*.
Browser/V8.
Linguagem de prog.
Sist. Operacional
Kernel.
Ling. Máquina.
Hardware.
Computador.
Tools. Typescript.
Babel. Framework.
HTML, CSS, JS. Devices*. Browser/V8.
Linguagem de prog. Sist. Operacional
Kernel. Ling. Máquina. Hardware.
Computador.
Facilidade.
Desenvolvedores. Mudanças.
Tools. Typescript.
Babel. Framework.
HTML, CSS, JS. Devices*. Browser/V8.
Linguagem de prog. Sist. Operacional
Kernel. Ling. Máquina. Hardware.
Computador.
Facilidade.
Desenvolvedores. Mudanças.
Eu quero desenvolver aplicações sem me preocupar demais em aprender algo além da tecnologia, com partes reutilizáveis, de fácil manutenção e que traga uma boa experiência para os usuários.
Usuários.Considere que existem dois tipos de usuário: “regular” e “altamente interativo”. No contexto desta palestra o foco é no interativo.
Tools. Typescript.
Babel. Framework.
HTML, CSS, JS. Devices*. Browser/V8.
Linguagem de prog. Sist. Operacional
Kernel. Ling. Máquina. Hardware.
Computador.
Facilidade.
Desenvolvedores. Mudanças.
Framework. Formatos de API.
Paradig. de Programação. HTML, CSS, JS.
Facilidade.
Desenvolvedores. Mudanças.
Temos que escolher entre. 1. Frameworks de Front-End.2. Paradig. de programação.
3. Formatos de API.
4. Tools.
Temos que escolher entre. 1. Frameworks Interface lógica.2. Paradigmas Modelo mental.3. API Dados, fatos.
react, redux, flux, flow, typescript, babel, vue.js, om, meteor, aurelia, angular, firebase, riot, bacon.js,
cycle.js, relay, immutable,web assembly.
Esse é o estilo mandão.Eu sei quem você é, eu quero
que você faça aquilo pra mim. Eu mudo o seu estado e
eu sei disso.
A mesma coisa, mas do ponto de vista do pau
mandado.
Ele é passivo de receber ordem e está exposto
aos outros.
Você está feliz agora,esse é seu estado.
Estado é um snapshot da memória de uma partedo seu programa em
determinado momento.
Esse é o estilo matemático.Eu defino funções previsíveis,que apenas alteram o estado
do seu escopo e nunca causam efeitos colaterais
(nunca mudam estados fora de si mesmas).
O contrário do imperativo e passivo, vai junto com
o funcional.
Ele diz explicitamente que vai reagir quando acontecer
tal coisa nos outros.
Ninguém manda nele diretamente, ele manda em
si mesmo e se controla.
Também vai junto como funcional.
Advoga que a melhor forma de evitar efeitos colaterais é
não armazenar estado, simplesmente transformar
e retornar.
Frameworks.1. MV* (Angular, Ember...).2. Components (React, Vue.js, Flux). 2.1. Web Components (Polymer…).3. Functional/Reactive (Cycle…).
No que consiste uma aplicação.1. Dados persistentes. Model.
2. Lógica. Controller.
3. Interface. View.
No que consiste uma aplicação.1. Dados persistentes. Store.
2. Lógica. Reducer.
3. Interface. Components.
No que consiste uma aplicação.1. Dados persistentes. Stream, State.
2. Lógica. Pure Functions.
3. Interface. Components.
Desafios. 1. Sincronia servidor/cliente/cache.2. Performance.3. Fácil de desenvolver/manter.4. Concorrência e Paralelismo.5. Offline.
O que você quer fazer?Em/por quanto tempo?
Para qual usuário?Qual seu principal desafio?
Como o BE/dados estão estruturados?
O que você quer fazer?Em/por quanto tempo?
Para qual usuário?Qual seu principal desafio?
Como o BE/dados estão estruturados?
Qual modelo mental da equipe?
O que você quer fazer?Em/por quanto tempo?
Para qual usuário?Qual seu principal desafio?
Como o BE/dados estão estruturados?
Qual modelo mental da equipe?
Vocês tem tempo para aprender?
Você pode ajudar. 1. Soluções para paralelismo.2. Propor como trabalhar offline.3. Como transitar entre frameworks.4. Melhorar data models no cliente.