SlideShare a Scribd company logo
Angular
Before you jump into
I am




M A Hossain Tonu



@Vantage Labs Dhaka
mahtonu@vantage.com


Authored the title “PHP Application
Development with NetBeans:
Beginner's Guide”
mahtonu.wordpress.com
Whats up Angular 2 ?
Angular recommends the use of Microsoft's
TypeScript language, which introduces the following
features:
• Class based Object Oriented Programming
• Static Typing
• Generics
• TypeScript is a superset of ECMAScript 6 or ES6,
backward compatible with EC5 i.e. JavaScript
Angular also includes the benefits of ES6:
• Lambdas
• Iterators
• For/Of loops
• Python-style generators
• Reflection
• Improved dependency injection – bindings make it
possible for dependencies to be named
• Dynamic loading
• Asynchronous template compilation
• Replacing controllers and $scope with
components and directives – a component is a
directive with a template
• Reactive programming support using RxJS
Before you jump into Angular
ECMAScript 6
Features (Selected)
Arrows
Arrows are a function shorthand using the => syntax.
Classes
ES6 classes are a simple sugar over the prototype-based OO pattern. Classes
support prototype-based inheritance, super calls, instance and static methods
and constructors.
Class Inheritance
ES6 classes are a simple sugar over the prototype-based OO pattern. Classes
support prototype-based inheritance, super calls, instance and static methods
and constructors.
Enhanced Object Literals
Object literals are extended to support setting the prototype at construction,
shorthand for foo: foo assignments, defining methods, making super calls, and
computing property names with expressions.
Template Strings
Template strings provide syntactic sugar for constructing strings. Optionally, a tag can be added to allow
the string construction to be customized, avoiding injection attacks or constructing higher level data
structures from string contents.
Template literals are enclosed by the back-tick (` `)
Destructuring
The destructuring assignment syntax is a JavaScript expression that makes it
possible to unpack values from arrays, or properties from objects, into distinct
variables.
Default Parameters
Default function parameters allow formal parameters to be
initialized with default values if no value or undefined is passed.
Rest Parameters
The rest parameter syntax allows us to represent an indefinite number of
arguments as an array. Rest parameters can be destructured, that means that
their data can be unpacked into distinct variables.
Spread Operator
Spread syntax allows an iterable such as an array expression or string to be expanded in places where
zero or more arguments (for function calls) or elements (for array literals) are expected, or an object
expression to be expanded in places where zero or more key-value pairs (for object literals) are
expected.
Let + Const Statement
Block-scoped binding constructs. let is the new var. const is single-
assignment. Static restrictions prevent use before assignment.
Modules
Language-level support for modules for component definition. Implicitly async
model – no code executes until requested modules are available and
processed.
Proxies
Proxies enable creation of objects with the full range of behaviors available to
host objects. Can be used for interception, object virtualization, logging/
profiling, etc.
Promises
A Promise is a proxy for a value not necessarily known when the promise is created. It allows you to
associate handlers with an asynchronous action's eventual success value or failure reason. This lets
asynchronous methods return values like synchronous methods: instead of immediately returning the final
value, the asynchronous method returns a promise to supply the value at some point in the future.
Symbol, Reflect API,
Tail Calls, and so on…
You can have it all with
TypeScript and
MORE…
Before you jump into Angular
TypeScript is a typed
superset of JavaScript that
compiles to plain JavaScript
Before you jump into Angular
So what does TypeScript offer over ES2015? the
three main additions:
• Types
• Interfaces
• Future ES2016+ features (such as Annotations/
Decorators and async/await)
Before you jump into Angular
Before you jump into Angular
Type Annotations
Type annotations in TypeScript are lightweight ways to
record the intended contract of the function or variable.
Note that, Static Types enable the modern Editors or
IDE to Static Analyse the codebase for invoking good
practices. It also helps the Auto Suggestion features
to suggest variable, method or return types
fruitfully.
Interfaces
In TypeScript, two types are compatible if their internal structure is compatible.
This allows us to implement an interface just by having the shape the interface
requires, without an explicit implements clause.
Classes
A Student class with a constructor and a few public fields. Notice that classes and interfaces play well
together, letting the programmer decide on the right level of abstraction.
Also of note, the use of public on arguments to the constructor is a shorthand that allows us to
automatically create properties with that name.
Thank you.
References
• https://github.com/lukehoban/es6features
• https://www.typescriptlang.org/

More Related Content

PPTX
Angular4 kickstart
PPTX
TypeScript and Angular2 (Love at first sight)
PDF
Reflection in Pharo: Beyond Smalltak
PDF
Dynamically Composing Collection Operations through Collection Promises
PPT
Angularjs for kolkata drupal meetup
PPT
Web development basics (Part-5)
PPTX
Patterns in JavaScript
PPT
Web development basics (Part-7)
Angular4 kickstart
TypeScript and Angular2 (Love at first sight)
Reflection in Pharo: Beyond Smalltak
Dynamically Composing Collection Operations through Collection Promises
Angularjs for kolkata drupal meetup
Web development basics (Part-5)
Patterns in JavaScript
Web development basics (Part-7)

