Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
This is Node.js
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Alexander Beletsky
July 09, 2014
Programming
10
440
This is Node.js
The talk I gave on UA Dev Club, 8-Jul-2014
Alexander Beletsky
July 09, 2014
Tweet
Share
More Decks by Alexander Beletsky
See All by Alexander Beletsky
Snapshot Testing: Going beyond UI
alexbeletsky
1
680
Tech Culture in Startups
alexbeletsky
0
230
TDD in JavaScript
alexbeletsky
4
850
Likeastore
alexbeletsky
3
140
PaaS in your pocker with Dokku
alexbeletsky
7
2.6k
Building Single Page Applications
alexbeletsky
9
5.4k
.NET developer in JavaScript world
alexbeletsky
1
2.9k
How to write good tests?
alexbeletsky
2
320
Dynamic web development with Oak
alexbeletsky
1
620
Other Decks in Programming
See All in Programming
Patterns of Patterns
denyspoltorak
0
1.4k
CSC307 Lecture 09
javiergs
PRO
1
830
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
190
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
250
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
2.4k
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
640
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
150
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
170
Oxlint JS plugins
kazupon
1
810
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
140
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
Featured
See All Featured
Designing Experiences People Love
moore
144
24k
Typedesign – Prime Four
hannesfritz
42
2.9k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Evolving SEO for Evolving Search Engines
ryanjones
0
120
Abbi's Birthday
coloredviolet
1
4.7k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
170
How to Talk to Developers About Accessibility
jct
2
130
Six Lessons from altMBA
skipperchong
29
4.1k
Exploring anti-patterns in Rails
aemeredith
2
250
Designing Powerful Visuals for Engaging Learning
tmiket
0
220
Transcript
This is Node.js
[email protected]
http://beletsky.net http://twitter.com/alexbeletsky
"I was concerned about the ability to program advanced push
features into the website like I had seen in Gmail" Ryan Dahl the creator of Node.js
V8 Google's open source JavaScript engine. V8 can run standalone,
or can be embedded into any C++ application.
LibUV High performance evented I/O Originally based on LibEV switch
to LibUV with support of Windows
JavaScript Dynamic, prototype-based language Highly popular due to browser programming
http://jsconf.eu/2009/speakers.html
Why JavaScript? functions as first-class citizen
Why JavaScript? function as first-class citizen //closures..
JavaScript designed for event-oriented systems There was a natural fit
V8 + LibEV + JavaScript
“Node.js is a platform for easily building scalable network applications.
Node.js uses an event-driven (single threaded), non-blocking I/O model that makes it lightweight and efficient…” http://nodejs.org
Non Blocking I/O The concept of accessing I/O without blocking
of application
https://www.flickr.com/photos/papyrist/ Line to ATM is blocking I/O
Mac’s Drive is non-blocking I/O
None
execution started from first line.. Output:
async operation started… Output:
but execution goes on.. > ping Output:
after ~ms file is read… > ping > pong Output:
Event Driven Application flow is driven by events
http://misclassblog.com/interactive-web-development/node-js/
Single Threaded Single-thread programming concepts is more easy to understand.
Applications running in single thread are lightweight and efficient
“Node.js is designed for building efficient networking applications”
Core components: ! • HTTP / HTTPS • TCP /
UDP / Sockets • DNS • File System • Crypto / Arch • Events • Streams
Efficiency & Scalability Build-in server, high concurrency, horizontal scalability, clustering
NPM Node Package Manager - the richest collection of high
quality open source modules
None
Thanks, @alexbeletsky