SlideShare a Scribd company logo
1 of 39
Introduction about
Presenter: BinhQD
@binhqd
Contents
1. What is TypeScripts?
2. Why using it?
3. Cons
4. Demo
What is TypeScript?
❖ TypeScript is designed for large-scale application
❖ Can be compiled to plain Javascript for any browser,any OS
and it’s Open Source
❖ Developed and maintained by Microsoft
❖ First appeared: October 1st, 2012, first release July 2014
Current version: 1.8 on January 2016
What is TypeScript?
Example 01:
What is TypeScript?
Example 02:
What is TypeScript?
Example 03:
TypeScript similars
Why using it?
❖ Javascript is not designed for Large-Scale applications
Why using it?
❖ Javascript is not designed for Large-Scale applications
❖ OOP programming
Why using it?
❖ Javascript is not designed for Large-Scale applications
❖ OOP programming
❖ TypeScript = ES6 + Optional Typing
Why using it?
❖ Javascript is not designed for Large-Scale applications
❖ OOP programming
❖ TypeScript = ES6 + Optional Typing
➢ …
➢ For … of
➢ Spread operator
➢ Promise
Why using it?
❖ Javascript is not designed for Large-Scale applications
❖ OOP programming
❖ TypeScript = ES6 + Optional Typing
❖ TypeScript is using in common JS Frameworks:
➢ Angular2
➢ Ionic
➢ Meteor
Why using it?
❖ Javascript is not designed for Large-Scale applications
❖ OOP programming
❖ TypeScript = ES6 + Optional Typing
❖ TypeScript is using in common JS Frameworks:
➢ Angular2
➢ Ionic
➢ Meteor
Why using it?
❖ Prevent Javascript common mistake (Non-blocking issue)
Why using it?
❖ Prevent Javascript common mistake (Non-blocking issue)
❖ Output for ES5, ES6, ES7 and future Javascript
Why using it?
❖ Prevent Javascript common mistake (Non-blocking issue)
❖ Output for ES5, ES6, ES7 and future Javascript
❖ Output to CommonJS/System/AMD/UMD format
CommonJS
SystemJS
AMD (Asynchronous Module Definition)
UMD (Universal Module Definition)
Why using it?
❖ Prevent Javascript common mistake (Non-blocking issue)
❖ Output for ES5, ES6, ES7 and future Javascript
❖ Output to CommonJS/AMD format
❖ Unlike CoffeeScript, Dart. Learning TS it is not about
learning new language.
CoffeeScript
Dart
TypeScript
Why using it?
❖ Prevent Javascript common mistake (Non-blocking issue)
❖ Output for ES5, ES6, ES7 and future Javascript
❖ Output to CommonJS/AMD format
❖ Unlike CoffeeScript, Dart. Learning TS it is not about
learning new language.
❖ Easy to discontinue
Cons
❖ Write more type definitions
❖ Need to setup Typescript compiler
❖ Remove some free style
Demo
❖ Installation
$ sudo npm install -g typescript
❖ Tools
➢ Visual Studio, Visual Studio Code, Web Maxtrix
➢ Eclipse, Netbean
➢ Vim
➢ Atom
➢ Sublime
➢ Grunt, Gulp
Demo - Supported types
❖ boolean
❖ number
❖ string
❖ enum
❖ any
❖ void
❖ array
Demo - ES6 features
❖ let
❖ arrow function
❖ const
❖ template string
Demo - OOP
❖ Interface
❖ Supporting ES6 for class-based OOP
❖ Inheritance
❖ public, protected and private members
❖ Modules
❖ Functions
❖ Mixins
Demo - Output
❖ ES5
❖ ES6
❖ CommonJS
❖ System
❖ AMD
❖ UMD
Demo - Migrate from existing application
❖ DefinitelyTyped
➢ https://github.com/DefinitelyTyped/DefinitelyTyped
❖ Tools:
➢ $ sudo npm install -g typings
Thanks

More Related Content

