12
Introduction to Node.js 1

Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015: Fat arrows function Classes Destructuring Run entirely in a single

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

Introduction to Node.js

1

Page 2: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

Atwood’s Law“any application that can be written in JavaScript, will eventually be written in JavaScript.”

-- Jeff Atwood, Stack Overflow Co-founder. Source: http://blog.codinghorror.com/the-principle-of-least-power/

2

Page 4: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

http://bellard.org/jslinux/ 4

Page 5: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

ECMAScript 6June 2015: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf

● Fat arrows function● Classes● Destructuring● Promises● Modules● Generators

5

Page 6: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

What is Node.js“Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.

Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient.”

Allows you to build scalable network applications using JavaScript on the server-side.

6

Page 7: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

Blocking

7

Page 8: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

Non blocking

8

Page 9: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

● Run entirely in a single thread● Passes I/O requests to the event loop, along with callbacks

Your code then:

● Goes to sleep● Uses no system resources

● Will be notified via callback when I/O is complete

9

Page 10: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

Event Loop

10

Page 11: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

Event Loop

11

Page 12: Introduction to Node - MathUniPDtullio/IS-1/2015/Materiale/...ECMAScript 6 June 2015:  Fat arrows function Classes Destructuring Run entirely in a single

12