What's hot (20)

PPT
Web development basics (Part-3)
PPTX
Angular 4
ODP
Scal`a`ngular - Scala and Angular
PPTX
Developing Rich Internet Applications with Perl and JavaScript
PDF
2016 07 - CloudBridge Python library (XSEDE16)
PPTX
Asp.net c# mvc Training: Day-3 of Day-9
PDF
Advanced Reflection in Pharo
PDF
Intro to javascript (4 week)
PPTX
Proxying DBI with DBD::Gofer and App::Staticperl
PPTX
Javascript 01 (js)
PDF
Intro to JavaScript - Thinkful LA, June 2017
PDF
API Design in the Modern Era - Architecture Next 2020
ODP
Microservices in a netshell
PDF
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
PDF
Intro To React Native
PPTX
AngularJS
PPTX
Angular 2 + TypeScript = true. Let's Play!
PPT
Web development basics (Part-2)
PDF
Intro to javascript (6:19)
PPTX
JavaScript Fundamentals
Web development basics (Part-3)
Angular 4
Scal`a`ngular - Scala and Angular
Developing Rich Internet Applications with Perl and JavaScript
2016 07 - CloudBridge Python library (XSEDE16)
Asp.net c# mvc Training: Day-3 of Day-9
Advanced Reflection in Pharo
Intro to javascript (4 week)
Proxying DBI with DBD::Gofer and App::Staticperl
Javascript 01 (js)
Intro to JavaScript - Thinkful LA, June 2017
API Design in the Modern Era - Architecture Next 2020
Microservices in a netshell
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
Intro To React Native
AngularJS
Angular 2 + TypeScript = true. Let's Play!
Web development basics (Part-2)
Intro to javascript (6:19)
JavaScript Fundamentals
Ad

Viewers also liked (12)

PDF
Succeeding with FOSS!
PDF
Understanding meteor
PDF
Google Maps API
PPT
Software Engineering in PHP
PDF
Understanding Microservices
PDF
Google Map API
PDF
Google Maps API
PDF
Secure my ng-app
PDF
Introduction to Meteor - Worldwide Meteor Day
PDF
Build social apps for Facebook
PPT
JavaScript Wash - Story of UI Development
PDF
Developing WordPress Plugins : For Begineers
Succeeding with FOSS!
Understanding meteor
Google Maps API
Software Engineering in PHP
Understanding Microservices
Google Map API
Google Maps API
Secure my ng-app
Introduction to Meteor - Worldwide Meteor Day
Build social apps for Facebook
JavaScript Wash - Story of UI Development
Developing WordPress Plugins : For Begineers
Ad

Similar to Before you jump into Angular (20)

PPTX
React & Redux JS
PPTX
Web technologies-course 07.pptx
PPTX
Intro to Scala
PDF
Functional JavaScript Fundamentals
PPTX
Introduction to es6
PPTX
Apex code (Salesforce)
PDF
Java 8 Interview Questions and Answers PDF By ScholarHat.pdf
PPTX
Modern java script features
PPTX
Unit 1 - TypeScript & Introduction to Angular CLI.pptx
PPTX
FRONTEND BOOTCAMP Session 2.pptx
PDF
A Recommender System for Refining Ekeko/X Transformation
PDF
Asp.net main
PDF
DOC-20240718-WA0006..pdf34642235632567432
PDF
Absolute C++ 5th Edition Savitch Solutions Manual
PDF
Absolute C++ 5th Edition Savitch Solutions Manual
PPT
Annotations
PPTX
WTA-MODULE-4.pptx
PPTX
Insight into java 1.8, OOP VS FP
PPTX
Cocoa and MVC in ios, iOS Training Ahmedbad , iOS classes Ahmedabad
PDF
Java script summary
React & Redux JS
Web technologies-course 07.pptx
Intro to Scala
Functional JavaScript Fundamentals
Introduction to es6
Apex code (Salesforce)
Java 8 Interview Questions and Answers PDF By ScholarHat.pdf
Modern java script features
Unit 1 - TypeScript & Introduction to Angular CLI.pptx
FRONTEND BOOTCAMP Session 2.pptx
A Recommender System for Refining Ekeko/X Transformation
Asp.net main
DOC-20240718-WA0006..pdf34642235632567432
Absolute C++ 5th Edition Savitch Solutions Manual
Absolute C++ 5th Edition Savitch Solutions Manual
Annotations
WTA-MODULE-4.pptx
Insight into java 1.8, OOP VS FP
Cocoa and MVC in ios, iOS Training Ahmedbad , iOS classes Ahmedabad
Java script summary

