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
future of node
Search
Yosuke Furukawa
PRO
July 06, 2015
Programming
4
4.5k
future of node
【エンジニア向け勉強会】最新コーディング技術から見える モバイルエンターテインメントの未来 で発表した資料です。
https://atnd.org/events/67571
Yosuke Furukawa
PRO
July 06, 2015
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
リアーキテクトと開発生産性について
yosuke_furukawa
PRO
21
7.9k
JavaScript Server Runtime History
yosuke_furukawa
PRO
8
2.7k
tc39 x jsconf.jp Panel Discussion
yosuke_furukawa
PRO
0
870
フロントエンドの開発生産性とは
yosuke_furukawa
PRO
16
9.5k
7 principles for rich web apps And how next.js achieves these principles
yosuke_furukawa
PRO
6
2.1k
Deep Dive International Conference
yosuke_furukawa
PRO
0
96
フロントエンドのDXと今後
yosuke_furukawa
PRO
6
3.6k
フロントエンドリアーキテクトの話
yosuke_furukawa
PRO
18
8.8k
new_urlparser.pdf
yosuke_furukawa
PRO
1
420
Other Decks in Programming
See All in Programming
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
7
1.9k
TCA魔法学入門🪄
dazy
0
280
Kotlinを用いたDSL的な設計手法と使用上の注意
kohii00
3
530
WinUI 3デモ - "CommunityToolkit.Mvvm"NuGetパッケージ編
andrewkeepcoding
0
130
WasmOS: Wasmを実行する自作Microkernel
riru
0
370
document.write再考
brn
5
2.5k
もうすぐ新年度、Babylon.jsがお勧めな3個の理由
hideg
0
170
今の SmartHR にエンジニアで入社するとどうなるの?
daisukeshinoku
3
1.3k
Creating Retro-Style Photos Using Swift
ski
1
360
Dockerで始めるAWS Lambda開発
stutkhd0709
14
2.5k
自作ソフト(VMagicMirror)がVRMA対応してる話+実装のTips
bakudreameater
0
110
コミュニティに参加したことで起きた変化
ohmori_yusuke
3
130
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
GraphQLの誤解/rethinking-graphql
sonatard
48
9.1k
YesSQL, Process and Tooling at Scale
rocio
160
13k
Designing for humans not robots
tammielis
247
25k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
Into the Great Unknown - MozCon
thekraken
10
830
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
8
8.2k
The Art of Programming - Codeland 2020
erikaheidi
40
12k
Product Roadmaps are Hard
iamctodd
43
9.6k
Atom: Resistance is Futile
akmur
258
25k
Rebuilding a faster, lazier Slack
samanthasiow
72
8.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
Transcript
Future of Node @yosuke_furukawa
Twitter: @yosuke_furukawa Github: yosuke-furukawa
Node.jsຊϢʔβʔάϧʔϓද io.js Evangelist / io.js Collaborator
Past Node.js
2001 2008 2009 2010 2011 2012 2015ʙ /PEFKTJTCPSO
3ZBO%BIM 5IF'BUIFSPG/PEF
Ryan Dahl talks about Node.js in JSConf.eu 2009
None
Node.js in brief • Server-Side JavaScript • Evented, Non-Blocking I/O
Similar to EventMachine • Built on Google’s V8
Node.js in brief • Server-Side JavaScript • Evented, Non-Blocking I/O
Similar to EventMachine • Built on Google’s V8 8IZ/PEFDIPPTFUIFTF BSDIJUFDUVSF
2001 2008 2009 2010 2011 2012 2015ʙ $,1SPCMFN
ຊͰ ʮ8FCͷઌʹ͋Δ$,ʯ ͱ͔هࣄ͕͔͔ΕΔ
$,1SPCMFNJT w ͪΐʔͨ͘͞ΜͷΫϥΠΞϯτ , ͕Ұʹଓ ͨ͠Βαʔόʔࢮ͵ΑͶ͍ͬͯ͏ w ࣌ͷϑϩϯτ"QBDIF͕ओྲྀ w "QBDIFϓϩηεεϨουϞσϧ
w ΫϥΠΞϯτ͕ଓ͢ΔʹϓϩηεPSεϨου͕ ্͕ΔͱϝϞϦ͍·͘ΒΕͯɺɺɺ ޙ͔Δͳɻ
͜ͷ࣌ͷΈΜͳͷԠ ʮͰ,͔͞Ͷʔ͠XXXXʯ
γϯϓϧͳIUUQϦΫΤετͳΒ ͦ͏ͩͱࢥ͏ɻ
8FC࣌4/4࣌
Ϣʔβʔ͕αΠτʹࡏ͢Δ ͕࣌ؒ૿͑Δ࣌ ϝοηʔδ͕དྷ·ͨ͠ ͍͍Ͷ͞Ε·ͨ͠
"KBYͱ͔9)3-POH1PMMJOH ͕ྲྀߦΓ͡Ίͨ࣌
$POOFDUJPO͕ଟ͘ͳͬͯैདྷͷΞʔΩς ΫνϟͰ·͔ͳ͖͑Εͳ͘ͳ͖ͬͯͨ
None
"QBDIFWT/HJOY "QBDIF /HJOY XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS
XPSLFS XPSLFS
"QBDIFWT/HJOY "QBDIF /HJOY XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS
XPSLFS XPSLFS ϦΫΤετͷʹXPSLFSεϨου͕ىಈ ͠ɺϝϞϦ͕ඡഭ͞ΕΔڪΕɺ·ͨεϨου ͕ଟ͍ͱεϨουΓସ͑ίετߴ͍
"QBDIFWT/HJOY "QBDIF /HJOY XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS XPSLFS
XPSLFS XPSLFS γϯάϧεϨουͳͷͰίωΫγϣϯ͕ ͨ͘͞Μ͋ͬͯXPSLFSىಈ͠ͳ͍ Ϧιʔε͕ޮత
͜Μͳײ͡Ͱ$,͕૽͕Ε͔ͯΒ Πϕϯτϧʔ ϓϞσϧ͕ྲྀߦΓͩ͢ɻ
"OZ&WFOU 1FSM &WFOU.BDIJOF 3VCZ 5XJTUFE 1ZUIPO ͜Μͳײ͡Ͱ$,͕૽͕Ε͔ͯΒ Πϕϯτϧʔ ϓϞσϧ͕ྲྀߦΓͩ͢ɻ
ͨͩ͠ɺ͜ΕΒͷݴޠ 3VCZ 1ZUIPO ʹ طʹ'JMF/FUXPSL*0ͷಉظॲཧ͕ଘࡏ͢ Δ
'JMF/FUXPSL*0ॲཧ͍
'JMF/FUXPSL*0ॲཧ͍
&WFOU-PPQ ͕͔͔࣌ؒΔϑΝΠ ϧ*0ωοτϫʔΫ ܥͷॲཧग़དྷΔݶ Γඇಉظʹ͢Δ͖ɻ
ΠϕϯτϧʔϓϞσϧྑ͍͕ɺط ଘͷ*0ಉظܥͷॲཧແ͍ͨ͘͠ɻ ඇಉظ*0ॲཧΛڧ੍͍ͤͨ͞ɻ
ඇಉظϥΠϒϥϦͱͯ͠MJCFW͕࠾༻͞Εɺ ޙʹMJCVWͱͳΓɺϚϧνϓϥοτϑΥʔ ϜͰߴͳඇಉظ*0͕࣮ݱ͞ΕΔ
2001 2008 2009 7JTCPSO 2010 2011 2012 2013 2014
function hoge() { console.log(“Hello Hello”); } function fuga() { //
fugafufa console.log(“World World”); } +BWB4DSJQU ͜Ε·Ͱ ߏจղੳ > Hello Hello > World World ࣮ߦ
function hoge() { console.log(“Hello Hello”); } function fuga() { //
fugafufa console.log(“World World”); } +BWB4DSJQU ͜Ε·Ͱ ߏจղੳ > Hello Hello > World World ࣮ߦ ͍
function hoge() { console.log(“Hello Hello”); } function fuga() { //
fugafufa console.log(“World World”); } +BWB4DSJQU 7 > Hello Hello > World World ಈతʹϚγϯޠʹม 0100101 0010010 1010101 0101010 1010100 ࣮ߦ ΊͬͪΌ͍
$,Λղܾ͢ΔΠϕϯτϧʔϓϞσϧ ߴͳඇಉظ*0ͱͦΕΛڧ੍Մೳͳݴޠ ઈ͍ॲཧܥ
$,Λղܾ͢ΔΠϕϯτϧʔϓϞσϧ ߴͳඇಉظ*0ͱͦΕΛڧ੍Մೳͳݴޠ ઈ͍ॲཧܥ 3ZBO%BIM͕ඞཁͱͯ͠ ͍ͨͷɻ
͔ͯ͘͠/PEFKTੜ
/PEFKTͱԿͳͷ͔ ඇಉظϥΠϒϥϦͱΠϕϯτϧʔϓϞσϧͰಈ͘ߴ ͔ͭলϦιʔεͳ+BWB4DSJQU࣮ߦڥ 8FC4PDLFUɺ44&ͷΑ͏ʹίωΫγϣϯΛுΓͬͺ ͳ͠ʹ͢ΔϞϊɺϦΫΤετ͕ଟ͍ΞϓϦέʔγϣ ϯͱੑ͕ߴ͍ɻ ԿʹͰ͘ϫέ͡Όͳ͍ɻવ͔ͳ͍͋Δɻ /PEFKT͚ͩͰແཧΛ͠ͳ͍ࣄॏཁɻదࡐదॴͰ ͍͚ͨํ͕ྑ͍ͱ͍͏ɻ
Present Node.js
2010ʙ2012 ᴈ໌ظ
MEAN stack
socket.io ͷීٴʹΑΔ ϦΞϧλΠϜΞϓϦͷ૿Ճ
2013ʙ2015 ظ
FrontEnd tools (Grunt Gulp Yeoman)
Desktop Application
AWS Lambda
Tessel(IoT)
None
ຊʹ৭ʑΘΕΔΑ ͏ʹͳͬͨ ʢओʹΠϕϯτۦಈͰಈ࡞͢Δͷʣ
Node.jsͷपลͰมΘ͖ͬͯ ͨ͜ͱ
frontend / backend
͜Ε·Ͱ
࠷ۙ
Node.js ͷະདྷ
io.js
ECMAScript 6 is enabled
Convergence plan *(TBD)
None
Architecture
Universal (isomorphic)
ΫϥΠΞϯτͱαʔόʔͰ Δ͜ͱΛڞ௨Խͤ͞Δ
2-tier architecture (AWS Labmda)
None
None
ࠂ
౦ژNodeֶԂࡇ 2015
։࠵
11/7 ()
@domenic Domenic Denicola
None
@dshaw Dan Shaw
None
@rvagg Rod Vagg
None
and some others
Any Questions??