What's hot (20)

Typescript ppt
Typescript pptTypescript ppt
Typescript ppt
 
Getting started with typescript
Getting started with typescriptGetting started with typescript
Getting started with typescript
 
Introducing type script
Introducing type scriptIntroducing type script
Introducing type script
 
TypeScript Best Practices
TypeScript Best PracticesTypeScript Best Practices
TypeScript Best Practices
 
Typescript in 30mins
Typescript in 30mins Typescript in 30mins
Typescript in 30mins
 
TypeScript intro
TypeScript introTypeScript intro
TypeScript intro
 
Introduction to TypeScript by Winston Levi
Introduction to TypeScript by Winston LeviIntroduction to TypeScript by Winston Levi
Introduction to TypeScript by Winston Levi
 
TypeScript Modules
TypeScript ModulesTypeScript Modules
TypeScript Modules
 
Power Leveling your TypeScript
Power Leveling your TypeScriptPower Leveling your TypeScript
Power Leveling your TypeScript
 
TypeScript
TypeScriptTypeScript
TypeScript
 
Typescript 101 introduction
Typescript 101   introductionTypescript 101   introduction
Typescript 101 introduction
 
TypeScript - An Introduction
TypeScript - An IntroductionTypeScript - An Introduction
TypeScript - An Introduction
 
TypeScript Presentation
TypeScript PresentationTypeScript Presentation
TypeScript Presentation
 
Typescript for the programmers who like javascript
Typescript for the programmers who like javascriptTypescript for the programmers who like javascript
Typescript for the programmers who like javascript
 
TypeScript . the JavaScript developer best friend!
TypeScript . the JavaScript developer best friend!TypeScript . the JavaScript developer best friend!
TypeScript . the JavaScript developer best friend!
 
TypeScript: Angular's Secret Weapon
TypeScript: Angular's Secret WeaponTypeScript: Angular's Secret Weapon
TypeScript: Angular's Secret Weapon
 
Typescript
TypescriptTypescript
Typescript
 
Learning typescript
Learning typescriptLearning typescript
Learning typescript
 
AngularConf2015
AngularConf2015AngularConf2015
AngularConf2015
 
TypeScript Overview
TypeScript OverviewTypeScript Overview
TypeScript Overview
 

Viewers also liked

Building End to-End Web Apps Using TypeScript
Building End to-End Web Apps Using TypeScriptBuilding End to-End Web Apps Using TypeScript
Building End to-End Web Apps Using TypeScriptGil Fink
 
Typescript - MentorMate Academy
Typescript - MentorMate AcademyTypescript - MentorMate Academy
Typescript - MentorMate AcademyDimitar Danailov
 
Introduction to Type Script by Sam Goldman, SmartLogic
Introduction to Type Script by Sam Goldman, SmartLogicIntroduction to Type Script by Sam Goldman, SmartLogic
Introduction to Type Script by Sam Goldman, SmartLogicSmartLogic
 
Introduction to Angular with TypeScript for .NET Developers
Introduction to Angular with TypeScript for .NET DevelopersIntroduction to Angular with TypeScript for .NET Developers
Introduction to Angular with TypeScript for .NET DevelopersLaurent Duveau
 
Introduction to TypeScript
Introduction to TypeScriptIntroduction to TypeScript
Introduction to TypeScriptBob German
 
Getting started with typescript and angular 2
Getting started with typescript  and angular 2Getting started with typescript  and angular 2
Getting started with typescript and angular 2Knoldus Inc.
 

Viewers also liked (8)

TypeScript Introduction
TypeScript IntroductionTypeScript Introduction
TypeScript Introduction
 
Building End to-End Web Apps Using TypeScript
Building End to-End Web Apps Using TypeScriptBuilding End to-End Web Apps Using TypeScript
Building End to-End Web Apps Using TypeScript
 
Typescript - MentorMate Academy
Typescript - MentorMate AcademyTypescript - MentorMate Academy
Typescript - MentorMate Academy
 
