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
Node.js v12の気になる変更点 / #kng6
Search
Masashi Hirano
May 08, 2019
Programming
12
3.5k
Node.js v12の気になる変更点 / #kng6
関西Node学園 6時限目でNode.js v12の変更点について話しました。
https://nodejs.connpass.com/event/126358/
Masashi Hirano
May 08, 2019
Tweet
Share
More Decks by Masashi Hirano
See All by Masashi Hirano
Protocol Buffers and Connect for Frontend Development
masashi
0
81
You may not need XXX in Node.js
masashi
5
1.4k
OSSとコミュニティを支える
masashi
1
1.2k
英語ができなかった自分達が、グローバルチーム立ち上げに挑戦!?
masashi
1
3.3k
フロントエンド開発のためのセキュリティ入門について
masashi
1
510
フロントエンド開発のためのセキュリティ入門
masashi
49
18k
Node.jsの2022年と未来 / Node.js in 2022 and Future
masashi
1
1.1k
Corepack ~Node.jsに追加されたパッケージマネージャーマネージャー~ / #tng37
masashi
3
13k
Node.js + Web Compatibility
masashi
2
650
Other Decks in Programming
See All in Programming
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
21
5.8k
#QiitaBash TDDでAIに設計イメージを伝える
ryosukedtomita
2
1.7k
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
170
Your Architecture as a Crime Scene:Forensic Analysis
manfredsteyer
PRO
0
100
CSC307 Lecture 17
javiergs
PRO
0
110
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
520
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
120
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
110
TypeScript LSP の今までとこれから
quramy
1
480
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
520
Perlで痩せる
yuukis
1
680
Featured
See All Featured
Speed Design
sergeychernyshev
30
990
A Tale of Four Properties
chriscoyier
159
23k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Statistics for Hackers
jakevdp
799
220k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Building an army of robots
kneath
306
45k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Adopting Sorbet at Scale
ufuk
77
9.4k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Faster Mobile Websites
deanohume
307
31k
Transcript
Node.js v12 Notable Changes ؔNodeֶԂ 6࣌ݶ Masashi Hirano(@shisama)
ฏ ণ࢜ / Masashi Hirano ɹɹɹɹ Kyoto office @shisama_ @shisama
Node.js Core Collaborator ؔNodeֶԂOrganizer
4/23ʹ12.0.0͕ϦϦʔε͞Ε·ͨ͠
https://nodejs.org/en/blog/release/v12.0.0/ ݄ʹ-54ʹ
https://nodejs.org/en/blog/release/v12.0.0/ W&0-ʹ
Node.js v12ͷಛʹؾʹͳͬͨ มߋΛհ͠·͢ʂ
https://nodejs.org/en/blog/release/v12.0.0/ /PEFKTͷެࣜϖʔδ(JU)VCͷ3FMFBTFϖʔ δʹ1VMM3FRVFTUͷϦϯΫ͕షͬͯ͋Δ
https://github.com/nodejs/node/pull/26685
V8(JSΤϯδϯ)͕7.4ʹ • Node.js v10ͷV86.8 • JavaScript(ECMAScript)৽ػೳ͕Ճ • async / await͕ߴԽ
• async-stack-trace͕Ճ etc…
https://twitter.com/mathias/status/1120700101637353473 JavaScript৽ػೳ
Array#{flat,flatMap} var arr1 = [1, 2, [3, 4]]; arr1.flat(); //
[1, 2, 3, 4] arr1.flatMap(x => [x * 2]); // [2, 4, 6, 8]
Private Class Field class Counter { #count = 0; get
value() { return this.#count; } increment() { this.#count++; } } const counter = new Counter(); counter.increment(); counter.#counter; // Error counter.value; // OK QSJWBUFʹ͍ͨ͠ϑΟʔϧυʹΛ͚ͭΔ
https://twitter.com/mathias/status/1120700101637353473 ଞʹͨ͘͞Μ͋Γ·͢ʂଓ͖WebͰʂ
https://speakerdeck.com/ajido/callback-to-promise-and-beyond લճˏAjido͞Μ͕ൃදͯ͘͠Ε·ͨ͠ʂ
https://blog.risingstack.com/node-js-12-new-features/ Async Stack Trace
https://blog.risingstack.com/node-js-12-new-features/ Async Stack Trace v11 V12
https://github.com/nodejs/node/pull/26685
llhttp • HTTPύʔαͷσϑΥϧτ͕http_parser͔Βllhttpʹ • http_parserվྑΛࢼΈ͚ͨͲ͔ͬͨ͠ • llhttpTypeScriptͰॻ͔Ε͍ͯͯϝϯς͘͢͠ͳ͍ͬͯΔ • http_parserΑΓ࣮ߦ͕͍ •
llparseͰCݴޠLLVMϏοτίʔυʹม
llhttp https://github.com/nodejs/llhttp
https://github.com/nodejs/node/pull/26209 εΫϦʔϯγϣοτ 2019-05-08 02.51.41.png
https://github.com/nodejs/node/pull/23814
tls • TLS 1.3Λ৽͘͠αϙʔτ • TLS1.0ɺ1.1σϑΥϧτͰαϙʔτର֎ʹ • 2020/03ʹϝϯς͞Εͳ͘ͳΔ • v12LTSͰ2022/04ͰEOL
https://github.com/nodejs/node/pull/25576
σϑΥϧτͷheapͷ࠷େ • ैདྷ700MB(32bit) / 1400MB(64bit)ݻఆͩͬͨ • v12͔Β༻ՄೳͳϝϞϦ༰ྔʹ߹Θͤͯ૿ݮ
https://github.com/nodejs/node/pull/23027 ͜ͷޙɺొஃ༧ఆʂ
https://github.com/nodejs/node/pull/27361 /PEFKTWͰ ྩରԠ͞Εͨ
Node.js v12ʹͳΔ͜ͱͰಈ͔ͳ͘ͳ Δύοέʔδଘࡏ͢Δ
https://github.com/nodejs/node/issues/25060
Node.js v12ͰյΕΔύοέʔδ͕͋Δ • uglify-jsbcryptͳͲ༗໊ͳͱ͜Ζ͕ର • طʹରԠࡁͷͷ͋Δ • CITGMͱ͍͏Node.js CoreͷCIδϣϒͰᖰΓग़͍ͯ͠Δ •
Α͘ΘΕΔύοέʔδͷςετ͕௨Δ͔ݕূ • https://github.com/nodejs/citgm • ੈͷதͷશͯͷnpmύοέʔδΛݕূ͍ͯ͠ΔΘ͚Ͱͳ͍
npmʹύοέʔδΛެ։͍ͯ͠Δਓ Node.jsͷϝδϟʔόʔδϣϯ͕ϦϦʔ ε͞ΕͨΒݕূͯ͠Έ·͠ΐ͏ʂ
·ͱΊ • V8ͷόʔδϣϯΞοϓͰJavaScriptͷ৽ػೳ͕Ճ͞Εͨ • Node.js Core෦తʹΞοϓσʔτ͞Ε͍ͯΔ • ϝδϟʔόʔδϣϯnpmύοέʔδ͕յΕͨΓ͢ΔͷͰݕূ ͕ඞཁ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ @shisama_ @shisama