Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
O poderoso AngulasJS
Search
Paulo Pires
June 25, 2014
Programming
0
69
O poderoso AngulasJS
Talk apresentada no Google I/O Extended São Paulo
Paulo Pires
June 25, 2014
Tweet
Share
More Decks by Paulo Pires
See All by Paulo Pires
Introdução ao WebAssembly
paulohp
0
32
Introdução ao GraphQL
paulohp
0
39
GraphQL 101
paulohp
0
71
Side Effects: Uma Saga até o React
paulohp
0
77
MobX: State Management made easy
paulohp
0
79
Docker: The Rise of Containers
paulohp
0
84
We Work Remotely
paulohp
2
88
Angular2
paulohp
0
220
Node.js Codelab
paulohp
1
160
Other Decks in Programming
See All in Programming
Jakarta EE meets AI
ivargrimstad
0
100
GCCのプラグインを作る / I Made a GCC Plugin
shouth
1
160
Amazon Qを使ってIaCを触ろう!
maruto
0
370
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
4
580
From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism- An Example
philipschwarz
PRO
0
190
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
4
1k
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
160
RailsのPull requestsのレビューの時に私が考えていること
yahonda
5
2.8k
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
500
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
510
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
170
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
We Have a Design System, Now What?
morganepeng
50
7.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
43
6.8k
The Invisible Side of Design
smashingmag
297
50k
Thoughts on Productivity
jonyablonski
67
4.3k
Designing the Hi-DPI Web
ddemaree
280
34k
Intergalactic Javascript Robots from Outer Space
tanoku
268
27k
Transcript
O poderoso AngularJS
Beto MUNIZ Paulo PIRES @obetomuniz @paulo_hp
None
None
***
Agenda O que é AngularJS? Conceitos Bootstrap e Runtime Mitos,
prós e contras The future is here Demo Time
io.minasdev.org
O que é AngularJS?
Extende o HTML
two-way data binding
Components Based
Alguns Conceitos
directives
**ngApp
**ngController
**ngModel
**ngRepeat
**ngClick
**ngSrc
Custom Directives
factories, services, providers
**$http
**$location
**$log
**$timeout
**$animate
filters
**filter
**number
**order
routing
**ngRoute
**$routeParams
**$routeProvider
**ngView
$scope
ngResources
ngCookies
***
Bootstrap & Runtime
Bootstrap
1. Navegador faz o parse do HTML para o DOM
2. Carrega o angular.js
3. Espera pelo evento DOMContentLoaded
4. O Angular 'procura' pela diretiva ng-app
5. O $injector é configurado de acordo com as dependências
6. E cria $compile e o $rootScope
7. O $compile compila o DOM dinâmico e linka com
o $scope
Runtime
1. Inicia-se com o contexto de execução do angular chamando
$scope.$apply(stimulusFn)
2. Executa a função stimulusFn
3. Entra no $digest Loop
4. Agenda a execução com $evalAsync
5. Confere a $watch list
6. E renderiza novamente o DOM
Mitos, prós e contras
Mitos
AngularJS não protege o seu sistema de desenvolvedores que escrevem
um péssimo código
AngularJS não substitui o jQuery, mas pode evitar o seu
uso em alguns casos
AngularJS não é o melhor, porém nunca me deixou na
mão
AngularJS não é mágico, tudo depende de você.
Prós
compreensivo
rico em funcionalidades
grande comunidade
Injeção de dependência no sangue.
Testable Friendly
by Google!
Contras (na nossa opinião)
Documentação mais ou menos
Performance
Templates Engessados
The future is here
Mobile first
Modularização do Framworks
Change Detection
Dependency Injection
Templating
Persistance
Routing
Logging
Annotations
Scaffolding
Reference App
Demo Time
Perguntas?
The END