SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Downloaden Sie, um offline zu lesen
JAVASCRIPT
NO LONGER A “TOY” LANGUAGE
AN LP NGUYEN
KMS TECHNOLOGY
19TH DEC 2015
ICE BREAKER
• 6-PERSON GROUPS
• GET TO KNOW EACH OTHERS
• SHARE YOUR NAME
• FILL MEMBER NAMES AS GROUP NAME
• ASK 3 MOST VALUABLE QUESTIONS
JAVASCRIPT - NO LONGER A “TOY” LANGUAGE
$whoami
▸ Front-end/backend developer in KMS Incubator
▸ Ruby lover since 2011
▸ Has been in a relationship with JavaScript since 2013
An LP Nguyen
anlpnguyen@kms-technology.com
@crashbell
JAVASCRIPT - NO LONGER A “TOY” LANGUAGE
$whoareyou
▸ var, function, callback
▸ hoisting, prototype, closure
▸ fat arrow function, generator, async/await
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
JAVASCRIPT - NO LONGER A “TOY” LANGUAGE
AGENDA
▸ Javascript 90’s – A simple client-side scripting language
▸ Stacks Javascript has been involving
▸ Demo
▸ Significant updates from ES6 and ES7
▸ Quiz and Hands-on practices
▸ Takeaways
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
6
JAVASCRIPT IS MOST
COMMONLY USED AS A CLIENT
SIDE SCRIPTING LANGUAGE.
What is Javascript language? - Quora
JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE
JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE
Fun Facts
▸ Mocha, LiveScript and JavaScript
▸ “Java” in JavaScript was a marketing strategy
▸ JavaScript was developed at Netscape - Not Sun
Microsystems
▸ JavaScript is nothing related to Java except C-like syntax
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
8
JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE
The 90’s
▸ Annoying popups
▸ Status bars
▸ Mouseovers
▸ Auto scrolling
▸ Blinking texts
▸ No DOM, No CSS, No Regex
JavaScript was used in website for fun and
"annoying"
Source: http://www.makeuseof.com/
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
9
JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE
Early 2000s
▸ Standardized by ECMA
▸ Add more features:
▸ Inline events
▸ DOM parser
▸ Window manipulation
▸ …
▸ Solve cross-browser compatibility
problems (not all)
Source: http://www.w3devcampus.com/
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
Still for fun and "annoying"
JavaScript was a “toy” language which
was used to decorate a website and
solve cross-browser compatibilities
11
JAVASCRIPT IS EVERYWHERE.
SO ARE WE ALL OK WITH
THAT?
JavaScript Journey www.theregister.co.uk
STACKS JAVASCRIPT HAS BEEN INVOLVING
STACKS JAVASCRIPT HAS BEEN INVOLVING
Soucre: http://githut.info
13
STACKS JAVASCRIPT HAS BEEN INVOLVING
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
Source: http://www.newspindigital.com/
MEAN
14
STACKS JAVASCRIPT HAS BEEN INVOLVING
Front-End
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
▸ HTML5
▸ Single Page Application frameworks
▸ Front-end workflow
15
STACKS JAVASCRIPT HAS BEEN INVOLVING
SPA Frameworks
Source: http://brewhouse.io
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
16
STACKS JAVASCRIPT HAS BEEN INVOLVING
Front-End Workflow
Source: http://joellongie.com/
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
17
STACKS JAVASCRIPT HAS BEEN INVOLVING
Backend
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
▸ Only NodeJS
▸ But… NodeJS is not backend web application
18
STACKS JAVASCRIPT HAS BEEN INVOLVING
NodeJS
▸ Was invented in 2009
▸ Cross-platform runtime environment
▸ Built on Chrome's V8 JavaScript engine
▸ V8 compiles JavaScript to native machine
code
▸ Event-driven architecture
▸ Non-blocking I/O API
▸ Not only for server-side web application!
Source: http://code-maven.com
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
STACKS JAVASCRIPT HAS BEEN INVOLVING
NodeJS – Event Loop
Source: http://softwareengineeringdaily.com
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
20
STACKS JAVASCRIPT HAS BEEN INVOLVING
MongoDB
▸ A cross-platform document-
oriented database (NoSQL)
▸ Store JSON-like documents
▸ JavaScript object querying
▸ A perfect fit for Node.JS
applications
Source: https://www.mongodb.com
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
21
STACKS JAVASCRIPT HAS BEEN INVOLVING
Mobile/Desktop Applications
▸ Build cross-platform web-based
desktop application with Electron
▸ React Native: A framework to build
native mobile apps using React (Not a
cross platform framework)
▸ Ionic: A framework to build web-
based mobile apps using HTML5 &
AngularJS
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
JavaScript can do almost everything now!
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
DEMO
REALTIME EDITOR SUPPORTS MARKDOWN
ELECTRON + REDUX + NODE.JS + SOCKET.IO
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
TEA BREAK
(IN 10 MINS)
25
IT’S THE NEXT VERSION OF
JAVASCRIPT, AND IT HAS SOME
GREAT NEW FEATURES.
ECMAScript 6 (ES6):
What’s New In The Next Version Of JavaScript
www.smashingmagazine.com
SIGNIFICANT UPDATES FROM ES6/7
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
Here’s not a full walkthrough of ES6/7
features
SIGNIFICANT UPDATES FROM ES6/7
What is ES6/7
▸ JavaScript has been standardized since 1998 under the
name ECMAScript or ES
▸ ES has been designed by TC39 (Technical Committee 39)
▸ ES releases per year (since 2015)
▸ ES6 (ECMAScript 2015) was finalized on June 17, 2015
▸ ES7 (ECMAScript 2016) is work in process
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
MINOR UPDATES
▸ let and const
▸ let is var with block scope
▸ template literals
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
MINOR UPDATES
▸ fat arrow function
▸ () => {}
▸ For..Of
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
CLASSES
▸ Declare a class
▸ Initialize new object
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
ASYNC - CALLBACK HELL
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
ASYNC - PROMISE
▸ Simply understanding: it has success and failure
callbacks
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
ASYNC - PROMISE
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
ASYNC - Chaining Promises
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
SIGNIFICANT UPDATES FROM ES6/7
ASYNC - ASYNC/AWAIT
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
For more ES6 features please find here:
http://es6-features.org
For ES7 async/await feature:
https://github.com/tc39/ecmascript-
asyncawait
Can’t wait for your current project?
Check out https://babeljs.io a JavaScript
compiler
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
HANDS-ON PRACTICES
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
Q & A
Source: http://www.faithdeployed.com
40
JAVASCRIPT - NO LONGER A “TOY” LANGUAGE
TAKEAWAYS
▸ JavaScript is no longer a toy and
amateur language. Let change your
thought (if you have) about it.
▸ JavaScript has changed rapidly on
many technology stacks
▸ New versions of JavaScript have come
up very fast and a lot of changes on
JavaScript.
▸ Get prepared yourself!
Source: http://99u.com
JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
THANK YOU
© 2013 KMS Technology

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to Coffeescript
Introduction to CoffeescriptIntroduction to Coffeescript
Introduction to CoffeescriptIndies Services
 
