Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
最近JSを書く時に考えていること #GWD_Nulab
Search
Hiroyuki ANAI
July 20, 2018
Programming
1k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
最近JSを書く時に考えていること #GWD_Nulab
普段JSを書く時に考えていることの言語化にチャレンジしました。「雰囲気でJSを書いている」感が少し出ています。
Hiroyuki ANAI
July 20, 2018
More Decks by Hiroyuki ANAI
See All by Hiroyuki ANAI
安心して変更できるWebフロントエンドの作り方
pirosikick
7
3.5k
書き換えて学ぶTemporal #fukts
pirosikick
2
520
fukuoka.ts #3 社内でESLintの共通設定を配りたい2025年春版
pirosikick
3
520
compilerOptions、全部読んだ
pirosikick
1
320
Step Functionsの設計時に知っておいたほうがいいかもしれないこと
pirosikick
0
570
Go言語による並行処理「4.4 orチャネル」の図
pirosikick
0
520
サイボウズWebフロントエンド脱レガシーの今までとこれから
pirosikick
6
17k
@cybozu/eslint-configから学ぶ、全社共通ESLint configの運用
pirosikick
4
1.9k
Web Share Target API #w3fukuoka
pirosikick
0
750
Other Decks in Programming
See All in Programming
複数ドメインを一つのアプリに統合するFlutterの設計と運用_FlutterKaigi2026登壇資料(須永高弘)
takahirosunaga
0
120
graphql-ruby を Spinel で速くしようとした話
mtsmfm
0
140
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
250
Coding with AI: How to trust the storyteller (AWS Community Day Adria, Ljubljana 2026)
slobodan
0
130
Next.js: The final boss of Web Performance
guaca
0
380
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
1
1.9k
React Native経験者が Flutterを30⽇間触って驚いたこと
3saito
0
120
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
270
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
220
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
320
ChromeでローカルLLM
ryu1013
0
190
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.6k
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
750
How to make the Groovebox
asonas
2
2.5k
Building the Perfect Custom Keyboard
takai
2
940
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
470
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
650
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
890
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
780
Transcript
࠷ۙ+4Λॻ࣌͘ʹ ߟ͍͑ͯΔ͜ͱ (FFLT8IP%SJOLJO'VLVPLB'SPOU&OE&EJUJPO ݀Ҫ!QJSPTJLJDL
ࣗݾհ ݀Ҫ!QJSPTJLJDL Ϡϑʔגࣜձࣾ ΤϯδχΞ ୈࠇଳʢ+BWB4DSJQUʣ ϦονϥϘגࣜձࣾ ΤϯδχΞ
3FBDUೖ ʢᠳӭࣾʣ 8&# %#13&44 ࿈ࡌʮͲΜͱ͍͜ϑϩϯτΤϯυ։ൃʯ Α͔ͬͨΒखʹͱͬͯΈ͍ͯͩ͘͞ʙ
ීஈͷࣄ ϦονϥϘגࣜձࣾ w ։ൃۀ w ࠂͷ։ൃ w ##πʔϧͷ։ൃ w डୗతͳ։ൃ
Ϡϑʔגࣜձࣾ w ࠇଳɺ+4ݴޠαϙʔτ w ૬ஊձͷ࣮ࢪFUD
ࠓ w ࣾͰ8FCϑϩϯτΤϯυͷ૬ஊʹͷΔػձ͕૿͑ͨ w ʮʙ͏ͱ͍͍ΑʯΑΓʮͳΜͰͦΕͳͷ͔ʯΛ ڭ͍͑ͯ͋͛ͨ w ڕΛ༩͑ΔΑΓΓํΛڭ͑Αɺతͳʂ w ීஈͲ͏͍͏͜ͱΛߟ͑ͯ+BWB4DSJQUΛॻ͍͍ͯΔͷ͔
ݴޠԽͯ͠Έͨ
w ҎԼͷࢹͰྨ w ։ൃΛ࢝ΊΔલ w ։ൃ͍ͯ͠Δ࣌
։ൃΛ࢝ΊΔલ
w ઈରೖΕΔOQNύοέʔδ w ܕ w ϑϨʔϜϫʔΫɾϥΠϒϥϦબఆ
ઈରೖΕΔOQNύοέʔδ w &4-JOU QSFUUJFS w OTQ w IVTLZ MJOUTUBHFE
&4-JOU UTMJOU QSFUUJFS w ఆ൪Ͱ͢Ͷ w FTMJOUDPOpHTUBOEBSE͕దʹΏΔͯ͘ ࠷͖͔ۙ w ίʔσΟϯάنΛ࡞Γɺ
ͦΕΛखͰӡ༻͢Δ࣌ऴΘͬͨ
OTQ w IUUQTXXXOQNKTDPNQBDLBHFOTQ w ੬ऑੑΛؚΉOQNύοέʔδΛڭ͑ͯ͘ΕΔ w ͕ɺͰऴྃͬΆ͍ w 5IFOQN#MPH5IF/PEF4FDVSJUZ1MBUGPSNTFSWJDF JTTIVUUJOH
w ࠓޙOQN!ͷʮOQNBVEJUʯΛͬͯͱͷ͜ͱ
None
IVTLZ MJOUTUBHFE w IVTLZ w HJUIPPLʹϑοΫͯ͠OQNTDSJQUΛ࣮ߦ͢Δ w MJOUTUBHFE w HJUBEE͞Ε͍ͯΔϑΝΠϧʹରͯ͠
ίϚϯυΛ࣮ߦ w ରΛߜͬͯ&4-JOUΛ࣮ߦ͢Δ
IVTLZ MJOUTUBHFE w ίϛοτલʢQSFDPNNJUʣ w FTMJOUpY QSFUUJFS w मਖ਼ޙɺউखʹHJUBEE w
ϓογϡલʢQSFQVTIʣ w OTQDIFDL OQNUFTU
ͦͷଞͷOQNύοέʔδ w ͦͷଞͷύοέʔδಋೖ৻ॏʹΔ w OTQͰਏ͘ͳΔ͜ͱ͕͋Δ w ʮࣗ࡞͢Δʯ͕બࢶʹൈ͚མ͕ͪͪ w ϓϩδΣΫτΛͳΔ͘γϯϓϧʹอͭ
ܕ w ͍͔ͪΒ࡞Δ࣌5ZQF4DSJQUઈର͏ w ࣮ຊ൪Ͱ·ͩͬͨ͜ͱͳ͍ ʢ'MPXUZQFͩͬͨͷͰʣ w 54ͷํ͕ܕఆٛϑΝΠϧ͕ଟ͘ఏڙ͞Εͯͦ͏ w ܕ͕͋Δ͜ͱͰγϯϓϧʹॻ͚Δ
ϑϨʔϜϫʔΫɾϥΠϒϥϦ બఆ w Α͘૬ஊΛड͚Δࣄ߲ w Ұൠతͳஅ࣠ w ރΕ͍ͯΔ͔ɺࣄྫ͋Δ͔ɺFUD w ʢҰൠతͳஅ࣠ͱผͷʣݸਓతͳஅ࣠
w ݱʹ'&͍͖ͬͯײͷ͋Δਓࡐ͕͍Δ͔
ݱʹ'&͍͖ͬͯײͷ͋Δ ਓࡐ͕͍Δ͔ w ͍͖ͬͯײʜ͍ͬͯͧ͘ʂͱ͍͏ؾ࣋ͪ w ϓϩμΫτͷ্ཱͪ͛وॏͳػձ w ݱͰ͍ͬͯͧ͘ʂͱ͍͏ਓ͕ډΔͳΒ ઓతબΛ͍͍ͯ͠ͱࢥ͏
/VYU/FYU w /VYU/FYUͰࡁΉͳΒͦΕ͕Ұ൪ w XFCQBDLɺ).3ɺ443ɺࣗલਏ͍ w ΕΔϨʔϧʹΔ w XFCQBDLDPOpHKTΛࣗલͰॻ͘ΑΓ DSFBUFSFBDUBQQΛͬͨ΄͏͕͍͍
ʢڱ͍Ϩʔϧ͕ͩʣ
ଥڠ͠ͳ͍ w '&ΤϯδχΞͱσβΠφʔͷ࡞ۀͷڥքઢ͕ᐆດͳࡢࠓ w ͓ޓ͍ʹؾΛݣͬͯɺଥڠ͢ΔͷΑ͘ͳ͍ w FY σβΠφʔ͕ಡΈॻ͖Ͱ͖ͳ͍͔Β 5ZQF4DSJQUΘͳ͍ w
'&ΤϯδχΞͱඇ'&ΤϯδχΞؒͰ w ϞϒϓϩɾϖΞϓϩͰղܾͰ͖Δ
։ൃ͍ͯ͠Δ࣌
w ୯ମςετͷ͢͠͞ w ϩδοΫΛϑϨʔϜϫʔΫ͔ΒΓ͢
୯ମςετͷ͢͠͞ w ୯ମςετ͕͍͢͠Α͏ʹ࡞Δ w ࣮ˍςετ͕γϯϓϧʹͳΔ w ϦϑΝΫλϦϯάͰ͖Δ w ݁߹ςετɺ&&ςετӡ༻ɾอक͕ਏ͍
͍͢͠ɾ͠ʹ͍͘ w ͍͢͠ w ࢀরಁաੑͷ͋Δؔ w 6OJWFSTBM+BWB4DSJQUFUD w ͠ʹ͍͘ w
ࢀরಁաੑͷͳ͍ؔ w ϒϥβͷ"1*Λ͍ͬͯΔ w ࣌ؒؔ࿈FUD
ࢀরಁաੑ w Ҿ͕ಉ͡ͳΒɺԿ࣮ߦͯ݁͠Ռ͕มΘΒͳ͍ w ෭࡞༻͕ແ͍
6OJWFSTBM+BWB4DSJQU 6OJWFSTBM+BWB4DSJQU %0.ͱ͔ ϑΝΠϧγεςϜͱ͔
6OJWFSTBM+BWB4DSJQU w /PEFKT্Ͱςετͨ͠ίʔυ͕ ͦͷ··ϒϥβͰಈ͘ w 443࣌ͳͷͰɺ Ͳͷίʔυ͕ڥґଘͳͷ͔ҙࣝͯ͠ॻ͘ඞཁ͕͋Δ w ڥґଘͷίʔυΛͰ͖Δͱ ࣮ˍςετ͕γϯϓϧʹͳΔ
͠ʹ͍͘෦ΛͲ͏ѻ͏͔ w ҾͰ͢ w நԽͯ͢͠Δ w ࠩ͠ସ͑Ͱ͖Δͱ͜Ζʹ͍ΔFUD w ʢͦͷ࣌ग़དྷಘΔखͷத͔Β ͍͍ͷΛબΜͰ͍Δ͔͠Εͳ͍ʣ
ҾͰ͢
நԽͯ͠
நԽͯ͠
நԽͯ͠ w ϞοΫ͘͢͠ͳΔˠςετίʔυ͕γϯϓϧʹͳΔ w ίʔυͷݟ௨͕͠Α͘ͳΔ
ࠩ͠ସ͑Ͱ͖Δͱ͜Ζʹ ͍Δ w ϓϥΨϒϧʹ͢Δ͜ͱͰɺ ࣮ߦڥʹԠͯࠩ͡͠ସ͑Δ w ྫʣ w /VYUʜ1MVHJO w
3FEVYʜ.JEEMFXBSFFUD
ϩδοΫϑϨʔϜϫʔΫͱ ͳΔ͘Γ࣮ͯ͢͠Δ w ྫʣ3FEVY7VFYͷ"DUJPOTʹϩδοΫΛॻ͔ͳ͍ w ϑϨʔϜϫʔΫɾϥΠϒϥϦʹ ϩοΫΠϯ͞Εͳ͍Α͏ʹ͢Δ w γϯϓϧ͞Λอͭ w
֤ϑϨʔϜϫʔΫɾϥΠϒϥϦͷ ΞοϓσʔτͷӨڹΛ࠷খݶʹ
ྫʣ7VFͷNJYJO
ྫʣ7VFͷNJYJO
·ͱΊʢ ʣ
ݴޠԽͯ͠Έͯ w ϩδοΫ͕͍͋ͬͯͬͯΔ͜ͱɺ ϩδοΫ͋Δ͕ͪΌΜͱݴޠԽͰ͖ͳ͍͜ͱɺ ࣮งғؾͰͳΜͱͳ͍ͬͯ͘Δ͜ͱ͕ೝࣝͰ͖ͨ w ։ൃதงғؾͰ͍ͬͯΔ͜ͱ͕ ଟ͔͔ͬͨ͠Εͳ͍ w શମతʹʮγϯϓϧ͞ʯΛ༏ઌ͍ͯ͠Δ͜ͱ͕Θ͔ͬͨ
ݴޠԽΉ͔͍ͣ͠ w ݴޠԽ͍͠ʹงғؾͰ͍ͬͯΔ෦ w νʔϜͰҰॹʹ্͍ͬͯ͘ͰݴޠԽͯ͠ ਖ਼͑͘͠Δ͜ͱ͕େࣄ w ࠓޙఆظతʹݴޠԽ͢Δ w ͖ͪΜͱݴޠԽ͢ΔͨΊʹܧଓతʹֶͿ
͋Γ͕ͱ͏ ͍͟͝·ͨ͠