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
Angular 2: Quick Web Start
Search
Minko Gechev
March 10, 2016
Technology
4
2.6k
Angular 2: Quick Web Start
Minko Gechev
March 10, 2016
Tweet
Share
More Decks by Minko Gechev
See All by Minko Gechev
Change the World With Open Source Software
mgechev
0
230
Fast Angular Apps from End to End
mgechev
1
230
The State of Angular
mgechev
1
210
The State of Angular
mgechev
1
430
Software Engineering as a Superpower
mgechev
1
230
Introduction to Angular
mgechev
1
250
Internals of the Angular CLI
mgechev
2
1.5k
The State of Angular
mgechev
1
240
The State of Angular Deployment, SSR, and Prerendering, ng-conf keynote
mgechev
2
3k
Other Decks in Technology
See All in Technology
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
180
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
100
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
配列に見る bash と zsh の違い
kazzpapa3
1
130
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
590
Cosmos World Foundation Model Platform for Physical AI
takmin
0
770
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
2
180
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
160
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.2k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
820
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
110
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
YesSQL, Process and Tooling at Scale
rocio
174
15k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
Writing Fast Ruby
sferik
630
62k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
120
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
36k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
200
Docker and Python
trallard
47
3.7k
Transcript
ngular 2: quick web start Minko Gechev github.com/mgechev twitter.com/mgechev blog.mgechev.com
None
None
None
github.com/mgechev twitter.com/mgechev blog.mgechev.com
None
Agenda
https://www.flickr.com/photos/jackson22/16706843701 Tooling…
Angular 2 is language agnostic
Angular 2 with ES5
angular2-seed
Seed project for Angular 2 apps with statically typed build
Seed project for Angular 2 apps with statically typed build
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
Seed project… • Development and production builds • TypeScript transpilation
• BrowserSync support • Karma with Jasmine integration • e2e testing with protractor • Test coverage • Follows best practices • ng2lint
None
None
Introducing Best Practices
Section agenda • Use common style & best practices •
Angular 2 (will) have great IDE support • Use static code analysis for less bugs
None
None
None
Angular 2 has “runtime-type checking”
None
Why not build-time
None
None
None
ng2lint
“ng2lint is a project which aims to enforce common style
and verify correctness of your program”
Angular in Web Workers
– MDN “Web Workers provide a simple means for web
content to run scripts in background threads. The worker thread can perform tasks without interfering with the user interface.”
– MDN “Web Workers provide a simple means for web
content to run scripts in background threads. The worker thread can perform tasks without interfering with the user interface.”
Angular 2 is platform agnostic
Angular 2 can run… • In the browser • On
the server • In WebWorkers • In native mobile apps
Angular 2 can run… • In the browser • On
the server • In WebWorkers • In native mobile apps
Angular 2 can run… • In the browser • On
the server • In WebWorkers • In native mobile apps
Angular 2 can run… • In the browser • On
the server • In WebWorkers • In native mobile apps
Angular 2 can run… • In the browser • On
the server • In WebWorkers • In native mobile apps
WebWorker UI thread App Change Detection Web Worker renderer …
UI Renderer Do whatever you want
JSON WebWorker UI thread App Change Detection Web Worker renderer
… UI Renderer Do whatever you want
…but
Can’t touch DOM
What about? document.body.style .backgroundImage = 'url(background.png)';
None
…at least…? document.querySelectorAll('.foo');
None
WebWorkers recap • Angular is platform agnostic • Running apps
in background • WebWorkers can’t touch the DOM
angular/offline
angular/offline: • Offline access to static content • Notifications for
new versions • Efficient download of deltas • Support off push notifications
angular/offline: • Offline access to static content • Notifications for
new versions • Efficient download of deltas • Support off push notifications
angular/offline: • Offline access to static content • Notifications for
new versions • Efficient download of deltas • Support off push notifications
angular/offline: • Offline access to static content • Notifications for
new versions • Efficient download of deltas • Support off push notifications
angular/offline: • Offline access to static content • Notifications for
new versions • Efficient download of deltas • Support of push notifications
angular/offline: • Offline access to static content • Notifications for
new versions • Efficient download of deltas • Support of push notifications
None
– MDN “Service workers essentially act as proxy servers that
sit between web applications, and the browser and network (when available)....”
None
– MDN “HTML5 provides an application caching mechanism that lets
web-based applications run offline. Developers can use the Application Cache...”
AppCache Service Workers AppCache Service Workers = ~91.8%
In progress integration with angular2-seed
Alright…but when?
None
Soon…
STANG2 50% off
Use with us
Thank you! github.com/mgechev twitter.com/mgechev blog.mgechev.com