SlideShare a Scribd company logo
1 of 37
Download to read offline
Javascript Technologies
Agenda
★ Overview (History, Current Status, MEAN or MERN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Introduction
○ Angular
○ React
★ Comparison (Angular vs React)
Agenda
★ Overview (History, Current Status, MEAN or MERN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Overview
○ Angular
○ React
★ Comparison (Angular vs React)
Overview
★ JavaScript was created in 1995 by Brendan Eich during his time at Netscape.
★ By 1996, the official ECMA specification had been submitted with both
Microsoft and Netscape implementing JavaScript in their flagship browsers.
Overview Cont.
Over the subsequent twenty years or so, there have been:
★ new versions of the ECMAScript specification
★ JavaScript libraries such as jQuery
★ Client-side JavaScript MVC frameworks
★ JavaScript controlling robots with Tessel
★ The rise of server-side JavaScript (node)
Overview cont. Ranking
★ GitHut - Programming Languages and GitHub
★ Stackoverflow - Most Popular Technologies
Overview cont. Node.js in Production
1. Node.js at PayPal
2. Ruby on Rails vs. Node.js at LinkedIn
3. 8 TOP COMPANIES THAT RELY ON NODE.JS
a. NETFLIX
b. UBER
c. PAYPAL
d. LINKEDIN
e. NASA
f. ...
Agenda
★ Overview (History, Current Status, MEAN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Overview
○ Angular
○ React
★ Comparison (Angular vs React)
What is the Node.js
Node.js is an
★ Open source
★ Event-driven
★ Cross-platform runtime environment
★ For building server side and networking applications using JavaScript
Synchronous or Blocking I/O
Non-blocking I/O cont.
Node.js Architecture
Node.js Programming Model
★ Asynchronous coding
○ Callback
○ Promises
○ Event Emitter
Node.js Features
★ Easy to learn (Javascript)
★ Full stack JavaScript
★ Concurrent request handling (Asynchronous I/O)
★ Lightweight (single Thread)
★ code sharing and reuse (Modularity)
★ Huge Community
Nodejs Frameworks
★ Node.js Frameworks
Node.js Frameworks
It’s better to understand all the technologies independently rather than expect all
applications to follow a single format.
Agenda
★ Overview (History, Current Status, MEAN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Overview
○ Angular
○ React
★ Comparison (Angular vs React)
Frontend Frameworks
Single Page Application
★ code can be retrieved in a single page load
★ data is sent / received using Ajax
★ improved performance
SPA Characteristics
★ Ajax
★ Templating
★ Routing
Agenda
★ Overview (History, Current Status, MEAN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Overview
○ Angular
○ React
★ Comparison (Angular vs React)
Angular
A Typescript web application Framework
★ Created in 2009 by Miško Hevery and Adam Abrons
★ Backed by Google
★ Angularjs 2010
★ Angular 2 2016
★ Angular is written in TypeScript.
★ Angular is complete MVC
Angular cont. Architecture
★ Module (ngModule)
★ Component
★ Template
★ Metadata
★ Service
Angular cont. Architecture
Angular cont. Architecture
Template Syntax
A template looks like regular HTML, except that it also contains Angular template
syntax, which alters the HTML based on your app's logic and the state of app and
DOM data. Your template can use:
★ Data binding to coordinate the app and DOM data,
★ Pipes to transform data before it is displayed.
★ Directives to apply app logic to what gets displayed.
Databinding
★ Interpolation
★ property binding.
★ Event binding
★ Two-way data binding
Agenda
★ Overview (History, Current Status, MEAN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Overview
○ Angular
○ React
★ Comparison (Angular vs React)
React
A JavaScript library for building user interfaces
★ Initial Release 2013
★ Less complex than other alternatives
★ Backed by Facebook
★ Component-based
React con. Architecture
★ Components
★ JSX
★ State
★ The virtual DOM
○ Why is the virtual DOM helpful: Batching
Thinking in React
Thinking in React
★ FilterableProductTable (orange): contains the
entirety of the example
★ SearchBar (blue): receives all user input
★ ProductTable (green): displays and filters the data
collection based on user input
★ ProductCategoryRow (turquoise): displays a
heading for each category
★ ProductRow (red): displays a row for each product
Agenda
★ Overview (History, Current Status, MEAN)
★ Introduction to Nodejs
★ Frontend Frameworks
○ Overview
○ Angular
○ React
★ Comparison (Angular vs React)
React vs Angular
Angular 2+ React
Description A Typescript web application Framework A JavaScript library for building user interfaces
Initial Release 2016 2013
Language Typescript Javascript ES6
Backed by Google Facebook
Mobile support Native-script React-native
Desktop support Yes Electron
React vs Angular
Architecture Module Component
Dependency Injection Yes
routing/form validation ... Maintained by Angular team Third party
Learning Curve Harder Easy
View or Template Html with directives and pipes JSX
Can use with multi-page application NO Yes
React vs Angular
Angular React
Jobs
Github
Stackoverflow
Google trends
Size (KB) More than 700 Les that 200
Community Support
References
★ Understanding the Node.js Event loop
★ Blocking vs Non-blocking System
★ Node.js core concepts
Thanks
Questions?

More Related Content

What's hot

Cross-platform JavaScript
Cross-platform JavaScriptCross-platform JavaScript
Cross-platform JavaScriptHristo Chakarov
 
Rails dev experices
Rails dev expericesRails dev experices
Rails dev expericesDavid_fu
 
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...NETWAYS
 
Running Through Typescript
Running Through TypescriptRunning Through Typescript
Running Through TypescriptNikhil Wanpal
 
NE Scala 2016 roundup
NE Scala 2016 roundupNE Scala 2016 roundup
NE Scala 2016 roundupHung Lin
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...mfrancis
 
NODE JS OC Meetup 1
NODE JS OC Meetup 1NODE JS OC Meetup 1
NODE JS OC Meetup 1eddify
 
Введение в Apache Cassandra
Введение в Apache CassandraВведение в Apache Cassandra
Введение в Apache CassandraOpen-IT
 
PreJSS: the final point in the CSS war
PreJSS: the final point in the CSS warPreJSS: the final point in the CSS war
PreJSS: the final point in the CSS warDenis Izmaylov
 
Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018
Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018
Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018Mike Hale
 
HTML5 Editing Validation
HTML5 Editing ValidationHTML5 Editing Validation
HTML5 Editing ValidationOctavian Nadolu
 
JS digest. May 2017
JS digest. May 2017JS digest. May 2017
JS digest. May 2017ElifTech
 
Decoupled (Headless) Drupal
Decoupled (Headless) DrupalDecoupled (Headless) Drupal
Decoupled (Headless) DrupalDaniel Stout
 
JS digest. Mid-Summer 2017
JS digest. Mid-Summer 2017JS digest. Mid-Summer 2017
JS digest. Mid-Summer 2017ElifTech
 
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015AboutYouGmbH
 
Building the AO tech blog
Building the AO tech blogBuilding the AO tech blog
Building the AO tech blogAO Tech
 
Building the AO Tech Blog
Building the AO Tech BlogBuilding the AO Tech Blog
Building the AO Tech BlogSarahNorris47
 

What's hot (20)

Cross-platform JavaScript
Cross-platform JavaScriptCross-platform JavaScript
Cross-platform JavaScript
 
Rails dev experices
Rails dev expericesRails dev experices
Rails dev experices
 
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
 
Node.js Test
Node.js TestNode.js Test
Node.js Test
 
Rails data migrations
Rails data migrationsRails data migrations
Rails data migrations
 
Running Through Typescript
Running Through TypescriptRunning Through Typescript
Running Through Typescript
 
NE Scala 2016 roundup
NE Scala 2016 roundupNE Scala 2016 roundup
NE Scala 2016 roundup
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
NODE JS OC Meetup 1
NODE JS OC Meetup 1NODE JS OC Meetup 1
NODE JS OC Meetup 1
 
Введение в Apache Cassandra
Введение в Apache CassandraВведение в Apache Cassandra
Введение в Apache Cassandra
 
PreJSS: the final point in the CSS war
PreJSS: the final point in the CSS warPreJSS: the final point in the CSS war
PreJSS: the final point in the CSS war
 
Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018
Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018
Gutenberg: You Can't Teach an Old Dev New Tricks - WordCamp Chicago 2018
 
HTML5 Editing Validation
HTML5 Editing ValidationHTML5 Editing Validation
HTML5 Editing Validation
 
JS digest. May 2017
JS digest. May 2017JS digest. May 2017
JS digest. May 2017
 
Decoupled (Headless) Drupal
Decoupled (Headless) DrupalDecoupled (Headless) Drupal
Decoupled (Headless) Drupal
 
JS digest. Mid-Summer 2017
JS digest. Mid-Summer 2017JS digest. Mid-Summer 2017
JS digest. Mid-Summer 2017
 
HTML5 and friends
HTML5 and friendsHTML5 and friends
HTML5 and friends
 
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
 
Building the AO tech blog
Building the AO tech blogBuilding the AO tech blog
Building the AO tech blog
 
Building the AO Tech Blog
Building the AO Tech BlogBuilding the AO Tech Blog
Building the AO Tech Blog
 

Similar to Introduction to javascript technologies

FULL stack -> MEAN stack
FULL stack -> MEAN stackFULL stack -> MEAN stack
FULL stack -> MEAN stackAshok Raj
 
Building an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stackBuilding an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stackdivyapisces
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?Balajihope
 
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...Hariharan Ganesan
 
An introduction to Node.js
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.jsKasey McCurdy
 
Mongodb open data day 2014
Mongodb open data day 2014Mongodb open data day 2014
Mongodb open data day 2014David Green
 
Angular2 - A story from the trenches
Angular2 - A story from the trenchesAngular2 - A story from the trenches
Angular2 - A story from the trenchesJohannes Rudolph
 
Angular - Chapter 1 - Introduction
 Angular - Chapter 1 - Introduction Angular - Chapter 1 - Introduction
Angular - Chapter 1 - IntroductionWebStackAcademy
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React NativeWaqqas Jabbar
 
Frontend War: Angular vs React vs Vue
Frontend War: Angular vs React vs VueFrontend War: Angular vs React vs Vue
Frontend War: Angular vs React vs VueMarudi Subakti
 
Terraform 101: What's infrastructure as code?
Terraform 101: What's infrastructure as code?Terraform 101: What's infrastructure as code?
Terraform 101: What's infrastructure as code?GDX Wu
 
Angular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdfAngular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdfWPWeb Infotech
 
Mean Stack for Beginners
Mean Stack for BeginnersMean Stack for Beginners
Mean Stack for BeginnersJEMLI Fathi
 
React vs angular what to choose for your app
React vs angular what to choose for your appReact vs angular what to choose for your app
React vs angular what to choose for your appConcetto Labs
 
Building RESTtful services in MEAN
Building RESTtful services in MEANBuilding RESTtful services in MEAN
Building RESTtful services in MEANMadhukara Phatak
 

Similar to Introduction to javascript technologies (20)

Mean stack
Mean stackMean stack
Mean stack
 
FULL stack -> MEAN stack
FULL stack -> MEAN stackFULL stack -> MEAN stack
FULL stack -> MEAN stack
 
Building an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stackBuilding an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stack
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?
 
Engineering Frontends
Engineering FrontendsEngineering Frontends
Engineering Frontends
 
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
 
An introduction to Node.js
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.js
 
Mongodb open data day 2014
Mongodb open data day 2014Mongodb open data day 2014
Mongodb open data day 2014
 
Angular2 - A story from the trenches
Angular2 - A story from the trenchesAngular2 - A story from the trenches
Angular2 - A story from the trenches
 
Angular - Chapter 1 - Introduction
 Angular - Chapter 1 - Introduction Angular - Chapter 1 - Introduction
Angular - Chapter 1 - Introduction
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
Frontend War: Angular vs React vs Vue
Frontend War: Angular vs React vs VueFrontend War: Angular vs React vs Vue
Frontend War: Angular vs React vs Vue
 
Terraform 101: What's infrastructure as code?
Terraform 101: What's infrastructure as code?Terraform 101: What's infrastructure as code?
Terraform 101: What's infrastructure as code?
 
Angular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdfAngular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdf
 
Mean Stack for Beginners
Mean Stack for BeginnersMean Stack for Beginners
Mean Stack for Beginners
 
React vs angular what to choose for your app
React vs angular what to choose for your appReact vs angular what to choose for your app
React vs angular what to choose for your app
 
MEAN Stack
MEAN StackMEAN Stack
MEAN Stack
 
MEAN Stack
MEAN StackMEAN Stack
MEAN Stack
 
AFTAB AHMED.pptx
AFTAB AHMED.pptxAFTAB AHMED.pptx
AFTAB AHMED.pptx
 
Building RESTtful services in MEAN
Building RESTtful services in MEANBuilding RESTtful services in MEAN
Building RESTtful services in MEAN
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 

Introduction to javascript technologies

  • 2. Agenda ★ Overview (History, Current Status, MEAN or MERN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Introduction ○ Angular ○ React ★ Comparison (Angular vs React)
  • 3. Agenda ★ Overview (History, Current Status, MEAN or MERN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Overview ○ Angular ○ React ★ Comparison (Angular vs React)
  • 4. Overview ★ JavaScript was created in 1995 by Brendan Eich during his time at Netscape. ★ By 1996, the official ECMA specification had been submitted with both Microsoft and Netscape implementing JavaScript in their flagship browsers.
  • 5. Overview Cont. Over the subsequent twenty years or so, there have been: ★ new versions of the ECMAScript specification ★ JavaScript libraries such as jQuery ★ Client-side JavaScript MVC frameworks ★ JavaScript controlling robots with Tessel ★ The rise of server-side JavaScript (node)
  • 6. Overview cont. Ranking ★ GitHut - Programming Languages and GitHub ★ Stackoverflow - Most Popular Technologies
  • 7. Overview cont. Node.js in Production 1. Node.js at PayPal 2. Ruby on Rails vs. Node.js at LinkedIn 3. 8 TOP COMPANIES THAT RELY ON NODE.JS a. NETFLIX b. UBER c. PAYPAL d. LINKEDIN e. NASA f. ...
  • 8. Agenda ★ Overview (History, Current Status, MEAN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Overview ○ Angular ○ React ★ Comparison (Angular vs React)
  • 9. What is the Node.js Node.js is an ★ Open source ★ Event-driven ★ Cross-platform runtime environment ★ For building server side and networking applications using JavaScript
  • 13. Node.js Programming Model ★ Asynchronous coding ○ Callback ○ Promises ○ Event Emitter
  • 14. Node.js Features ★ Easy to learn (Javascript) ★ Full stack JavaScript ★ Concurrent request handling (Asynchronous I/O) ★ Lightweight (single Thread) ★ code sharing and reuse (Modularity) ★ Huge Community
  • 16. Node.js Frameworks It’s better to understand all the technologies independently rather than expect all applications to follow a single format.
  • 17. Agenda ★ Overview (History, Current Status, MEAN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Overview ○ Angular ○ React ★ Comparison (Angular vs React)
  • 18. Frontend Frameworks Single Page Application ★ code can be retrieved in a single page load ★ data is sent / received using Ajax ★ improved performance
  • 19. SPA Characteristics ★ Ajax ★ Templating ★ Routing
  • 20. Agenda ★ Overview (History, Current Status, MEAN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Overview ○ Angular ○ React ★ Comparison (Angular vs React)
  • 21. Angular A Typescript web application Framework ★ Created in 2009 by Miško Hevery and Adam Abrons ★ Backed by Google ★ Angularjs 2010 ★ Angular 2 2016 ★ Angular is written in TypeScript. ★ Angular is complete MVC
  • 22. Angular cont. Architecture ★ Module (ngModule) ★ Component ★ Template ★ Metadata ★ Service
  • 25. Template Syntax A template looks like regular HTML, except that it also contains Angular template syntax, which alters the HTML based on your app's logic and the state of app and DOM data. Your template can use: ★ Data binding to coordinate the app and DOM data, ★ Pipes to transform data before it is displayed. ★ Directives to apply app logic to what gets displayed.
  • 26. Databinding ★ Interpolation ★ property binding. ★ Event binding ★ Two-way data binding
  • 27. Agenda ★ Overview (History, Current Status, MEAN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Overview ○ Angular ○ React ★ Comparison (Angular vs React)
  • 28. React A JavaScript library for building user interfaces ★ Initial Release 2013 ★ Less complex than other alternatives ★ Backed by Facebook ★ Component-based
  • 29. React con. Architecture ★ Components ★ JSX ★ State ★ The virtual DOM ○ Why is the virtual DOM helpful: Batching
  • 31. Thinking in React ★ FilterableProductTable (orange): contains the entirety of the example ★ SearchBar (blue): receives all user input ★ ProductTable (green): displays and filters the data collection based on user input ★ ProductCategoryRow (turquoise): displays a heading for each category ★ ProductRow (red): displays a row for each product
  • 32. Agenda ★ Overview (History, Current Status, MEAN) ★ Introduction to Nodejs ★ Frontend Frameworks ○ Overview ○ Angular ○ React ★ Comparison (Angular vs React)
  • 33. React vs Angular Angular 2+ React Description A Typescript web application Framework A JavaScript library for building user interfaces Initial Release 2016 2013 Language Typescript Javascript ES6 Backed by Google Facebook Mobile support Native-script React-native Desktop support Yes Electron
  • 34. React vs Angular Architecture Module Component Dependency Injection Yes routing/form validation ... Maintained by Angular team Third party Learning Curve Harder Easy View or Template Html with directives and pipes JSX Can use with multi-page application NO Yes
  • 35. React vs Angular Angular React Jobs Github Stackoverflow Google trends Size (KB) More than 700 Les that 200 Community Support
  • 36. References ★ Understanding the Node.js Event loop ★ Blocking vs Non-blocking System ★ Node.js core concepts