Super lazy side projects - Hamik Mukelyan
Super lazy side projects - Hamik MukelyanSuper lazy side projects - Hamik Mukelyan
Super lazy side projects - Hamik MukelyanDrew Malone
 
Let's create a multilingual site in WordPress
Let's create a multilingual site in WordPressLet's create a multilingual site in WordPress
Let's create a multilingual site in WordPressMarko Heijnen
 
Why use Go for web development?
Why use Go for web development?Why use Go for web development?
Why use Go for web development?Weng Wei
 
Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Derek Jacoby
 
Deployments... from dreaded to delightful.
Deployments... from dreaded to delightful.Deployments... from dreaded to delightful.
Deployments... from dreaded to delightful.Ryan King
 

Was ist angesagt? (8)

Introduction to Coffeescript
Introduction to CoffeescriptIntroduction to Coffeescript
Introduction to Coffeescript
 
Super lazy side projects - Hamik Mukelyan
Super lazy side projects - Hamik MukelyanSuper lazy side projects - Hamik Mukelyan
Super lazy side projects - Hamik Mukelyan
 
Let's create a multilingual site in WordPress
Let's create a multilingual site in WordPressLet's create a multilingual site in WordPress
Let's create a multilingual site in WordPress
 
Why use Go for web development?
Why use Go for web development?Why use Go for web development?
Why use Go for web development?
 
