SlideShare a Scribd company logo
Angular 2.0 
Brighter future? 
*Angular momentum image Eugene Zharkov
Angular 2.0: Brighter future?
2.0 source code 
0Q
Angular 1.3 support 
~2 years after 2.0 release
Why I hate Angular? 
• Routing 
• Directives 
• Binding 
• Scope 
• Scope 
• RootScope 
• Continue…
AtScript
AtScript 
• Superset of ES6 
• TypeScript is my friend 
• Type, Field, Metadata Annotations
Type Annotations
Generics
Type Introspection
You can skip AtScript and 
use CoffeeScript, 
TypeScript, ES6, ES5
DI
Annotations 
MyComponent.parameters = [{is:Server}];
Instance Scope 
@TransientScope 
export class MyClass { ... } 
DI will always create a new instance of a 
class, every time you ask for one
Child Injectors 
A child injector inherits from its parent all of its parent's 
services, but it has the ability to override them at the child 
level.
Directives 
• Component Directive 
• Decorator Directive (ng-show) 
• Template Directive (ng-if || ng-repeat)
@ComponentDirective({ 
selector:'tab-container', 
directives:[NgRepeat] 
}) 
export class TabContainer { 
constructor(panes:QueryPane) { 
this.panes = panes; 
} 
select(selectedPane:Pane) { ... } 
} 
CSS selector 
Dependencies 
such wow 
no $scope 
direct access in the template
@DecoratorDirective({ 
selector:'[ng-show]', 
bind: { 'ngShow': 'ngShow' }, 
observe: {'ngShow': 'ngShowChanged'} 
}) 
export class NgShow { 
constructor(element:Element) { 
this.element = element; 
} 
ngShowChanged(newValue){ 
if(newValue){ 
this.element.style.display = 'block'; 
}else{ 
this.element.style.display = 'none'; 
} 
} 
} 
html attributes 
callback 
during property 
change
@TemplateDirective({ 
selector: '[ng-if]', 
bind: {'ngIf': 'ngIf'}, 
observe: {'ngIf': 'ngIfChanged'} 
}) 
export class NgIf { 
html attributes 
constructor(viewFactory:BoundViewFactory, viewPort:ViewPort) { 
this.viewFactory = viewFactory; 
this.viewPort = viewPort; 
this.view = null; 
} 
ngIfChanged(value) { 
if (!value  this.view) { 
this.view.remove(); 
this.view = null; 
} 
if (value) { 
this.view = this.viewFactory.createView(); 
this.view.appendTo(this.viewPort); 
callback 
during property 
change 
CSS selector 
represents the location in the DOM 
instantiates the template itself
@ComponentDirective({ 
selector:'tab-container', 
directives:[NgRepeat] 
}) 
export class TabContainer { 
constructor(panes:QueryPane) { 
this.panes = panes; 
} 
select(selectedPane:Pane) { ... } 
}
pane - variable name 
(^click) - event handler 
[] - attribute binding ${} - content as a string
Router 
• Shiny new toy 
• Child Routers 
• Screen Activation
Angular developers during 2.0 release
Angular 2.0: Brighter future?

More Related Content

What's hot (20)

PDF
Swift for-rubyists
Michael Yagudaev
 
PPTX
Angular 2 Architecture
Eyal Vardi
 
PDF
JavaScript - Chapter 9 - TypeConversion and Regular Expressions
WebStackAcademy
 
PDF
LINQ Inside
jeffz
 
PDF
Javascript Styles and some tips
Vítor Baptista
 
PDF
F#语言对异步程序设计的支持
jeffz
 
PDF
Excellent
Marco Otte-Witte
 
PDF
Practical TypeScript
ldaws
 
PDF
WDB005.1 - JavaScript for Java Developers (Lecture 1)
Igor Khotin
 
PDF
Zenly - Reverse geocoding
CocoaHeads France
 
PDF
Protocols promised-land-2
Michele Titolo
 
PDF
Rails is not just Ruby
Marco Otte-Witte
 
PDF
Anonymous functions in JavaScript
Mohammed Sazid Al Rashid
 
ODP
Javascript
theacadian
 
PPTX
Presentatioon on type conversion and escape characters
faala
 
PPTX
Introducing AngularJS
Loc Nguyen
 
PPTX
I just met you, and "this" is crazy, but here's my NaN, so call(me), maybe? b...
.NET Conf UY
 
PDF
Exporter Proxy
Workhorse Computing
 
PDF
Design patterns in javascript
Abimbola Idowu
 
Swift for-rubyists
Michael Yagudaev
 
Angular 2 Architecture
Eyal Vardi
 
JavaScript - Chapter 9 - TypeConversion and Regular Expressions
WebStackAcademy
 
LINQ Inside
jeffz
 
Javascript Styles and some tips
Vítor Baptista
 
F#语言对异步程序设计的支持
jeffz
 
Excellent
Marco Otte-Witte
 
Practical TypeScript
ldaws
 
WDB005.1 - JavaScript for Java Developers (Lecture 1)
Igor Khotin
 
Zenly - Reverse geocoding
CocoaHeads France
 
Protocols promised-land-2
Michele Titolo
 
Rails is not just Ruby
Marco Otte-Witte
 
Anonymous functions in JavaScript
Mohammed Sazid Al Rashid
 
Javascript
theacadian
 
Presentatioon on type conversion and escape characters
faala
 
Introducing AngularJS
Loc Nguyen
 
I just met you, and "this" is crazy, but here's my NaN, so call(me), maybe? b...
.NET Conf UY
 
Exporter Proxy
Workhorse Computing
 
Design patterns in javascript
Abimbola Idowu
 

Viewers also liked (9)

PPTX
Conservation of Momentum & Friction
Manpreet Singh
 
PPTX
Advanced/Notes 8.8
mrshowellclass
 
PPT
13 angular momentum
IZZUDIN IBRAHIM
 
PPTX
Angular Momentum and its Conservation
missleenmartin
 
PPT
12 rotational motion
IZZUDIN IBRAHIM
 
PPT
Conservation Of Momentum
Maizer
 
PPT
Conservation Of Momentum
eliseb
 
PPTX
Physics conservation of momentum
deepanshumathur12
 
PPT
Lecture16
nomio0703
 
Conservation of Momentum & Friction
Manpreet Singh
 
Advanced/Notes 8.8
mrshowellclass
 
13 angular momentum
IZZUDIN IBRAHIM
 
Angular Momentum and its Conservation
missleenmartin
 
12 rotational motion
IZZUDIN IBRAHIM
 
Conservation Of Momentum
Maizer
 
Conservation Of Momentum
eliseb
 
Physics conservation of momentum
deepanshumathur12
 
Lecture16
nomio0703
 
Ad

Similar to Angular 2.0: Brighter future? (20)

PDF
Angular 2.0 - What to expect
Allan Marques Baptista
 
PDF
Angular js 2.0, ng poznań 20.11
Kamil Augustynowicz
 
PDF
Commit University - Exploring Angular 2
Commit University
 
PDF
Angular2 with type script
Ravi Mone
 
PDF
An introduction to Angular2
Apptension
 
PPTX
Angular 2 KTS
John Vall
 
PDF
better-apps-angular-2-day1.pdf and home
ChethanGowda886434
 
PDF
Angular 2 - The Next Framework
Commit University
 
PDF
Angular2
SitaPrajapati
 
PPTX
Angular Course.pptx
Imdad Ullah
 
ODP
Introduction to Angular 2
Knoldus Inc.
 
PPTX
Angular Basics.pptx
AshokKumar616995
 
ODP
Angular2
kunalkumar376
 
PPTX
Introduction to Angular2
Knoldus Inc.
 
PPTX
Angular Framework ppt for beginners and advanced
Preetha Ganapathi
 
PPTX
yrs of IT experience in enterprise programming
narasimhulum1623
 
PPTX
Angular js 2
Ran Wahle
 
PPTX
Introduction to angular | Concepts and Environment setup
Ansley Rodrigues
 
PDF
Everything You Need To Know About AngularJS
Sina Mirhejazi
 
Angular 2.0 - What to expect
Allan Marques Baptista
 
Angular js 2.0, ng poznań 20.11
Kamil Augustynowicz
 
Commit University - Exploring Angular 2
Commit University
 
Angular2 with type script
Ravi Mone
 
An introduction to Angular2
Apptension
 
Angular 2 KTS
John Vall
 
better-apps-angular-2-day1.pdf and home
ChethanGowda886434
 
Angular 2 - The Next Framework
Commit University
 
Angular2
SitaPrajapati
 
Angular Course.pptx
Imdad Ullah
 
Introduction to Angular 2
Knoldus Inc.
 
Angular Basics.pptx
AshokKumar616995
 
Angular2
kunalkumar376
 
Introduction to Angular2
Knoldus Inc.
 
Angular Framework ppt for beginners and advanced
Preetha Ganapathi
 
yrs of IT experience in enterprise programming
narasimhulum1623
 
Angular js 2
Ran Wahle
 
Introduction to angular | Concepts and Environment setup
Ansley Rodrigues
 
Everything You Need To Know About AngularJS
Sina Mirhejazi
 
Ad

More from Eugene Zharkov (20)

PDF
Monorepo: React + React Native. React Alicante
Eugene Zharkov
 
PDF
Monorepo: React Web & React Native
Eugene Zharkov
 
PDF
Create React Native App vs Expo vs Manually
Eugene Zharkov
 
PDF
Build automation with Fastlane
Eugene Zharkov
 
PDF
GraphQL and/or REST
Eugene Zharkov
 
PDF
React Native Animation
Eugene Zharkov
 
PDF
React Native: Hurdle Race
Eugene Zharkov
 
PDF
Burn your grass with react native
Eugene Zharkov
 
PDF
Фронтенд сказки
Eugene Zharkov
 
PDF
How to be a good frontend developer
Eugene Zharkov
 
PDF
Cycle.js: Functional and Reactive
Eugene Zharkov
 
PDF
Что там в summary
Eugene Zharkov
 
PDF
Elm: give it a try
Eugene Zharkov
 
PDF
Switch to React.js from AngularJS developer
Eugene Zharkov
 
PDF
AngularJS: Good parts
Eugene Zharkov
 
PDF
Mobile applications in a new way with React Native
Eugene Zharkov
 
PDF
Angular 2: Всех переиграл
Eugene Zharkov
 
PDF
Как объяснить на платьях процесс разработки?
Eugene Zharkov
 
PDF
Angular.JS: Do it right
Eugene Zharkov
 
PDF
SignalR: Add real-time to your applications
Eugene Zharkov
 
Monorepo: React + React Native. React Alicante
Eugene Zharkov
 
Monorepo: React Web & React Native
Eugene Zharkov
 
Create React Native App vs Expo vs Manually
Eugene Zharkov
 
Build automation with Fastlane
Eugene Zharkov
 
GraphQL and/or REST
Eugene Zharkov
 
React Native Animation
Eugene Zharkov
 
React Native: Hurdle Race
Eugene Zharkov
 
Burn your grass with react native
Eugene Zharkov
 
Фронтенд сказки
Eugene Zharkov
 
How to be a good frontend developer
Eugene Zharkov
 
Cycle.js: Functional and Reactive
Eugene Zharkov
 
Что там в summary
Eugene Zharkov
 
Elm: give it a try
Eugene Zharkov
 
Switch to React.js from AngularJS developer
Eugene Zharkov
 
AngularJS: Good parts
Eugene Zharkov
 
Mobile applications in a new way with React Native
Eugene Zharkov
 
Angular 2: Всех переиграл
Eugene Zharkov
 
Как объяснить на платьях процесс разработки?
Eugene Zharkov
 
Angular.JS: Do it right
Eugene Zharkov
 
SignalR: Add real-time to your applications
Eugene Zharkov
 

Recently uploaded (20)

PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Biography of Daniel Podor.pdf
Daniel Podor
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 

Angular 2.0: Brighter future?