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
【爆速】2日で就職のためにJAMstackなハイパフォブログを作った話!!
Search
Shagamii
January 28, 2019
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【爆速】2日で就職のためにJAMstackなハイパフォブログを作った話!!
Shagamii
January 28, 2019
More Decks by Shagamii
See All by Shagamii
開発から運用まで Muddy に向き合う ABEMA における LP CMS 開発 ~ Muddy Web #7
ryuichisakagmai
1
330
学生エンジニア、 ドキドキ初OSSコミットへの挑戦🎉
ryuichisakagmai
0
700
Other Decks in Programming
See All in Programming
数百円から始めるRuby電子工作
tarosay
0
150
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
360
テーブルをDELETEした
yuzneri
0
140
freeeにおけるEvalsの実践例の紹介
freee
PRO
0
110
OpenSpecのproposalにbrainstormingを持たせてみた
tigertora7571
1
220
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
220
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
510
源内ハンズオン概要編
hideg
0
170
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
180
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
560
Featured
See All Featured
The SEO Collaboration Effect
kristinabergwall1
1
520
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
How GitHub (no longer) Works
holman
316
150k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
480
Believing is Seeing
oripsolob
1
190
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
460
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Product Roadmaps are Hard
iamctodd
55
12k
Typedesign – Prime Four
hannesfritz
42
3.1k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
4 Signs Your Business is Dying
shpigford
187
22k
Transcript
ʲരʳ ̎Ͱब৬ͷͨΊʹ +".TUBDLͳϋΠύϑΥϒϩάΛ ࡞ͬͨʂʂ✌
ΞδΣϯμ ࣗݾհ ͜Μͳϒϩά ٕͬͨज़ελοΫʹ͍ͭͯ +".TUBDLͱͳΜͧ ೋؒͰ࡞Δͧʂ
ࣗݾհ
ࣗݾհ ࡔ্ྤҰ 5XJUUFS!3ZVJDIJ4BLBHBNJ ౦ژཧՊେֶֶ෦ใֶՊ̏ ݄ ࡀ ࡾॏग़ ϑϩϯτΤϯυେ͖ΤϯδχΞ
ࣗݾհ αΠόʔͷΠϯλʔϯͰͬͨ͜ͱ &OHJOFFS+PCʢ̍ϲ݄ͪΐ͍ʣ "CFNF57ϑϩϯτΤϯυνʔϜ ݹ͘ͳ͍ͬͯͨը໘ͷશ໘վम 3FBDUKT SYKT
͜Μͳϒϩά✍
͜Μͳϒϩά IUUQTTIBHBNJJUFDI
͜Μͳϒϩά ͳΜͰ࡞͔ͬͨʜ ब׆ʂ Կ͔ݟͤΕΔͷཉ͍͠ ٕज़తؔ৺ ύϑΥʔϚϯεͷؔ৺
͜Μͳϒϩά ٕͬͨज़ +".TUBDL HBUTCZ DPOUFOUGVM OFUMJGZ
+".TUBDLͱͳΜͧ
+".TUBDLͱͳΜͧ Modern web development architecture based on client-side JavaScript, reusable
APIs, and prebuilt Markup. IUUQTKBNTUBDLPSH
+".TUBDLͱͳΜͧ Ҿ༻ݩɿIUUQTKBNTUBDLPSH
+".TUBDLͱͳΜͧ Any dynamic programming during the request/response cycle is handled
by JavaScript, running entirely on the client. This could be any frontend framework, library, or even vanilla JavaScript. +BWB4DSJQU ಈతʹϦονͳಈ͖Λ͢ΔͨΊͷKBWBTDSJQU
+".TUBDLͱͳΜͧ All server-side processes or database actions are abstracted into
reusable APIs, accessed over HTTPS with JavaScript. These can be custom-built or leverage third-party services. "QJT αʔόʔαΠυ࠶ར༻Մೳͳ"1*ͷΈ
+".TUBDLͱͳΜͧ Templated markup should be prebuilt at deploy time, usually
using a site generator for content sites, or a build tool for web apps. .BSLVQ ੩తαΠτͳͲʹࣄલʹίϯςϯπϏϧυ
+".TUBDLͱͳΜͧ αʔόʔʹϦΫΤετΛඈͯ͠ɺIUNMΛੜ͢ΔΈ Ͱͳ͘ɺ ίϯςϯπɾݟͨࣄલʹϏϧυ͓͖ͯ͠ɺ αʔόʔαΠυඞཁͳใΛऔͬͯ͘Δ"QJ܈Λ༻ҙ͠ɺ ͦΕΒΛಈతʹಈ͔ͨ͢ΊʹKBWBTDSJQUΛ༻͍Δɻ ͭ·Δͱ͜Ζʜʢͷղऍʣ
+".TUBDLͱͳΜͧ Կ͕͍͍ͷ͔ Ϗϧυͨ͠ͷΛDEO্ʹIPTUJOH͓͚ͯ͠ΔͷͰ͍ ϦΫΤετΛड͚ΔͨͼʹαʔόʔαΠυͰෳࡶͳॲཧΛ͢Δ͜ͱ͕ ͳ͍ͨΊɺ҆ՁͰεέʔϥϒϧɻ جຊతʹɺαʔόʔαΠυΛҙࣝ͢Δඞཁ͕ͳ͍ͷͰɺϑϩϯτΤϯυ ͷ։ൃʹूதͰ͖Δ
ٕͬͨज़ελοΫʹ͍ͭͯ⚒
ٕͬͨज़ελοΫʹ͍ͭͯ HBUTCZKT 3FBDUͷ੩తαΠτδΣωϨʔλʔ $POUFOUGVMͳͲͷ$.4ͷ࿈ܞͳͲ༷ʑͳϓϥάΠϯ 18"ରԠ SFBDUIFMNFU 5ZQFTDSJQU (SBQIRMʹΑΔσʔλऔಘ ࣍ͷϖʔδͷσʔλΛ1SFGFUDI &UDʜ
ٕͬͨज़ελοΫʹ͍ͭͯ ੩తͳ3FBDUͬͯͳΜͶΜ Ϗϧυ࣌ ੩తͳIUNM ੩తͳKTPO FUDʜ ΞΫηε࣌ ࠷ॳ੩తͳIUNM ͦΕҎ߱KTPOΛGFUDI͢Δ41"
ٕͬͨज़ελοΫʹ͍ͭͯ 18" 1SPHSFTTJWF8FC"QQTͷུ (PPHMF͕ओʹࡦఆ͢ΔɺXFCϖʔδʹ͓͍ͯωΠςΟϒͷΑ͏ͳ69ମݧ Λ࣮ݱ͢Δٕज़ )PNFը໘ΞΠίϯͷՃ ΩϟογϡʹΑΔΦϑϥΠϯͰͷಈ࡞ 1VTI௨ ࠓճͳ͠ &UDʜ
IUUQTEFWFMPQFSTHPPHMFDPNXFCQSPHSFTTJWFXFC BQQTDIFDLMJTU
ٕͬͨज़ελοΫʹ͍ͭͯ 18"
ٕͬͨज़ελοΫʹ͍ͭͯ $POUFOUGVM )FBEMFTT$.4 ߘͷϞσϧΛఆٛ͢Δ͚ͩͰهࣄ͕ॻ͚Δ هࣄಉ࢜ͷ࿈ܞ༻ҙ HBUTCZʹDPOUFOUGVM͔ΒσʔλΛऔͬͯ͘ΔϓϥάΠϯ /FUMJGZͷฤू࣌ͷϑοΫ
ٕͬͨज़ελοΫʹ͍ͭͯ /FUMJGZ ੩తαΠτΛϗεςΟϯά ಠࣗυϝΠϯͷઃఆ HJUIVCͱ࿈ܞͯ͠Ϗϧυ IUUQରԠ &UDʜ
ٕͬͨज़ελοΫʹ͍ͭͯ ࠓճͷ߹ KBWBTDSJQU "QJT NBSLVQ 3FBDUKT (BUTCZ $POUFOUGVM /FUMJGZ $POUFOUGVM
/FUMJGZ (BUTCZ
ٕͬͨज़ελοΫʹ͍ͭͯ ύϑΥʔϚϯεܭଌʢ-JHIUIPVTFʣ (PPHMF͕ఏڙ͢ΔΣϒαΠτΛղੳͯ͠ɺ࣭ʹؔ͢Δ ࢦඪ্ͷͨΊͷରࡦΛࣔͯ͘͠ΕΔ044
ೋؒͰ࡞Δͧʂ
ೋؒͰ࡞Δͧʂ $POUFOUGVMͰ"1*Λ࡞Δʢʣ ΞΧϯτొʢ̑ʣ .PEFMΛ࡞Δʢʣ
ೋؒͰ࡞Δͧʂ (BUTCZͰ3FBDUΛΰϦΰϦॻ͘ʢ̍ʣ CPJMFSQMBUFΛੜʢ̑ʣ DPOUFOUGVMपΓͷϓϥάΠϯΛೖΕΔʢʣ σʔλशಘͷHSBQIRMΛॻ͘ʢʣ
ೋؒͰ࡞Δͧʂ هࣄϖʔδͳͲಈతʹੜ͍ͨ͠ϖʔδͷઃఆΛHBUTCZOPEFKT ʹॻ͘ʢʣ ͋ͱඞཁʹԠͯ͡ϓϥάΠϯΛೖΕͭͭɺ3FBDUΛΰϦΰϦॻ͘ɻ
ೋؒͰ࡞Δͧʂ /FUMJGZʹσϓϩΠ͢Δʢʣ ΞΧϯτొʢ̑ʣ Ϗϧυ͢ΔϨϙδτϦͷొɺڥมɺϏϧυίϚϯυͷઃఆʢʣ ΧελϜυϝΠϯͷઃఆʢʣ
·ͱΊ☀
·ͱΊ ΈΜͳ͓Ոؼͬͯ࡞ͬͯͶʂ ਫ༵ʹσϓϩΠྃͯ͠Δͣ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