1. O documento discute conceitos e tecnologias para desenvolvimento front-end como estado, APIs, frameworks e conclusões.
2. É apresentada uma comparação entre estilos imperativo e funcional e entre APIs do tipo RPC, REST e GRAPH.
3. Frameworks como Angular, React e Polymer são discutidos e a conclusão é que é importante separar a lógica da aplicação dos frameworks.
5. Computadores existem para
satisfazer as nossas necessidades e
automatizar tarefas. A forma como
nós humanos interagirmos com
qualquer sistema que automatize
tarefas (não só computadores,
pense em carros, por exemplo) é
através de uma interface.
6. Antes da internet ser como
conhecemos hoje, essa interface era
feita através de softwares instalados
no sistema operacional. Com a
evolução da web e a praticidade da
mesma, muitos têm tentado trazer
todo o poder do computador para
sistemas na web, através de
interfaces no navegador.
22. 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.
28. Premisas.
1. Não ter que aprender algo
demasiadamente específico.
2. Partes reutilizáveis e modulares.
3. Sem muita necessidade de refatoração.
4. Boa experiência para o usuário (rápido,
transições, feedback, fácil de usar).
35. Desafios.
1. Sincronia de dados entre servidor e
cliente/cache.
2. Performance.
3. Fácil de desenvolver/dar manutenção.
4. Concorrência e Paralelismo.
5. Offline.
38. Não ter que
aprender algo
demasiadamente
específico
Partes reutilizáveis
e modulares
Sem muita
necessidade de
refatoração
Boa experiência
para o usuário
(rápido, transições,
feedback, fácil de
usar)
Fácil de desenvolver/
dar manutenção
Fácil de desenvolver/
dar manutenção
Sincronia de dados
entre servidor e
cliente
Offline
Fácil de desenvolver/
dar manutenção
Concorrência e
Paralelismo
Performance
Sincronia de dados
entre servidor e
cliente/cache
39. Curto prazo Longo prazo
Boa experiência para o usuário
(rápido, transições, feedback, fácil de
usar)
Boa experiência para o usuário
(rápido, transições, feedback, fácil de
usar)
Não ter que aprender algo
demasiadamente específico
Sem muita necessidade de
refatoração
Partes reutilizáveis e modulares
40. 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.
41.
42. Temos que escolher entre.
1. Conceitos de programação.
2. Formatos de API.
3. Frameworks de Front-End.
57. 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.
61. 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).
65. Também vai junto com o funcional.
Advoga que a melhor forma de
evitar efeitos colaterais é não
armazenar estado, simplesmente
transformar e retornar.
128. Você pode ajudar.
1. Soluções para paralelismo.
2. Propor formas de trabalhar offline.
3. Como transitar entre frameworks.
4. Facilitar o modelo de dados no cliente.