Javascript Everywhere
Javascript EverywhereJavascript Everywhere
Javascript Everywhere
 
Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Untangling - fall2017 - week 7
Untangling - fall2017 - week 7
 
Deployments... from dreaded to delightful.
Deployments... from dreaded to delightful.Deployments... from dreaded to delightful.
Deployments... from dreaded to delightful.
 
Universal react
Universal reactUniversal react
Universal react
 

Andere mochten auch

Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014KMS Technology
 
Technology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsTechnology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsKMS Technology
 
Technology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUITechnology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUIKMS Technology
 
KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...KMS Technology
 
Caching and IPC with Redis
Caching and IPC with RedisCaching and IPC with Redis
Caching and IPC with RedisKMS Technology
 
Cross platform mobile development with Corona
Cross platform mobile development with CoronaCross platform mobile development with Corona
Cross platform mobile development with CoronaKMS Technology
 
Git - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and ProductivityGit - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and ProductivityKMS Technology
 
About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013KMS Technology
 
Mobile Development Career
Mobile Development CareerMobile Development Career
Mobile Development CareerKMS Technology
 
Contributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarContributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarKMS Technology
 
Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014KMS Technology
 
Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8KMS Technology
 
What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?KMS Technology
 
Big Data Overview 2013-2014
Big Data Overview 2013-2014Big Data Overview 2013-2014
Big Data Overview 2013-2014KMS Technology
 
Cross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinCross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinKMS Technology
 
Preparations For A Successful Interview
Preparations For A Successful InterviewPreparations For A Successful Interview
Preparations For A Successful InterviewKMS Technology
 
Become Software Tester or Developer
Become Software Tester or DeveloperBecome Software Tester or Developer
Become Software Tester or DeveloperKMS Technology
 

Andere mochten auch (20)

Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014
 
Technology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsTechnology Application Development Trends For IT Students
Technology Application Development Trends For IT Students
 
Technology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUITechnology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUI
 
KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...
 
Caching and IPC with Redis
Caching and IPC with RedisCaching and IPC with Redis
Caching and IPC with Redis
 
KMS' Stories
KMS' StoriesKMS' Stories
KMS' Stories
 
Cross platform mobile development with Corona
Cross platform mobile development with CoronaCross platform mobile development with Corona
Cross platform mobile development with Corona
 
Git - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and ProductivityGit - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and Productivity
 
About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013
 
Amazon web services
Amazon web servicesAmazon web services
Amazon web services
 
KMS Introduction
KMS IntroductionKMS Introduction
KMS Introduction
 
Mobile Development Career
Mobile Development CareerMobile Development Career
Mobile Development Career
 
Contributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarContributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project Seminar
 
Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014
 
Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8
 
What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?
 
Big Data Overview 2013-2014
Big Data Overview 2013-2014Big Data Overview 2013-2014
Big Data Overview 2013-2014
 
Cross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinCross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and Xamarin
 
Preparations For A Successful Interview
Preparations For A Successful InterviewPreparations For A Successful Interview
Preparations For A Successful Interview
 