Introduction to Type Script by Sam Goldman, SmartLogic
Introduction to Type Script by Sam Goldman, SmartLogicIntroduction to Type Script by Sam Goldman, SmartLogic
Introduction to Type Script by Sam Goldman, SmartLogic
 
Type script
Type scriptType script
Type script
 
Introduction to Angular with TypeScript for .NET Developers
Introduction to Angular with TypeScript for .NET DevelopersIntroduction to Angular with TypeScript for .NET Developers
Introduction to Angular with TypeScript for .NET Developers
 
Introduction to TypeScript
Introduction to TypeScriptIntroduction to TypeScript
Introduction to TypeScript
 
Getting started with typescript and angular 2
Getting started with typescript  and angular 2Getting started with typescript  and angular 2
Getting started with typescript and angular 2
 

Similar to Introduction about type script

One language to rule them all type script
One language to rule them all type scriptOne language to rule them all type script
One language to rule them all type scriptGil Fink
 
Web Development: Making it the right way
Web Development: Making it the right wayWeb Development: Making it the right way
Web Development: Making it the right wayYagiz Nizipli
 
Hybrid Application Development
Hybrid Application DevelopmentHybrid Application Development
Hybrid Application DevelopmentYagiz Nizipli
 
Javascript Framework Roundup FYB
Javascript Framework Roundup FYBJavascript Framework Roundup FYB
Javascript Framework Roundup FYBnukeevry1
 
Benefits of Typescript.pptx
Benefits of Typescript.pptxBenefits of Typescript.pptx
Benefits of Typescript.pptxAmitGupta440280
 
Migrating Web SDK from JS to TS
Migrating Web SDK from JS to TSMigrating Web SDK from JS to TS
Migrating Web SDK from JS to TSGrigory Petrov
 
Getting Started with the TypeScript Language
Getting Started with the TypeScript LanguageGetting Started with the TypeScript Language
Getting Started with the TypeScript LanguageGil Fink
 
Feedback from an eclipse plugin developer to provide support to large set of ...
Feedback from an eclipse plugin developer to provide support to large set of ...Feedback from an eclipse plugin developer to provide support to large set of ...
Feedback from an eclipse plugin developer to provide support to large set of ...Aurélien Pupier
 
Scripting Recipes for Testers
Scripting Recipes for TestersScripting Recipes for Testers
Scripting Recipes for TestersAdam Goucher
 
APIs and SDKs: Breaking Into and Succeeding in a Specialty Market
APIs and SDKs: Breaking Into and Succeeding in a Specialty MarketAPIs and SDKs: Breaking Into and Succeeding in a Specialty Market
APIs and SDKs: Breaking Into and Succeeding in a Specialty MarketScott Abel
 
Quo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynoteQuo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynoteChristian Heilmann
 
Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Brent Noorda
 
End to-end apps with type script
End to-end apps with type scriptEnd to-end apps with type script
End to-end apps with type scriptGil Fink
 
How aspects clean your code
How aspects clean your codeHow aspects clean your code
How aspects clean your codeBarbara Fusinska
 
The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015Christian Heilmann
 
Java Applications with Visual Studio
Java Applications with Visual StudioJava Applications with Visual Studio
Java Applications with Visual StudioRed Hat Developers
 

Similar to Introduction about type script (20)

One language to rule them all type script
One language to rule them all type scriptOne language to rule them all type script
One language to rule them all type script
 
Web Development: Making it the right way
Web Development: Making it the right wayWeb Development: Making it the right way
Web Development: Making it the right way
 
Hybrid Application Development
Hybrid Application DevelopmentHybrid Application Development
Hybrid Application Development
 
TypeScript
TypeScriptTypeScript
TypeScript
 
Javascript Framework Roundup FYB
Javascript Framework Roundup FYBJavascript Framework Roundup FYB
Javascript Framework Roundup FYB
 
TypeScript
TypeScriptTypeScript
TypeScript
 
