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
20181226.pdf
Search
ozaki25
December 26, 2018
Technology
98
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20181226.pdf
ozaki25
December 26, 2018
More Decks by ozaki25
See All by ozaki25
20210526_a11y.pdf
ozaki25
0
210
20210525_react_next.pdf
ozaki25
0
160
Webフロントエンドはなぜ複雑なのか
ozaki25
1
150
utility first css
ozaki25
0
120
20201225_how_to_learn_technology.pdf
ozaki25
0
190
20201124_blitz.pdf
ozaki25
0
110
20200727_liff_app.pdf
ozaki25
1
680
20200721_web_vitals.pdf
ozaki25
0
130
20200624_web_otp_api.pdf
ozaki25
1
150
Other Decks in Technology
See All in Technology
モバイルアプリ開発概論2026
recruitengineers
PRO
6
670
My broken English still works: speaking at global OSS events
naruoga
0
110
20260804_Q4AzureUpdateBite_FabricDataAgentの精度を高める設計.pdf
matayuuu
1
150
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
360
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
5k
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
540
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
160
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.5k
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
280
私がブラウザを自作したくなった理由
supurazako
1
270
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
230
Goでデータパイプラインを作ろう
sansantech
PRO
1
510
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
210
Making the Leap to Tech Lead
cromwellryan
135
10k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Building Applications with DynamoDB
mza
96
7.2k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Prompt Engineering for Job Search
mfonobong
0
410
Speed Design
sergeychernyshev
33
2k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
45k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Transcript
ٕज़ϒϩάͷͱ։ൃޮԽͷ
ςʔϚ ٕज़ϒϩάΛॻ͘ϝϦοτ ମݧஊ ։ൃޮԽͷ
ٕज़ϒϩάΛॻ͘ϝϦοτ ମݧஊ
2JJUBʹهࣄΛॻ͘Α͏ʹͳͬͯ ͲΜͳ͍͍͜ͱ͕͔͋ͬͨհ͠·͢
ʮΞτϓοτ͠·͠ΐ͏ʯ͍ͬͯ͏ ͋Γ͕ͪͳͰͳ͘ ମݧஊΛ͠·͢
ͳٕͥज़ϒϩάͷΛબΜ͔ͩʁ
ͳٕͥज़ϒϩάͷΛબΜ͔ͩʁ ΞυϕϯτΧϨϯμʔͷقઅ͔ͩΒʂ
ΞυϕϯτΧϨϯμʔͬͯ·͔͢ʁ
ΞυϕϯτΧϨϯμʔ https://help.qiita.com/ja/articles/qiita-adcal-1#advent-calendar;΅? https://ja.wikipedia.org/wiki/ίϖϦЀϕθϹЀύЄ
ΞυϕϯτΧϨϯμʔ
࣍ w ͲΜͳ͜ͱΛهࣄʹ͍ͯ͠Δ͔ w ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶃ w ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶄ w ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶅ w
·ͱΊ
ͲΜͳ͜ͱΛهࣄʹ͍ͯ͠Δ͔ w ։ൃΛ͍ͯ͠ΔதͰղܾ͢Δͷʹ͕͔͔࣌ؒͬͨ͜ͱͷཧ w ৽͍ٕ͠ज़ʹ͞Θͬͨ࣌ͷखॱϝϞ w ؾʹͳͬͯͪΐͬͱਂ͘·Ͱௐͨ͜ͱͷϝϞ
ͲΜͳ͜ͱΛهࣄʹ͍ͯ͠Δ͔ w ։ൃΛ͍ͯ͠ΔதͰղܾ͢Δͷʹ͕͔͔࣌ؒͬͨ͜ͱͷཧ w ৽͍ٕ͠ज़ʹ͞Θͬͨ࣌ͷखॱϝϞ w ؾʹͳͬͯͪΐͬͱਂ͘·Ͱௐͨ͜ͱͷϝϞ ࣗͷͨΊʹॻ͍ͯΔ͚ͩ ͦΕ͕୭͔ͷͨΊʹͳΕخ͍͠ͳ͍ͬͯ͏ఔͷؾ࣋ͪ
Α͔ͬͨ͜ͱᶃ
ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶃ ʮ͍͍Ͷʯͯ͠Β͑Δͱخ͍͠ w ϙδςΟϒͳϑΟʔυόοΫ͔͠དྷͳ͍ͷ͕͍͍ w ʹཱͬͨਓ͍͍Ͷԡͯ͘͠ΕΔ w ʹཱͨͳ͔ͬͨਓεϧʔ͢Δ͚ͩ w ୭͔ͷʹཱͬͨͱࢥ͏ͱϞνϕʔγϣϯ্͕͕Δ
ݸਓతײ 1昱樌1ͺ͚͚͢ͺͥ ͥΟ͚΄ఽ憝 懿Ԫහ ͚͚හ ϢζϺϼЄහ
ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶃ ʮ͍͍Ͷʯͯ͠Β͑Δͱخ͍͠ w Θ͟Θ͓͟ྱͷίϝϯτΛͯ͘͠ΕΔਓ͍·ͨ͠ʂ
Α͔ͬͨ͜ͱᶄ
ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶄ ίϝϯτ͕͖͔͚ͬͰ͞Βʹৄ͘͠ͳͬͨ w ݹΊͷهࣄʹରͯ͠࠷৽൛Ͱಈ͔ͳ͍ͱࢦఠΛΒ͏ w ࠷৽൛ͷରԠํ๏ΛௐΔ͖͔͚ͬʹ
ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶄ ίϝϯτ͕͖͔͚ͬͰ͞Βʹৄ͘͠ͳͬͨ w ৄ͍͠ਓڭ͑ͯͬͯॻ͍ͨΒɺৄ͍͠هࣄΛڭ͑ͯ͘Εͨ
Α͔ͬͨ͜ͱᶅ
ٕज़ϒϩάΛॻ͍ͯΑ͔ͬͨ͜ͱᶅ ϥΠϒϥϦͷϝϯςφʔ͔ΒΞυόΠεΛΒ͑ͨʂʂ
·ͱΊ w ٕज़ϒϩάΛॻ͍ͨΒ͍͍͜ͱ͕ͨ͘͞Μ͋Γ·ͨ͠ w Έͳ͞Μॻ͍ͯΈ͍͔͕ͯͰ͠ΐ͏͔
։ൃޮԽͷ
ٕज़બఆʹ͋ͨͬͯ w ϓϥΠϕʔτΛ௵ͯ͠࡞ΔͷͰڵຯ͕͋Δٕज़͚͍͍ͩͨ w ͭ·Βͳ͍ͱ͜Ζʹ࣌ؒΛඅͨ͘͠ͳ͍
ٕज़બఆʹ͋ͨͬͯ w ϓϥΠϕʔτΛ௵ͯ͠࡞ΔͷͰڵຯ͕͋Δٕज़͚͍͍ͩͨ w ϑϩϯτपΓͷ࠷৽ٕज़Λ͍Ζ͍Ζ͍͍ͨ w ͭ·Βͳ͍ͱ͜Ζʹ࣌ؒΛඅͨ͘͠ͳ͍ w αʔόཱͯͯͦ͜ʹσϓϩΠͯ͠ͱ͔ͬͯΒΕͳ͍ ࣗಈԽ͢Ε͍͍͚Ͳͦͷڥߏங͢ΒΓͨ͘ͳ͍
ٕज़બఆʹ͋ͨͬͯ w ϓϥΠϕʔτΛ௵ͯ͠࡞ΔͷͰڵຯ͕͋Δٕज़͚͍͍ͩͨ w ϑϩϯτपΓͷ࠷৽ٕज़Λ͍Ζ͍Ζ͍͍ͨ w ͭ·Βͳ͍ͱ͜Ζʹ࣌ؒΛඅͨ͘͠ͳ͍ w αʔόཱͯͯͦ͜ʹσϓϩΠͯ͠ͱ͔ͬͯΒΕͳ͍ ࣗಈԽ͢Ε͍͍͚Ͳͦͷڥߏங͢ΒΓͨ͘ͳ͍
ࢲͷڵຯ͕͋Δ18"ͷաڈʹ͍ͯ͠ΔͷͰ ࠓͦ͜ʹूத͢ΔͨΊʹͨ͜͠ͱΛ͠·͢
͍ͬͯΔٕज़
αʔόʔϨεΞʔΩςΫνϟ
αʔόʔϨεΞʔΩςΫνϟ ͜ͷลͷ
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍ αʔόͷཧ"84ͤΔ
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍ αʔόͷཧ"84ͤΔ w αʔόαΠυͷίʔυॻ͘ͷΊΜͲ͍͘͞
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍ αʔόͷཧ"84ͤΔ w αʔόαΠυͷίʔυॻ͘ͷΊΜͲ͍͘͞ "84-BNCEBͳΒؔΛॻ͍ͯΞοϓϩʔυ͢Δ͚ͩ w
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍ αʔόͷཧ"84ͤΔ w αʔόαΠυͷίʔυॻ͘ͷΊΜͲ͍͘͞ "84-BNCEBͳΒؔΛॻ͍ͯΞοϓϩʔυ͢Δ͚ͩ w ؔͱґଘϥΠϒϥϦ[JQԽͯ͠ΞοϓϩʔυͳΜͯͬͯΒΕΜ
OPEF@NPEVMFTΛखಈΞοϓϩʔυͱ͔ ࠓͲ͖ߟ͑ΒΕͳ͍͋Γ͑ͳ͍
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍ αʔόͷཧ"84ͤΔ w αʔόαΠυͷίʔυॻ͘ͷΊΜͲ͍͘͞ "84-BNCEBͳΒؔΛॻ͍ͯΞοϓϩʔυ͢Δ͚ͩ w ؔͱґଘϥΠϒϥϦ[JQԽͯ͠ΞοϓϩʔυͳΜͯͬͯΒΕΜ 4FSWFSMFTT'SBNFXPSLͳΒίϚϯυͭͰྃ
αʔόʔϨεΞʔΩςΫνϟ w αʔόཱͯͨΓࢮ׆ࢹͱ͔ͨ͘͠ͳ͍ αʔόͷཧ"84ͤΔ w αʔόαΠυͷίʔυॻ͘ͷΊΜͲ͍͘͞ "84-BNCEBͳΒؔΛॻ͍ͯΞοϓϩʔυ͢Δ͚ͩ w ؔͱґଘϥΠϒϥϦ[JQԽͯ͠ΞοϓϩʔυͳΜͯͬͯΒΕΜ 4FSWFSMFTT'SBNFXPSLͳΒίϚϯυͭͰྃ
αʔόαΠυؔΛॻ͍ͯίϚϯυͭୟ͚ͩ͘Ͱ0,ʂ ୯ͳΔؔͳͷͰϩʔΧϧͰಈ࡞֬ೝՄೳʂ
ϗεςΟϯάαʔϏε
ϗεςΟϯάαʔϏε ͜ͷลͷ
ϗεςΟϯάαʔϏε લఏ w 41"Λӡ༻͢Δ্Ͱͷొਓ 8FCαʔό "1*αʔό ɠϣ϶γσ͡ΟURLίμψφͭ html/css/jsΨݐ
IUNM DTT KT %# ɡᥝ䖕ͮͼ APIςЄϝ΄ϔЄόݐ/ๅෛ
ϗεςΟϯάαʔϏε લఏ w 41"Λӡ༻͢Δ্Ͱͷొਓ "1*αʔό IUNM DTT KT
%# ɠϣ϶γσ͡ΟURLίμψφͭ html/css/jsΨݐ ɡᥝ䖕ͮͼ APIςЄϝ΄ϔЄόݐ/ๅෛ "1*αʔό"84-BNCEBΛ ͬͯαʔόʔϨεԽ
ϗεςΟϯάαʔϏε લఏ w 41"Λӡ༻͢Δ্Ͱͷొਓ 8FCαʔό "1*αʔό IUNM DTT
KT %# ɠϣ϶γσ͡ΟURLίμψφͭ html/css/jsΨݐ ɡᥝ䖕ͮͼ APIςЄϝ΄ϔЄόݐ/ๅෛ ͬͪ͜Ͳ͏͢Δʁʁ
ϗεςΟϯάαʔϏε w Γ͍ͨ͜ͱ
ϗεςΟϯάαʔϏε w Γ͍ͨ͜ͱ ɠSPA΄πЄϖΨ䨗ͥ
ϗεςΟϯάαʔϏε w Γ͍ͨ͜ͱ ɠSPA΄πЄϖΨ䨗ͥ ɡϠϸϖͯΡ IUNM DTT KT
ϗεςΟϯάαʔϏε w Γ͍ͨ͜ͱ ɠSPA΄πЄϖΨ䨗ͥ ɡϠϸϖͯΡ IUNM DTT KT
8FCαʔό IUNM DTT KT ɢςЄϝϔϤϺα
ϗεςΟϯάαʔϏε w Γ͍ͨ͜ͱ ɠSPA΄πЄϖΨ䨗ͥ ɡϠϸϖͯΡ IUNM DTT KT
8FCαʔό IUNM DTT KT ɢςЄϝϔϤϺα ɣϢήαϸίμψφ
ϗεςΟϯάαʔϏε w Γ͍ͨ͜ͱ ɠSPA΄πЄϖΨ䨗ͥ ɡϠϸϖͯΡ IUNM DTT KT
8FCαʔό IUNM DTT KT ɢςЄϝϔϤϺα ᶃʹ࣌ؒΛඅ͍ͨ͠ͷͰ ᶄͱᶅͷ͜ͱԿߟ͑ͨ͘ͳ͍ ɣϢήαϸίμψφ
ϗεςΟϯάαʔϏε w ٕज़બఆ w ࣗͰαʔόΛཧ͢Δͷݏͩ w ੩తϑΝΠϧΛ৴Ͱ͖ΔαʔϏεΛ͏ w
ީิ w "NB[PO4 w (JUIVC1BHFT w /FUMJGZ w 'JSFCBTF
ϗεςΟϯάαʔϏε "NB[PO4 w "84ͷετϨʔδαʔϏεͰՄ༻ੑ͕ͱͯߴ͍ w ϏϧυσϓϩΠࣗલͰ༻ҙ खಈͰΔ͔ࣗಈԽͷΈΛߏங͢Δඞཁ͋Γ ֎ɺෆ࠾༻
ϗεςΟϯάαʔϏε (JUIVC1BHFT w (JUIVCϦϙδτϦͷಛఆσΟϨΫτϦΛ৴Ͱ͖ΔαʔϏε w ઃఆΛҰߦॻ͚ίϚϯυҰൃͰϏϧυσϓϩΠՄೳ w ීஈ͔Β͍׳Ε͍ͯͨ
࠾༻ʂͰ͍͍͚Ͳͬͱָͳͷͳ͍ͷ͔ͳʁ
ϗεςΟϯάαʔϏε /FUMJGZ w ੩తϑΝΠϧΛ৴͢ΔαʔϏεͰ+".4UBDL˞ͷߟҊऀ͕ઃऀ w (JUIVCʹϓογϡ͢Δ͚ͩͰউखʹϏϧυσϓϩΠ͞ΕΔʂ w ͔͠ϒϥϯν୯ҐϓϧϦΫ୯ҐͰࣗಈσϓϩΠʂ
w ઃఆొҰॠ ศར͗͢Δʂ࠾༻ʂ ※JAM => JavaScript/API/Markup https://jamstack.org/
ϗεςΟϯάαʔϏε 'JSFCBTF w N#BB4#BB4ͱݺΕ͍Ζ͍ΖͳαʔϏεΛఏڙ͍ͯ͠Δ w ೝূɺ௨ɺετϨʔδɺϗεςΟϯάɺʑ w ApSFCBTFJOJUAͰ؆୯ʹॳظઃఆ
w ApSFCBTFEFQMPZAͰσϓϩΠ ศར͚ͩͲ/FUMJGZʹྼΔ ෳڥ༻ҙ͕Ұख͍ؒΔ
ϗεςΟϯάαʔϏε w /FUMJGZΛ࠾༻ʂ w ͲΕ͚ͩศརͳͷ͔ར༻ΠϝʔδΛઆ໌͠·͢ʂ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα ɥϫЄυ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα https://sample.netlify.com ɦᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα ɥϫЄυ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα https://sample.netlify.com ɦᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα ɥϫЄυ ։ൃڥͱຊ൪ڥΛ Ͱ͖Δ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα https://sample.netlify.com ɦᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα ɥϫЄυ ϓϧϦΫͷϨϏϡʔ࣌ʹ ಈ࡞֬ೝͰ͖Δ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα https://sample.netlify.com ɦᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα ɥϫЄυ ͜ͷ63-ʹΞΫηε͢Ε ͦͷ࣌ͷίϯςϯπʹ ͍ͭͰΞΫηεͰ͖Δ
ϗεςΟϯάαʔϏε ɠSPA΄πЄϖΨ䨗ͥ devϣ϶Ѐώ masterϣ϶Ѐώ ɡgit push origin dev
https://dev--sample.netlify.com ɢᛔ㵕Ϡϸϖ/ϔϤϺα https://sample.netlify.com ɦᛔ㵕Ϡϸϖ/ϔϤϺα ɣϤϸϷμ֢౮ https://deploy-preview-1--sample.netlify.com ɤᛔ㵕Ϡϸϖ/ϔϤϺα ɥϫЄυ ໘ͳઃఆͳ͘ී௨ʹ։ൃͯ͠Δ͚ͩͰ ϏϧυσϓϩΠͰ͖Δͷ͕ͱ͍͍ͯʂ
·ͱΊ w αʔόͷߏஙӡ༻ϏϧυσϓϩΠΛ؆ུԽͰ͖ͨ w "84-BNCEBΛͬͨαʔόʔϨεΞʔΩςΫνϟ w /FUMJGZΛͬͨ։ൃڥͷඋ w
41"18"ͷ։ൃʹूதͰ͖͍ͯ·͢ʂ