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
AngularJS – Schmerzlos mit HTML5 und JavaScript
Search
Ingo Rammer
September 03, 2013
Programming
0
180
AngularJS – Schmerzlos mit HTML5 und JavaScript
German Session from MobileTechConference 2013 in Berlin
Ingo Rammer
September 03, 2013
Tweet
Share
More Decks by Ingo Rammer
See All by Ingo Rammer
Blockchain für Architekten und Entwickler – Was steckt wirklich dahinter
ingorammer
2
620
Workshop: Von Null auf Hundert - Blockchain-Anwendungen mit Hyperledger Fabric
ingorammer
0
600
Hyperledger Fabric - Die Open-Source Basis für Ihre Blockchain
ingorammer
0
570
Coding Hyperledger Fabric – Smart Contracts und Clients mit Node.js
ingorammer
0
580
OOP 2019: Hyperledger Fabric – Architecture and Smart Contracts of the Open Source Blockchain
ingorammer
1
710
Hyperledger Fabric - Die Open-Source Basis für Ihre Blockchain
ingorammer
0
360
Blockchain - Was steckt wirklich dahinter?
ingorammer
0
210
From 0 to 100: Permissioned blockchains with Hyperledger Fabric and Node
ingorammer
0
220
Von Null auf Hundert: Permissioned Blockchain-Anwendungen mit Java Clients
ingorammer
0
140
Other Decks in Programming
See All in Programming
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
330
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
5
650
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
270
すべてのコンテキストを、 ユーザー価値に変える
applism118
4
1.4k
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
750
A full stack side project webapp all in Kotlin (KotlinConf 2025)
dankim
0
130
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
1k
AI駆動のマルチエージェントによる業務フロー自動化の設計と実践
h_okkah
0
210
20250708_JAWS_opscdk
takuyay0ne
2
120
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
190
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
180
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Side Projects
sachag
455
42k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Speed Design
sergeychernyshev
32
1k
Code Reviewing Like a Champion
maltzj
524
40k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Statistics for Hackers
jakevdp
799
220k
Designing for humans not robots
tammielis
253
25k
Transcript
Ingo Rammer | thinktecture AngularJS – Schmerzlos mit HTML5 und
JavaScript
Single-Page Applications (SPAs)
jQuery?
MVC/SPA Frameworks Model Binding Routing UI-Templating … unterschiedlichste Design-Ideen und
Implementationen
http://todomvc.com Sept 2013: 66 Versionen der gleichen App
sproutcore Google Trends – Aug 2009 bis Aug 2013
backbone.js sproutcore Google Trends – Aug 2009 bis Aug 2013
backbone.js ember.js sproutcore Google Trends – Aug 2009 bis Aug
2013
backbone.js knockoutjs ember.js sproutcore Google Trends – Aug 2009 bis
Aug 2013
backbone.js knockoutjs ember.js angularjs sproutcore Google Trends – Aug 2009
bis Aug 2013
AngularJS • http://angularjs.org/, v1.2RC1 • HTML-zentrische SPAs – ("HTML enhanced
for web apps!") • Komponenten aus JS + HTML • Einbettbar, DI-basierend, testbar • Corporate Sponsor: Google
Demos http://github.com/ingorammer/talk-AngularJS
Model Binding Allgemein • Je nach Framework – Controller-Initiiert (Templating,
jQuery, Handlebars/Mustache, ...) – Observer-Pattern (Ember, Knockout, ...) – Framework-Initiiert (Angular)
AngularJS: Controller • Business-Logik • Felder auf $scope sichtbar
in der View • KEINE DOM-Manipulationen im Controller!
AngularJS: Scope • Digest-Zyklus • $apply, um einen Zyklus auszulösen
– Directives, Services, Controller
AngularJS: Directives • Komponenten (HTML + JS) • Kapseln DOM-Manipulationen
• Bekommen Daten aus dem $scope • Applikationsspezifisch oder unabhängig (zB angular-UI) • Können existierende Bibliotheken kapseln
AngularJS: Services • Werden per Dependency Injection (DI) an Controller,
Directives und andere Services im Konstruktor übergeben • Allgemeine Logik, die nicht von einem einzelnen Use-Case abhängt (sonst: Controller) • Achtung bei Minification (array-syntax oder $inject)
AngularJS: Routing • $routeProvider in <module>.config – .when() – .otherwise()
Animation • Seit v1.2 • http://slid.es/gsklee/animation-in- angularjs-12
AngularJS • Struktur, die bis zu großen JS Apps skaliert
– Controller, $scope – DOM-Views, Model-Binding – Directives – Routing – Services – Promises • Keine DOM-Manipulationen im Controller! Meist Directives. Selten Services.
Demos: https://github.com/ingorammer/talk-AngularJS Slides: https://speakerdeck.com/ingorammer @ingorammer
[email protected]
http://www.thinktecture.com