Benefits of Typescript.pptx
Benefits of Typescript.pptxBenefits of Typescript.pptx
Benefits of Typescript.pptx
 
Migrating Web SDK from JS to TS
Migrating Web SDK from JS to TSMigrating Web SDK from JS to TS
Migrating Web SDK from JS to TS
 
Getting Started with the TypeScript Language
Getting Started with the TypeScript LanguageGetting Started with the TypeScript Language
Getting Started with the TypeScript Language
 
Feedback from an eclipse plugin developer to provide support to large set of ...
Feedback from an eclipse plugin developer to provide support to large set of ...Feedback from an eclipse plugin developer to provide support to large set of ...
Feedback from an eclipse plugin developer to provide support to large set of ...
 
Scripting Recipes for Testers
Scripting Recipes for TestersScripting Recipes for Testers
Scripting Recipes for Testers
 
APIs and SDKs: Breaking Into and Succeeding in a Specialty Market
APIs and SDKs: Breaking Into and Succeeding in a Specialty MarketAPIs and SDKs: Breaking Into and Succeeding in a Specialty Market
APIs and SDKs: Breaking Into and Succeeding in a Specialty Market
 
Quo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynoteQuo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynote
 
Type script
Type scriptType script
Type script
 
Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.
 
End to-end apps with type script
End to-end apps with type scriptEnd to-end apps with type script
End to-end apps with type script
 
How aspects clean your code
How aspects clean your codeHow aspects clean your code
How aspects clean your code
 
The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015
 
Build testable react app
Build testable react appBuild testable react app
Build testable react app
 
Java Applications with Visual Studio
Java Applications with Visual StudioJava Applications with Visual Studio
Java Applications with Visual Studio
 

More from Binh Quan Duc

WordPress development checklist
WordPress development checklistWordPress development checklist
WordPress development checklistBinh Quan Duc
 
007. Redux middlewares
007. Redux middlewares007. Redux middlewares
007. Redux middlewaresBinh Quan Duc
 
006. React - Redux framework
006. React - Redux framework006. React - Redux framework
006. React - Redux frameworkBinh Quan Duc
 
005. a React project structure
005. a React project structure005. a React project structure
005. a React project structureBinh Quan Duc
 
004. Working with React component
004. Working with React component004. Working with React component
004. Working with React componentBinh Quan Duc
 
001. Introduction about React
001. Introduction about React001. Introduction about React
001. Introduction about ReactBinh Quan Duc
 
002. Working with Webpack
002. Working with Webpack002. Working with Webpack
002. Working with WebpackBinh Quan Duc
 
Git workflow step by step
Git workflow step by stepGit workflow step by step
Git workflow step by stepBinh Quan Duc
 
Multi language for php with gettext
Multi language for php with gettextMulti language for php with gettext
Multi language for php with gettextBinh Quan Duc
 

More from Binh Quan Duc (10)

WordPress development checklist
WordPress development checklistWordPress development checklist
WordPress development checklist
 
007. Redux middlewares
007. Redux middlewares007. Redux middlewares
007. Redux middlewares
 
006. React - Redux framework
006. React - Redux framework006. React - Redux framework
006. React - Redux framework
 
005. a React project structure
005. a React project structure005. a React project structure
005. a React project structure
 
004. Working with React component
004. Working with React component004. Working with React component
004. Working with React component
 
003. ReactJS basic
003. ReactJS basic003. ReactJS basic
003. ReactJS basic
 
001. Introduction about React
001. Introduction about React001. Introduction about React
001. Introduction about React
 
002. Working with Webpack
002. Working with Webpack002. Working with Webpack
002. Working with Webpack
 
Git workflow step by step
Git workflow step by stepGit workflow step by step
Git workflow step by step
 
Multi language for php with gettext
Multi language for php with gettextMulti language for php with gettext
Multi language for php with gettext
 

Recently uploaded

What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 

Recently uploaded (20)

What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 

