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開発を高速化するAirlaneの紹介
Search
Atsushi Nakatsugawa
PRO
January 11, 2017
Technology
1
230
Node.js開発を高速化するAirlaneの紹介
【新年】日本酒で乾杯!ランサーズ Drink Meetupでの発表資料です。
Atsushi Nakatsugawa
PRO
January 11, 2017
Tweet
Share
More Decks by Atsushi Nakatsugawa
See All by Atsushi Nakatsugawa
開発スピードとスキル向上を両立するAIコードレビューの活かし方
moongift
PRO
0
62
個人開発にAIレビューを導入しよう
moongift
PRO
0
41
AIによるコードレビューで開発体験を向上させよう!
moongift
PRO
0
750
AIによるコードレビューで開発体験を向上させよう!
moongift
PRO
0
1.2k
開発スピードとスキル向上を両立するAIコードレビューの活かし方
moongift
PRO
0
65
Let's speed up personal development with AI code reviews
moongift
PRO
0
32
DevRelに活かせるAIツールの紹介とレビュー
moongift
PRO
0
130
DevRelの基礎と戦略
moongift
PRO
0
73
DevRelの始め方
moongift
PRO
3
780
Other Decks in Technology
See All in Technology
Devinを使ったモバイルアプリ開発 / Mobile app development with Devin
yanzm
0
210
制約理論(ToC)入門
recruitengineers
PRO
8
3.4k
Goss: Faiss向けの新しい本番環境対応 Goバインディング #coefl_go_jp
bengo4com
1
1.4k
クラウドセキュリティを支える技術と運用の最前線 / Cutting-edge Technologies and Operations Supporting Cloud Security
yuj1osm
2
170
KiroでGameDay開催してみよう(準備編)
yuuuuuuu168
1
160
スプリントレトロスペクティブはチーム観察の宝庫? 〜チームの衝突レベルに合わせたアプローチ仮説!〜
electricsatie
1
130
努力家なスクラムマスターが陥る「傍観者」という罠と乗り越えた先に信頼があった話 / 20250830 Takahiro Sasaki
shift_evolve
PRO
2
120
Product Management Conference -AI時代に進化するPdM-
kojima111
0
260
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
5
1.2k
トヨタ生産方式(TPS)入門
recruitengineers
PRO
5
1.3k
「守る」から「進化させる」セキュリティへ ~AWS re:Inforce 2025参加報告~ / AWS re:Inforce 2025 Participation Report
yuj1osm
1
170
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
18
5.9k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
The Cult of Friendly URLs
andyhume
79
6.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Building Adaptive Systems
keathley
43
2.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
284
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Six Lessons from altMBA
skipperchong
28
4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Transcript
/PEFKT։ൃΛߴԽ ͢Δ"JSMBOFͷհ .00/(*'5தಞ࢘
ࣗݾհ !NPPOHJGU GCNFNPPOHJGUGBO தಞ࢘ גࣜձࣾ.00/(*'5දऔక χϑςΟΫϥυNPCJMFCBDLFOE 9PKPIJpWFΤϰΝϯδΣϦετ ݄ΑΓΦʔϓϯιʔεɾιϑτΣΞΛຖ հ͢Δϒϩά.00/(*'5ΛӡӦɻ
IUUQXXXNPPOHJGUKQ
+BWB4DSJQU͖Ͱ͔͢ʁ
+BWB4DSJQU 8FCϒϥβͰಈ͘อূ͕͋Δ།Ұͷϓϩάϥ ϛϯάݴޠ /PEFKTΛ͑αʔόαΠυɺ3BTQCFSSZ1J ͷ։ൃ 3FBDU/BUJWFͳΒεϚʔτϑΥϯΞϓϦͷ։ൃ
հͳ ίʔϧόοΫࠈ Ϋϥε͕ͳ͍ ׅހ͕ͨΒͱଟ͍ 1SPNJTFͰղܾͰ͖ΔΑ &$."ͰղܾͰ͖ΔΑ &$."ͰղܾͰ͖ΔΑ
/PEFKTͰͷαʔόαΠυ։ൃ &YQSFTTΛ͏ͷ͕جຊ ଞʹ,PBͱ͔)BQJͱ͔3FTUJGZͱ͔4BJMTKTͱ͔ʜ &YQSFTT(FOFSBUPSΛ͑͋ Δఔͷϕʔε͕ੜ͞ΕΔ
\ /_ / ヽ / } レ,' / ̄ ̄ ̄ ̄\ |`l`ヽ /ヽ/ <´`ヽ u ∨ u i レ'
/ └l> ̄ !i´-) |\ `、 ヽ), />/ / 地 ほ こ !´ヽ、 ヽ ( _ U !、 ヽ。ヽ/,レ,。7´/-┬―┬―┬./ 獄 ん れ _|_/;:;:;7ヽ-ヽ、 '') ""'''`` ‐'"='-'" / ! ! / だ. と か | |;:;:;:{ U u ̄|| u u ,..、_ -> /`i ! ! \ :. う ら | |;:;:;:;i\ iヽ、 i {++-`7, /| i ! ! <_ の が __i ヽ;:;:;ヽ `、 i ヽ、  ̄ ̄/ =、_i_ ! ! / ヽ ヽ;:;:;:\ `ヽ、i /,ゝ_/| i  ̄ヽヽ ! ! ,, -'\ ヽ、\;:;:;:;:`ー、`ー'´ ̄/;:;ノ ノ ヽ| / ,、-''´ \/ ̄ ̄ ̄ ̄  ̄ ̄ ̄ Y´/;:;:;\
&YQSFTTͷਏΈ )551ϝιουͷ165%&-&5&͕ղऍ͞Εͳ͍ var methodOverride = require('method-override'); app.use( methodOverride( (req, res)
=> { if (req.body && typeof req.body === 'object' && '_method' in req.body) { var method = req.body._method; delete req.body._method; return method; } }));
&YQSFTTͷਏΈ ηογϣϯػೳ͕༻ҙ͞Ε͍ͯͳ͍ app.use(session({ secret: config.session.key, resave: false, saveUninitialized: true, store:
new NedbStore({ filename: path.join(target_dir, config.session.path) }) }));
&YQSFTTͷਏΈ SFRVJSFࠈʜ JOEFYKT WBSGTSFRVJSF bGT` SFRVJSF bMJCT` MJCTKT
WBSGTSFRVJSF bGT`
&YQSFTTͷਏΈ σʔλϕʔεϝʔϧૹ৴ɺςϯϓϨʔτΤϯδϯ ผ్༻ҙ͢Δඞཁ͕͋Δ ˠ͔͠τϨϯυ͕มΘΔ
&YQSFTTͷਏΈ XFCQBDLEFWTFSWFS OPEFNPO SFMPBEJGZ ΦʔτϦϩʔυɺ࠶σϓϩΠ͠ͳ͍ ཁผϥΠϒϥϦ·ͨ࠶ىಈ
/PEFKTͷਏΈ HVMQpMFKT XFCQBDLDPOpHKT QBDLBHFKTPO ઃఆϑΝΠϧ͕৭ʑඞཁʜ
/PEFKTͷਏΈ τϨϯυʢʁʣͷมԽ͗͢ ʲ༁ʳʹ+BWB4DSJQUΛֶΜͰͲ͏ײ͔ͨ͡&OEP5FDI#MPH IUUQLJLVDIJIBUFCMPKQFOUSZ 3FBDU 3FBDU%0. #BCFM +49 &4 ".%
$PNNPO+4 #SPXTFSJGZ #PXFS "OHVMBS 7VF+4 3Y+4 (SVOU (VMQ #SPDPPMJ .JNPTB 8FCQBDL 4ZTUFN+4 5ZQFTDSJQU 'MPX #MVFCJSE 'FUDI "YJPT 'MVY 'MVNNPY 'MVYJCMF 3FEVY 1MBUFT+4
͞Βʹ࡞͙ͬͯ͢όʔδϣϯΞοϓʜPS[ 2JJUBͷใͲΜͲΜݹ͘ͳ͍ͬͯ͘ʜPS[
/\___/ヽ ヽ / ::::::::::::::::\ つ . | ,,-‐‐ ‐‐-、 .:::| わ
| 、_(o)_,: _(o)_, :::|ぁぁ . | ::< .::|あぁ \ /( [三] )ヽ ::/ああ /`ー‐--‐‐―´\ぁあ
ཉ͍͠ͷ Ͱ͖Δ͔ Εͳ͍ͷ ͷΓํ ྑ͍ͷ୳͠ํ ΛҭͯΑ͏ ੜଶܥΛ͑Α͏ ͜Μͳͣ͡Όͳ͔ͬͨʜ
ͦ͜Ͱ"JSMBOFͰ͢Α )BWFBQMFBTBOUqJHIU
"JSMBOFͷಛ w ΦʔτϦϩʔυɺΦʔτϦσϓϩΠ w SFRVJSFࠈ͔Βͷ։์ʢࣗಈಡΈࠐΈʣ w ίʔυΛੜ͢ΔδΣωϨʔλࡌ w ઃఆΑΓنʢ3BJMT෩ʣ w
03ϚούʔɺϚΠάϨʔγϣϯࡌ
໊લͷ༝དྷ
Πϯετʔϧ OQNJOTUBMMBJSMBOFH
࢝Ίํ BJSMBOFJOJU:063@"11@/".& DE:063@"11@/".& OQNJOTUBMM
αʔόΛཱͯΔ BJSMBOFTFSWF PQFOIUUQMPDBMIPTU
ϧʔςΟϯάίϯτϩʔϥ ᵓᴷᴷDPOpHKT ᵓᴷᴷNPEVMFT ᵓᴷᴷQBDLBHFKTPO ᵓᴷᴷSPVUFT ᴹᵓᴷᴷDPOUSPMMFSKT ᴹᵓᴷᴷJOEFYKT ᴹᵓᴷᴷQVCMJD ᴹᴹᵓᴷᴷBQQDTT ᴹᴹᵋᴷᴷBQQKT
ᴹᵓᴷᴷUFTU ᴹᴹᵋᴷᴷDPOUSPMMFS@UFTUKT ᴹᵋᴷᴷWJFXT ᴹᵓᴷᴷFEJUKBEF ᴹᵓᴷᴷJOEFYKBEF ᴹᵓᴷᴷMBZPVUKBEF ᴹᵋᴷᴷOFXKBEF ᵋᴷᴷUNQ ίϯτϩʔϥ ϧʔςΟϯά
ϧʔςΟϯά WBSFYQSFTTSFRVJSF FYQSFTT WBSSPVUFSFYQSFTT3PVUFS WBSDPOUSPMMFSSFRVJSF DPOUSPMMFS NPEVMFFYQPSUTNPEVMF\
SPVUFSBMM SFR SFT OFYU \ DPOUSPMMFSBMM SFR SFT OFYU ^ (&5 4IPXJOEFYQBHF SPVUFSHFU SFR SFT OFYU \ DPOUSPMMFSJOEFY SFR SFT OFYU ^ (&5OFX 4IPXDSFBUFQBHF SPVUFSHFU OFX SFR SFT OFYU \ DPOUSPMMFSOFX SFR SFT OFYU ^ SFUVSOSPVUFS ^ }ϧʔτͷ(&5ΞΫηε }OFXͷ(&5ΞΫηε
ίϯτϩʔϥ DMBTT5PEP$POUSPMMFS\ DPOTUSVDUPS \ > (&5 JOEFY SFR SFT OFYU
\ SFTSFOEFS JOEFY ^ 1045 (&5OFX OFX SFR SFT OFYU \ SFTSFOEFS OFX ^ ^ NPEVMFFYQPSUTOFX5PEP$POUSPMMFS
ϧʔςΟϯάՃ BJSMBOFHFOFSBUFSPVUFVTFST
Ճ͞ΕΔϑΝΠϧ USFF ᵓᴷᴷSPVUFT ᴹᵓᴷᴷDPOUSPMMFSKT ᴹᵓᴷᴷJOEFYKT ᴹᵓᴷᴷVTFST ᴹᴹᵓᴷᴷDPOUSPMMFSKT ᴹᴹᵓᴷᴷJOEFYKT ᴹᴹᵓᴷᴷQVCMJD
ᴹᴹᴹᵓᴷᴷBQQDTT ᴹᴹᴹᵋᴷᴷBQQKT ᴹᴹᵓᴷᴷUFTU ᴹᴹᴹᵋᴷᴷDPOUSPMMFS@UFTUKT ᴹᴹᵋᴷᴷWJFXT ᴹᴹᵓᴷᴷFEJUKBEF ᴹᴹᵓᴷᴷJOEFYKBEF ᴹᴹᵓᴷᴷMBZPVUKBEF ᴹᴹᵋᴷᴷOFXKBEF ᵋᴷᴷUNQ VTFSTҎԼʹରԠ }
ϚΠΫϩαʔϏεߏ σΟϨΫτϦຖʹϧʔςΟϯάɺίϯτϩʔϥɺςε τɺϏϡʔɺ+BWB4DSJQUελΠϧγʔτΛอ࣋ VTFSTBQQNJOKTɺVTFSTBQQNJODTTͰΞΫη εՄೳʢϏϡʔςϯϓϨʔτʹ͋Β͔͡ΊΈࠐΈࡁ Έʣ
03Ϛούʔ 03.Λ࠾༻ %#ઃఆDPOpHKTPOʹͯࢦఆ BJSMBOFHFOFSBUFNPEFMECVTFS ࣗಈಡΈࠐΈͰNPEVMFTҎԼͷϑΝΠϧΛಡΈࠐ ΈɺίϯτϩʔϥϧʔλͰར༻Մೳʹ
ϚΠάϨʔγϣϯ BJSMBOFHFOFSBUFNJHSBUJPOVTFS@BEE@JOEFY BJSMBOFNJHSBUJPOVQcEPXOcSFEP
ϝʔϧ BJSMBOFHFOFSBUFNPEFMNBJMFSDPOUBDU 4.51ઃఆDPOpHKTPOʹͯࢦఆ
Ϣχοτςετ .PDIBΛ࠾༻ BJSMBOFUFTU
"JSMBOFʜ طଘͷஔ͖͑Ͱͳ͘ɺطଘϥΠϒϥϦ܈ΛΈ߹ Θͤͯߏங ࣗಈಡΈࠐΈͱδΣωϨʔλͰίʔσΟϯάΛݮΒ͢ εϜʔζʹɺ։ൃͷ໘͞Λͳ͘͢
ݱࡏͷ։ൃঢ়گ BJSMBOFWFSTJPO
ٻΉίϯτϦϏϡʔλʂ IUUQTHJUIVCDPNNPPOHJGUBJSMBOF *TTVFػೳཁܴʂ
IUUQBJSMBOFPSH
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ GCNFNPPOHJGU 'PMMPXNF !B@OBLBUTVHBXB