Become Software Tester or Developer
Become Software Tester or DeveloperBecome Software Tester or Developer
Become Software Tester or Developer
 

Ähnlich wie JavaScript No longer A “toy” Language

JavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SK
JavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SKJavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SK
JavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SKDavid Wesst
 
CoffeeScript: A beginner's presentation for beginners copy
CoffeeScript: A beginner's presentation for beginners copyCoffeeScript: A beginner's presentation for beginners copy
CoffeeScript: A beginner's presentation for beginners copyPatrick Devins
 
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...DevDay.org
 
"Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K...
"Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K..."Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K...
"Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K...Tech in Asia ID
 
Steve_Loar_WordCamp-talk.pptx
Steve_Loar_WordCamp-talk.pptxSteve_Loar_WordCamp-talk.pptx
Steve_Loar_WordCamp-talk.pptxjoshiashutosh686
 
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning AcademyJavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning AcademyParag Mujumdar
 
Language-Oriented Programming and Language Workbenches: Building Domain Langu...
Language-Oriented Programming and Language Workbenches: Building Domain Langu...Language-Oriented Programming and Language Workbenches: Building Domain Langu...
Language-Oriented Programming and Language Workbenches: Building Domain Langu...elliando dias
 
Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018
Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018
Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018Adam Hill
 
Rackspace Hack Night - Vagrant & Packer
Rackspace Hack Night - Vagrant & PackerRackspace Hack Night - Vagrant & Packer
Rackspace Hack Night - Vagrant & PackerMarc Cluet
 
Polyglot Adventures for the Modern Java Developer #javaone2017
Polyglot Adventures for the Modern Java Developer #javaone2017Polyglot Adventures for the Modern Java Developer #javaone2017
Polyglot Adventures for the Modern Java Developer #javaone2017Mario-Leander Reimer
 
Polyglot Adventures for the Modern Java Developer
Polyglot Adventures for the Modern Java DeveloperPolyglot Adventures for the Modern Java Developer
Polyglot Adventures for the Modern Java DeveloperQAware GmbH
 
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...Peter Hecker
 
JavaScript: Past, Present, Future
JavaScript: Past, Present, FutureJavaScript: Past, Present, Future
JavaScript: Past, Present, FutureJungryul Choi
 
D installation manual
D installation manualD installation manual
D installation manualFaheem Akbar
 
JavaScript Interview Questions and Answers | Full Stack Web Development Train...
JavaScript Interview Questions and Answers | Full Stack Web Development Train...JavaScript Interview Questions and Answers | Full Stack Web Development Train...
JavaScript Interview Questions and Answers | Full Stack Web Development Train...Edureka!
 

Ähnlich wie JavaScript No longer A “toy” Language (20)

JavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SK
JavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SKJavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SK
JavaScript Revolution - 5/Nov/13 - PrDC Saskatoon, SK
 
Amoocon May 2009 Germany
Amoocon May 2009   GermanyAmoocon May 2009   Germany
Amoocon May 2009 Germany
 
CoffeeScript: A beginner's presentation for beginners copy
CoffeeScript: A beginner's presentation for beginners copyCoffeeScript: A beginner's presentation for beginners copy
CoffeeScript: A beginner's presentation for beginners copy
 
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
 
Coffee script throwdown
Coffee script throwdownCoffee script throwdown
Coffee script throwdown
 
"Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K...
"Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K..."Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K...
"Building Cross-platform Without Sacrificing Performance" by Simon Sturmer (K...
 
Play framework
Play frameworkPlay framework
Play framework
 
Steve_Loar_WordCamp-talk.pptx
Steve_Loar_WordCamp-talk.pptxSteve_Loar_WordCamp-talk.pptx
Steve_Loar_WordCamp-talk.pptx
 
slides-students-C03.pdf
slides-students-C03.pdfslides-students-C03.pdf
slides-students-C03.pdf
 
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning AcademyJavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
 
Language-Oriented Programming and Language Workbenches: Building Domain Langu...
Language-Oriented Programming and Language Workbenches: Building Domain Langu...Language-Oriented Programming and Language Workbenches: Building Domain Langu...
Language-Oriented Programming and Language Workbenches: Building Domain Langu...
 
Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018
Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018
Oops Youve Got A Mobile Enterprise App – DevFestWeekend 2018
 
Rackspace Hack Night - Vagrant & Packer
Rackspace Hack Night - Vagrant & PackerRackspace Hack Night - Vagrant & Packer
Rackspace Hack Night - Vagrant & Packer
 
Polyglot Adventures for the Modern Java Developer #javaone2017
Polyglot Adventures for the Modern Java Developer #javaone2017Polyglot Adventures for the Modern Java Developer #javaone2017
Polyglot Adventures for the Modern Java Developer #javaone2017
 
Polyglot Adventures for the Modern Java Developer
Polyglot Adventures for the Modern Java DeveloperPolyglot Adventures for the Modern Java Developer
Polyglot Adventures for the Modern Java Developer
 
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
 
Foolangjs
FoolangjsFoolangjs
Foolangjs
 
JavaScript: Past, Present, Future
JavaScript: Past, Present, FutureJavaScript: Past, Present, Future
JavaScript: Past, Present, Future
 
D installation manual
D installation manualD installation manual
D installation manual
 
JavaScript Interview Questions and Answers | Full Stack Web Development Train...
JavaScript Interview Questions and Answers | Full Stack Web Development Train...JavaScript Interview Questions and Answers | Full Stack Web Development Train...
JavaScript Interview Questions and Answers | Full Stack Web Development Train...
 

Mehr von KMS Technology

A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester KMS Technology
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?KMS Technology
 
Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testingKMS Technology
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOpsKMS Technology
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page ApplicationKMS Technology
 
AWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkAWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkKMS Technology
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...KMS Technology
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberKMS Technology
 
Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014KMS Technology
 
Cross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin WebinarCross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin WebinarKMS Technology
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & TrendKMS Technology
 
Software Technology Trends
Software Technology TrendsSoftware Technology Trends
Software Technology TrendsKMS Technology
 
Framework For Automation Testing Practice Sharing
Framework For Automation Testing Practice SharingFramework For Automation Testing Practice Sharing
Framework For Automation Testing Practice SharingKMS Technology
 

Mehr von KMS Technology (16)

A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
 
Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testing
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
 
KMSNext Roadmap
KMSNext RoadmapKMSNext Roadmap
KMSNext Roadmap
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page Application
 
AWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkAWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic Beanstalk
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
 
KMS Introduction
KMS IntroductionKMS Introduction
KMS Introduction
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
 
Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014
 
Cross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin WebinarCross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin Webinar
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
 
Software Technology Trends
Software Technology TrendsSoftware Technology Trends
Software Technology Trends
 
Framework For Automation Testing Practice Sharing
Framework For Automation Testing Practice SharingFramework For Automation Testing Practice Sharing
Framework For Automation Testing Practice Sharing
 

Kürzlich hochgeladen

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Kürzlich hochgeladen (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

JavaScript No longer A “toy” Language

  • 1. JAVASCRIPT NO LONGER A “TOY” LANGUAGE AN LP NGUYEN KMS TECHNOLOGY 19TH DEC 2015
  • 2. ICE BREAKER • 6-PERSON GROUPS • GET TO KNOW EACH OTHERS • SHARE YOUR NAME • FILL MEMBER NAMES AS GROUP NAME • ASK 3 MOST VALUABLE QUESTIONS
  • 3. JAVASCRIPT - NO LONGER A “TOY” LANGUAGE $whoami ▸ Front-end/backend developer in KMS Incubator ▸ Ruby lover since 2011 ▸ Has been in a relationship with JavaScript since 2013 An LP Nguyen anlpnguyen@kms-technology.com @crashbell
  • 4. JAVASCRIPT - NO LONGER A “TOY” LANGUAGE $whoareyou ▸ var, function, callback ▸ hoisting, prototype, closure ▸ fat arrow function, generator, async/await JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 5. JAVASCRIPT - NO LONGER A “TOY” LANGUAGE AGENDA ▸ Javascript 90’s – A simple client-side scripting language ▸ Stacks Javascript has been involving ▸ Demo ▸ Significant updates from ES6 and ES7 ▸ Quiz and Hands-on practices ▸ Takeaways JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 6. 6 JAVASCRIPT IS MOST COMMONLY USED AS A CLIENT SIDE SCRIPTING LANGUAGE. What is Javascript language? - Quora JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE
  • 7. JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE Fun Facts ▸ Mocha, LiveScript and JavaScript ▸ “Java” in JavaScript was a marketing strategy ▸ JavaScript was developed at Netscape - Not Sun Microsystems ▸ JavaScript is nothing related to Java except C-like syntax JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 8. 8 JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE The 90’s ▸ Annoying popups ▸ Status bars ▸ Mouseovers ▸ Auto scrolling ▸ Blinking texts ▸ No DOM, No CSS, No Regex JavaScript was used in website for fun and "annoying" Source: http://www.makeuseof.com/ JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 9. 9 JAVASCRIPT 90’S – A SIMPLE CLIENT-SIDE SCRIPTING LANGUAGE Early 2000s ▸ Standardized by ECMA ▸ Add more features: ▸ Inline events ▸ DOM parser ▸ Window manipulation ▸ … ▸ Solve cross-browser compatibility problems (not all) Source: http://www.w3devcampus.com/ JAVASCRIPT – NO LONGER A “TOY” LANGUAGE Still for fun and "annoying"
  • 10. JavaScript was a “toy” language which was used to decorate a website and solve cross-browser compatibilities
  • 11. 11 JAVASCRIPT IS EVERYWHERE. SO ARE WE ALL OK WITH THAT? JavaScript Journey www.theregister.co.uk STACKS JAVASCRIPT HAS BEEN INVOLVING
  • 12. STACKS JAVASCRIPT HAS BEEN INVOLVING Soucre: http://githut.info
  • 13. 13 STACKS JAVASCRIPT HAS BEEN INVOLVING JAVASCRIPT – NO LONGER A “TOY” LANGUAGE Source: http://www.newspindigital.com/ MEAN
  • 14. 14 STACKS JAVASCRIPT HAS BEEN INVOLVING Front-End JAVASCRIPT – NO LONGER A “TOY” LANGUAGE ▸ HTML5 ▸ Single Page Application frameworks ▸ Front-end workflow
  • 15. 15 STACKS JAVASCRIPT HAS BEEN INVOLVING SPA Frameworks Source: http://brewhouse.io JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 16. 16 STACKS JAVASCRIPT HAS BEEN INVOLVING Front-End Workflow Source: http://joellongie.com/ JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 17. 17 STACKS JAVASCRIPT HAS BEEN INVOLVING Backend JAVASCRIPT – NO LONGER A “TOY” LANGUAGE ▸ Only NodeJS ▸ But… NodeJS is not backend web application
  • 18. 18 STACKS JAVASCRIPT HAS BEEN INVOLVING NodeJS ▸ Was invented in 2009 ▸ Cross-platform runtime environment ▸ Built on Chrome's V8 JavaScript engine ▸ V8 compiles JavaScript to native machine code ▸ Event-driven architecture ▸ Non-blocking I/O API ▸ Not only for server-side web application! Source: http://code-maven.com JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 19. STACKS JAVASCRIPT HAS BEEN INVOLVING NodeJS – Event Loop Source: http://softwareengineeringdaily.com JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 20. 20 STACKS JAVASCRIPT HAS BEEN INVOLVING MongoDB ▸ A cross-platform document- oriented database (NoSQL) ▸ Store JSON-like documents ▸ JavaScript object querying ▸ A perfect fit for Node.JS applications Source: https://www.mongodb.com JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 21. 21 STACKS JAVASCRIPT HAS BEEN INVOLVING Mobile/Desktop Applications ▸ Build cross-platform web-based desktop application with Electron ▸ React Native: A framework to build native mobile apps using React (Not a cross platform framework) ▸ Ionic: A framework to build web- based mobile apps using HTML5 & AngularJS JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 22. JavaScript can do almost everything now!
  • 23. JAVASCRIPT – NO LONGER A “TOY” LANGUAGE DEMO REALTIME EDITOR SUPPORTS MARKDOWN ELECTRON + REDUX + NODE.JS + SOCKET.IO
  • 24. JAVASCRIPT – NO LONGER A “TOY” LANGUAGE TEA BREAK (IN 10 MINS)
  • 25. 25 IT’S THE NEXT VERSION OF JAVASCRIPT, AND IT HAS SOME GREAT NEW FEATURES. ECMAScript 6 (ES6): What’s New In The Next Version Of JavaScript www.smashingmagazine.com SIGNIFICANT UPDATES FROM ES6/7 JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 26. Here’s not a full walkthrough of ES6/7 features
  • 27. SIGNIFICANT UPDATES FROM ES6/7 What is ES6/7 ▸ JavaScript has been standardized since 1998 under the name ECMAScript or ES ▸ ES has been designed by TC39 (Technical Committee 39) ▸ ES releases per year (since 2015) ▸ ES6 (ECMAScript 2015) was finalized on June 17, 2015 ▸ ES7 (ECMAScript 2016) is work in process JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 28. SIGNIFICANT UPDATES FROM ES6/7 JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 29. SIGNIFICANT UPDATES FROM ES6/7 MINOR UPDATES ▸ let and const ▸ let is var with block scope ▸ template literals JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 30. SIGNIFICANT UPDATES FROM ES6/7 MINOR UPDATES ▸ fat arrow function ▸ () => {} ▸ For..Of JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 31. SIGNIFICANT UPDATES FROM ES6/7 CLASSES ▸ Declare a class ▸ Initialize new object JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 32. SIGNIFICANT UPDATES FROM ES6/7 ASYNC - CALLBACK HELL JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 33. SIGNIFICANT UPDATES FROM ES6/7 ASYNC - PROMISE ▸ Simply understanding: it has success and failure callbacks JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 34. SIGNIFICANT UPDATES FROM ES6/7 ASYNC - PROMISE JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 35. SIGNIFICANT UPDATES FROM ES6/7 ASYNC - Chaining Promises JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 36. SIGNIFICANT UPDATES FROM ES6/7 ASYNC - ASYNC/AWAIT JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 37. For more ES6 features please find here: http://es6-features.org For ES7 async/await feature: https://github.com/tc39/ecmascript- asyncawait Can’t wait for your current project? Check out https://babeljs.io a JavaScript compiler
  • 38. JAVASCRIPT – NO LONGER A “TOY” LANGUAGE HANDS-ON PRACTICES
  • 39. JAVASCRIPT – NO LONGER A “TOY” LANGUAGE Q & A Source: http://www.faithdeployed.com
  • 40. 40 JAVASCRIPT - NO LONGER A “TOY” LANGUAGE TAKEAWAYS ▸ JavaScript is no longer a toy and amateur language. Let change your thought (if you have) about it. ▸ JavaScript has changed rapidly on many technology stacks ▸ New versions of JavaScript have come up very fast and a lot of changes on JavaScript. ▸ Get prepared yourself! Source: http://99u.com JAVASCRIPT – NO LONGER A “TOY” LANGUAGE
  • 41. THANK YOU © 2013 KMS Technology