Introduction about type script

  • 2. Contents 1. What is TypeScripts? 2. Why using it? 3. Cons 4. Demo
  • 3. What is TypeScript? ❖ TypeScript is designed for large-scale application ❖ Can be compiled to plain Javascript for any browser,any OS and it’s Open Source ❖ Developed and maintained by Microsoft ❖ First appeared: October 1st, 2012, first release July 2014 Current version: 1.8 on January 2016
  • 8. Why using it? ❖ Javascript is not designed for Large-Scale applications
  • 9. Why using it? ❖ Javascript is not designed for Large-Scale applications ❖ OOP programming
  • 10.
  • 11. Why using it? ❖ Javascript is not designed for Large-Scale applications ❖ OOP programming ❖ TypeScript = ES6 + Optional Typing
  • 12.
  • 13. Why using it? ❖ Javascript is not designed for Large-Scale applications ❖ OOP programming ❖ TypeScript = ES6 + Optional Typing ➢ … ➢ For … of ➢ Spread operator ➢ Promise
  • 14. Why using it? ❖ Javascript is not designed for Large-Scale applications ❖ OOP programming ❖ TypeScript = ES6 + Optional Typing ❖ TypeScript is using in common JS Frameworks: ➢ Angular2 ➢ Ionic ➢ Meteor
  • 15. Why using it? ❖ Javascript is not designed for Large-Scale applications ❖ OOP programming ❖ TypeScript = ES6 + Optional Typing ❖ TypeScript is using in common JS Frameworks: ➢ Angular2 ➢ Ionic ➢ Meteor
  • 16.
  • 17.
  • 18. Why using it? ❖ Prevent Javascript common mistake (Non-blocking issue)
  • 19.
  • 20.
  • 21. Why using it? ❖ Prevent Javascript common mistake (Non-blocking issue) ❖ Output for ES5, ES6, ES7 and future Javascript
  • 22. Why using it? ❖ Prevent Javascript common mistake (Non-blocking issue) ❖ Output for ES5, ES6, ES7 and future Javascript ❖ Output to CommonJS/System/AMD/UMD format
  • 26. UMD (Universal Module Definition)
  • 27. Why using it? ❖ Prevent Javascript common mistake (Non-blocking issue) ❖ Output for ES5, ES6, ES7 and future Javascript ❖ Output to CommonJS/AMD format ❖ Unlike CoffeeScript, Dart. Learning TS it is not about learning new language.
  • 29. Dart
  • 31. Why using it? ❖ Prevent Javascript common mistake (Non-blocking issue) ❖ Output for ES5, ES6, ES7 and future Javascript ❖ Output to CommonJS/AMD format ❖ Unlike CoffeeScript, Dart. Learning TS it is not about learning new language. ❖ Easy to discontinue
  • 32. Cons ❖ Write more type definitions ❖ Need to setup Typescript compiler ❖ Remove some free style
  • 33. Demo ❖ Installation $ sudo npm install -g typescript ❖ Tools ➢ Visual Studio, Visual Studio Code, Web Maxtrix ➢ Eclipse, Netbean ➢ Vim ➢ Atom ➢ Sublime ➢ Grunt, Gulp
  • 34. Demo - Supported types ❖ boolean ❖ number ❖ string ❖ enum ❖ any ❖ void ❖ array
  • 35. Demo - ES6 features ❖ let ❖ arrow function ❖ const ❖ template string
  • 36. Demo - OOP ❖ Interface ❖ Supporting ES6 for class-based OOP ❖ Inheritance ❖ public, protected and private members ❖ Modules ❖ Functions ❖ Mixins
  • 37. Demo - Output ❖ ES5 ❖ ES6 ❖ CommonJS ❖ System ❖ AMD ❖ UMD
  • 38. Demo - Migrate from existing application ❖ DefinitelyTyped ➢ https://github.com/DefinitelyTyped/DefinitelyTyped ❖ Tools: ➢ $ sudo npm install -g typings