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
Introduction to Angular
Search
Minko Gechev
June 26, 2020
Programming
1
240
Introduction to Angular
Minko Gechev
June 26, 2020
Tweet
Share
More Decks by Minko Gechev
See All by Minko Gechev
Change the World With Open Source Software
mgechev
0
220
Fast Angular Apps from End to End
mgechev
1
230
The State of Angular
mgechev
1
210
The State of Angular
mgechev
1
420
Software Engineering as a Superpower
mgechev
1
230
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
The Future of the Front-End Frameworks
mgechev
2
350
Other Decks in Programming
See All in Programming
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
3
1.8k
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
3.6k
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
2.2k
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
310
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
3
3k
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
480
Patterns of Patterns
denyspoltorak
0
850
Fragmented Architectures
denyspoltorak
0
110
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
2.3k
余白を設計しフロントエンド開発を 加速させる
tsukuha
6
1.6k
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
480
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
40k
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
0
180
The Spectacular Lies of Maps
axbom
PRO
1
440
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
44
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
270
We Have a Design System, Now What?
morganepeng
54
8k
Paper Plane (Part 1)
katiecoart
PRO
0
3.2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
370
KATA
mclloyd
PRO
33
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
0
140
Building AI with AI
inesmontani
PRO
1
640
Transcript
@yourtwitter Introduction to Angular Minko Gechev twitter.com/mgechev github.com/mgechev blog.mgechev.com
twitter.com/mgechev
@mgechev
@mgechev 2,000+ Projects at Google
@mgechev 1,500,000+ Angular Developers Worldwide
@mgechev With an Outstanding Community ♥
@mgechev Annual Angular Conferences
ngAtlanta ngIndia Angular NL ng-conf ngVikings Angular Day Angular in
Depth ngDenver NG-MY ng-japan NG-DE ng-SriLanka Angular Connect ngSpain NGRome NG Honduras ngTaiwan ngTalks NG-BE ngBolivia AngularMix ngPoland AngularUP ngChina
@mgechev Over 780 Angular Meetups Worldwide
@mgechev Framework
@mgechev Framework CLI Components
@mgechev Framework CLI Components I18n Language service Router Animations Forms
PWA HTTP More!
@mgechev Angular is a platform for making web developers productive
@mgechev Angular is a platform for making web developers productive
@yourtwitter @mgechev Developing apps with Angular • Scaffold a project
with the CLI • Use Angular framework & TypeScript • Composition of components
@mgechev Why TypeScript?
@yourtwitter @mgechev TypeScript provides • Great DX (Development Experience) •
Reduces the bugs in our programs • Is well maintained and feature rich
twitter.com/mgechev >15% of bugs detectable at build time
twitter.com/mgechev
@mgechev How do I get started?
@yourtwitter $ npm i -g @angular/cli $ ng new my-app
$ ng serve Create a new project
@mgechev “Hello, world!” in Angular
@yourtwitter @Component({ selector: 'my-cmp', template: `Hello, world!` }) export class
MyComponent {}
twitter.com/mgechev
@yourtwitter @Component({ selector: 'my-cmp', template: `Hello, {{name}}!` }) export class
MyComponent { @Input() name: string; }
@yourtwitter @Component({ selector: 'app-root', template: '<my-cmp name="KulKul"> </my-cmp>' }) export
class AppComponent {}
@yourtwitter @Component({ selector: 'app-root', template: '<my-cmp [name]="name"> </my-cmp>' }) export
class AppComponent { name = 'KulKul'; }
@yourtwitter @Component({ selector: 'my-cmp', template: `Hello, {{name}}!` }) export class
MyComponent { @Input() name: string; } @Component({ selector: 'app-root', template: '<my-cmp name="KulKul"> </my-cmp>' }) export class AppComponent {}
@mgechev AppComponent MyComponent name
twitter.com/mgechev
@yourtwitter $ ng add @angular/material Add material design support
@mgechev
twitter.com/mgechev
@mgechev Backend integrations
twitter.com/mgechev
@mgechev Deployment
@yourtwitter $ ng add @angular/fire $ ng deploy Deploy a
project
@mgechev Partnering with
Angular Version Number 9.1.11
Angular Version Number X.Y.Z major minor patch
@mgechev Release schedule Two major releases a year
@mgechev How do you update?
@mgechev 2,000+ Projects at Google
@yourtwitter $ ng update @angular/core @angular/cli Update an existing project
twitter.com/mgechev
@mgechev Framework
@mgechev Framework CLI Components
@mgechev Framework CLI Components I18n Language service Router Animations Forms
PWA HTTP More!
None
@mgechev
@mgechev Thank you! twitter.com/mgechev github.com/mgechev blog.mgechev.com Survey: mgv.io/talk