Recently uploaded (20)

PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Electronic commerce courselecture one. Pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Encapsulation theory and applications.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
Review of recent advances in non-invasive hemoglobin estimation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Encapsulation_ Review paper, used for researhc scholars
Electronic commerce courselecture one. Pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Encapsulation theory and applications.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Unlocking AI with Model Context Protocol (MCP)
NewMind AI Monthly Chronicles - July 2025
NewMind AI Weekly Chronicles - August'25 Week I
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Dropbox Q2 2025 Financial Results & Investor Presentation
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Digital-Transformation-Roadmap-for-Companies.pptx

Before you jump into Angular

  • 2. I am 
 
 M A Hossain Tonu
 
 @Vantage Labs Dhaka mahtonu@vantage.com 
 Authored the title “PHP Application Development with NetBeans: Beginner's Guide” mahtonu.wordpress.com
  • 4. Angular recommends the use of Microsoft's TypeScript language, which introduces the following features: • Class based Object Oriented Programming • Static Typing • Generics • TypeScript is a superset of ECMAScript 6 or ES6, backward compatible with EC5 i.e. JavaScript
  • 5. Angular also includes the benefits of ES6: • Lambdas • Iterators • For/Of loops • Python-style generators • Reflection
  • 6. • Improved dependency injection – bindings make it possible for dependencies to be named • Dynamic loading • Asynchronous template compilation
  • 7. • Replacing controllers and $scope with components and directives – a component is a directive with a template • Reactive programming support using RxJS
  • 10. Arrows Arrows are a function shorthand using the => syntax.
  • 11. Classes ES6 classes are a simple sugar over the prototype-based OO pattern. Classes support prototype-based inheritance, super calls, instance and static methods and constructors.
  • 12. Class Inheritance ES6 classes are a simple sugar over the prototype-based OO pattern. Classes support prototype-based inheritance, super calls, instance and static methods and constructors.
  • 13. Enhanced Object Literals Object literals are extended to support setting the prototype at construction, shorthand for foo: foo assignments, defining methods, making super calls, and computing property names with expressions.
  • 14. Template Strings Template strings provide syntactic sugar for constructing strings. Optionally, a tag can be added to allow the string construction to be customized, avoiding injection attacks or constructing higher level data structures from string contents. Template literals are enclosed by the back-tick (` `)
  • 15. Destructuring The destructuring assignment syntax is a JavaScript expression that makes it possible to unpack values from arrays, or properties from objects, into distinct variables.
  • 16. Default Parameters Default function parameters allow formal parameters to be initialized with default values if no value or undefined is passed.
  • 17. Rest Parameters The rest parameter syntax allows us to represent an indefinite number of arguments as an array. Rest parameters can be destructured, that means that their data can be unpacked into distinct variables.
  • 18. Spread Operator Spread syntax allows an iterable such as an array expression or string to be expanded in places where zero or more arguments (for function calls) or elements (for array literals) are expected, or an object expression to be expanded in places where zero or more key-value pairs (for object literals) are expected.
  • 19. Let + Const Statement Block-scoped binding constructs. let is the new var. const is single- assignment. Static restrictions prevent use before assignment.
  • 20. Modules Language-level support for modules for component definition. Implicitly async model – no code executes until requested modules are available and processed.
  • 21. Proxies Proxies enable creation of objects with the full range of behaviors available to host objects. Can be used for interception, object virtualization, logging/ profiling, etc.
  • 22. Promises A Promise is a proxy for a value not necessarily known when the promise is created. It allows you to associate handlers with an asynchronous action's eventual success value or failure reason. This lets asynchronous methods return values like synchronous methods: instead of immediately returning the final value, the asynchronous method returns a promise to supply the value at some point in the future.
  • 23. Symbol, Reflect API, Tail Calls, and so on…
  • 24. You can have it all with TypeScript and MORE…
  • 26. TypeScript is a typed superset of JavaScript that compiles to plain JavaScript
  • 28. So what does TypeScript offer over ES2015? the three main additions: • Types • Interfaces • Future ES2016+ features (such as Annotations/ Decorators and async/await)
  • 31. Type Annotations Type annotations in TypeScript are lightweight ways to record the intended contract of the function or variable.
  • 32. Note that, Static Types enable the modern Editors or IDE to Static Analyse the codebase for invoking good practices. It also helps the Auto Suggestion features to suggest variable, method or return types fruitfully.
  • 33. Interfaces In TypeScript, two types are compatible if their internal structure is compatible. This allows us to implement an interface just by having the shape the interface requires, without an explicit implements clause.
  • 34. Classes A Student class with a constructor and a few public fields. Notice that classes and interfaces play well together, letting the programmer decide on the right level of abstraction. Also of note, the use of public on arguments to the constructor is a shorthand that allows us to automatically create properties with that name.