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
Craft CMSの良いとこと
Search
tamshow
July 20, 2017
Programming
2
680
Craft CMSの良いとこと
webっちゃ! Vol.18の発表で使用したスライドです。
tamshow
July 20, 2017
Tweet
Share
More Decks by tamshow
See All by tamshow
HTMLコーディングから考える エントリーフォームの最適化
tamurashogo
3
270
Other Decks in Programming
See All in Programming
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.2k
初めてDefinitelyTypedにPRを出した話
syumai
0
420
Jakarta EE meets AI
ivargrimstad
0
150
最新TCAキャッチアップ
0si43
0
190
CSC509 Lecture 11
javiergs
PRO
0
180
Better Code Design in PHP
afilina
PRO
0
130
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
540
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
990
Outline View in SwiftUI
1024jp
1
330
cmp.Or に感動した
otakakot
3
200
CSC509 Lecture 13
javiergs
PRO
0
110
Featured
See All Featured
Unsuck your backbone
ammeep
668
57k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
BBQ
matthewcrist
85
9.3k
A Philosophy of Restraint
colly
203
16k
A better future with KSS
kneath
238
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Designing for Performance
lara
604
68k
Optimizing for Happiness
mojombo
376
70k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Transcript
גࣜձࣾϫΫάϛాଜষޗ $SBGU$.4ͷྑ͍ͱ͜ͱ
ాଜষޗ גࣜձࣾϫΫάϛ ϑϩϯτपΓͷίʔσΟϯάͳͲΛ୲
ຊͷ༰ $SBGU$.4ͱͲΜͳͷ͔ ެࣜϖʔδͷઆ໌ಈըΛݟͳ͕ΒσϞαΠτΛ৮ͬͯΈΑ͏ʂ IUUQTDSBGUDNTDPNGFBUVSFTNBUSJY ʢεϥΠυެࣜαΠτΛ༁͍ͯ͠·͕͢ɺࢀߟఔʹɺɺʣ
.BUSJY IUUQTDSBGUDNTDPNGFBUVSFTNBUSJY ߦྻ .BUSJY ϑΟʔϧυ ෳϑΟʔϧυΛϒϩοΫλΠϓ୯ҐͰՃͰ͖Δ
.BUSJY ೖΕ͕͑ࣗ༝ʹग़དྷΔ .BUSJYύϫϑϧͳϑΟʔϧυλΠϓͰॊೈͳίϯςϯπཧΛՄೳʹ͠ ·͢ɻ܁Γฦ͠ίϯςϯπϚϧνϓϧλΠϓΛҰॹͷ༰Ͱදࣔ͢Δͷ ʹ࠷దͰ͢ɻ ϒϩοΫͰ࡞͍ͬͯ͘ .BUSJYϑΟʔϧυϚϧνϒϩοΫͰ࡞ΒΕ͍ͯ·͢ɻ ϒϩοΫͭ·ͨෳͷΧελϜϑΟʔϧυͰ࡞ΒΕ͍ͯ·͢ɻ
.BUSJY ෳͷϒϩοΫλΠϓΛ࣋ͭ͜ͱ͕ग़དྷΔ ͭͷ.BUSJYϑΟʔϧυʹ ଟ͘ͷλΠϓͷϒϩοΫΛؚΊΔࣄ͕Ͱ͖·͢ɻ ੍࡞ऀ৽͍͠ίϯςϯπΛՃ͢Δ࣌ʹબͿ͜ͱ͕Ͱ͖·͢ɻ ॊೈੑ .BUSJYͷग़ྗͱͯॊೈͰ͢ɻ
.BUSJY Ͳ͜Ͱ༻Մೳ ༻ग़དྷΔՕॴΤϯτϦʔ͚ͩͰ͋Γ·ͤΜɻ $SBGUͷଞͷϑΟʔϧυλΠϓͱಉ༷ʹɺ ϢʔβʔɺΞηοτɺλάɺάϩʔόϧͰ༻͢Δ͜ͱ͕Ͱ͖·͢ɻ
-JWF1SFWJFX IUUQTDSBGUDNTDPNGFBUVSFTMJWFQSFWJFX ϥΠϒϓϨϏϡʔ ฤू༰ΛϦΞϧλΠϜʹ֬ೝՄೳ Լॻ͖ϖʔδͷϦϯΫڞ༗
-JWF1SFWJFX ࡞ۀதͷϓϨϏϡʔ ϥΠϒϓϨϏϡʔͰอଘલͷίϯςϯπͷදࣔΛ֬ೝͰ͖·͢ɻ Լॻ͖อଘͰϖʔδΛଞͷਓڞ༗͢Δ͜ͱͰ͖·͢ɻ
-PDBMJ[BUJPO IUUQTDSBGUDNTDPNGFBUVSFTMPDBMJ[BUJPO ϩʔΧϦθʔγϣϯ ඪ४ػೳͰ͢ͰʹଟݴޠԽ
ਖ਼͍͠ϩʔΧϦθʔγϣϯ $SBGU1SPΛ༻͢Δͱ63-ՕʑͷϑΟʔϧυͷ·ͰαΠτͷίϯς ϯπΛಛఆͷݴޠҬʹϩʔΧϥΠζ͢Δ͜ͱ͕Ͱ͖·͢ɻ -PDBMJ[BUJPO ͢ͰʹઃఆࡁΈ $SBGU1FSTPOBMͱ$SBGU$MJFOUϩέʔϧ୯ҐͰίϯςϯπΛ֨ೲͯ͠ ͍·͢ɻͰ͢ͷͰɺ൪ͷϩέʔϧʹରԠ͍ͤͨ͞߹͢Ͱʹઃఆ ͞Ε͍ͯ·͢ɻ
0OF$MJDL6QEBUJOH IUUQTDSBGUDNTDPNGFBUVSFTPOFDMJDLVQEBUJOH ϫϯΫϦοΫΞοϓσʔτ ·ΔͰຐ๏ͷΑ͏ͳΞοϓσʔτ
0OF$MJDL6QEBUJOH Ϙλϯ̍ͭͰΞοϓσʔτ ϘλϯͭͰΞοϓσʔτɺຐ๏ͷΑ͏ʹ؆୯Ͱ͢ɻ ࠷৽ͷػೳɺόάमਖ਼ɺηΩϡϦςΟڧԽͳͲϫϯΫϦοΫͰΫϥϑτΛߋ৽͠ ·͢ɻ
$VTUPN'JFMET IUUQTDSBGUDNTDPNGFBUVSFTDVTUPNpFMET ΧελϜϑΟʔϧυ ଟ༷ͳछྨͷϑΟʔϧυλΠϓ
ΧελϜϑΟʔϧυͰίϯςϯπΛఆٛ͢Δ $SBGU͔ΒίϯςϯπΛఆٛ͠·ͤΜɻ ੍࡞࣌ʹඞཁͳใΛදࣔ͢ΔͨΊͷΧελϜϑΟʔϧυΛઃఆ͢Δ͜ͱ ͰɺίϯςϯπΛఆٛ͠·͢ɻͦͯ͠$SBGUͷϑΟʔϧυλΠϓΛ४උ ͍ͯ͠·͢ɻ $VTUPN'JFMET ϑΟʔϧυΛҰݩཧ શͯͷΧελϜϑΟʔϧυҰݩཧ͞Ε͍ͯ·͢ɻ άϧʔϐϯάͨ͠Γཧ͢Δ͜ͱ͕Ͱ͖·͢ɻ ͦΕΒ࣮ࡍͷදࣔ͞ΕΔσʔλʹӨڹ͠·ͤΜɻ
ඞཁͳॴʹϑΟʔϧυΛׂΓͯΔ ͍͔ͭ͘ͷϑΟʔϧυΛ࡞͢ΔͱͦΕΒΛɺηΫγϣϯɺϢʔβʔɺ ΞηοτɺλάɺϚτϦοΫεϑΟʔϧυɺάϩʔόϧʹηοτ͢Δ͜ ͱ͕ग़དྷ·͢ɻ $VTUPN'JFMET
4FDUJPO5ZQFT IUUQTDSBGUDNTDPNGFBUVSFTTFDUJPOUZQFT ηΫγϣϯλΠϓ γϯάϧɺνϟϯωϧɺετϥΫνϟ ίϯςϯπʹ߹ΘͤͯదͳηΫγϣϯબՄೳ
దͳηΫγϣϯΛબ ͯ͢ͷίϯςϯπ͕ۉʹ࡞͞ΕΔͱݶΓ·ͤΜΑͶɻ $SBGUʹɺඞཁʹԠͯ͡ΤϯτϦʔΛཧͰ͖ΔछྨͷηΫγϣϯ͕ ༻ҙ͞Ε͍ͯ·͢ɻ 4FDUJPO5ZQFT
γϯάϧɺνϟϯωϧɺ͓ΑͼετϥΫνϟ γϯάϧҰճݶΓͷϖʔδΛ֨ೲ͠ɺνϟϯωϧ͍ΘΏΔΤϯτϦʔ Λ֨ೲ͠ɺετϥΫνϟ֊ߏΛ࣋ͭྨࣅͨ͠ΤϯτϦʔΛ֨ೲ͠ ·͢ɻඞཁʹԠͯ͡ɺγϯάϧɺνϟϯωϧɺετϥΫνϟΛ࡞Ͱ͖ ·͢ɻ 4FDUJPO5ZQFT
&OUSZ5ZQFT IUUQTDSBGUDNTDPNGFBUVSFTFOUSZUZQFT ΤϯτϦʔλΠϓ ͭͷηΫγϣϯͰෳͷίϯςϯπλΠϓΛ֨ೲ
ͭͷηΫγϣϯͰෳͷίϯςϯπλΠϓΛཧ νϟϯωϧͱετϥΫνϟෳͷλΠϓͷίϯςϯπΛ֨ೲͰ͖ɺΤ ϯτϦʔλΠϓͰఆٛͰ͖·͢ɻ ֤ΤϯτϦλΠϓɺಠࣗͷΧελϜϑΟʔϧυηοτΛऔಘ͠·͢ɻ &OUSZ5ZQFT
"TTFUT IUUQTDSBGUDNTDPNGFBUVSFTBTTFUT Ξηοτ ݟ͍͢Ξηοτཧ ΫϥυʹอଘՄೳɺҙͷαΠζมߋՄೳ
BTTFUTΛىಈ $SBGUʹɺ࠷খݶͷߏͷBTTFUTཧ͕Έࠐ·Ε͍ͯ·͢ɻ αϒϑΥϧμΛ࡞͠ɺϑΥϧμϑΝΠϧΛҠಈͨ͠Γɺ໊લΛมߋ ͨ͠ΓɺϦεταϜωΠϧදࣔͰϑΝΠϧΛදࣔͰ͖·͢ɻ "TTFUT ΫϥυʹอଘՄೳ $SBGU1SPɺ"NB[PO4ɺ3BDLTQBDF$MPVE'JMFTɺ(PPHMF$MPVE 4UPSBHFʹଓͰ͖·͢ɻΫϥυͷΞηοτΛઃఆ͢ΔͱɺϩʔΧϧ ͱฒΜͰදࣔ͞ΕɺϩʔΧϧͱΫϥυͷιʔεؒͰϑΥϧμϑΝΠ ϧΛҠಈ͢Δ͜ͱ͕Ͱ͖·͢ɻ
ը૾ͷαΠζΛมߋՄೳ ಛఆͷαΠζͰը૾Λग़ྗ͢Δඞཁ͕͋Δ߹ɺύϥϝʔλΛઃఆ͢ Δͱ৽͍͠ͰαΠζͷը૾Λ࡞͢Δ͜ͱ͕Ͱ͖·͢ɻ ͯ͢ͷը૾ͰαΠζมߋՄೳͰɺมߋޙͷը૾ඞཁʹԠͯ͡࡞ ͞Ε·͢ɻ "TTFUT
6TFST IUUQTDSBGUDNTDPNGFBUVSFTVTFST Ϣʔβʔ ϢʔβάϧʔϓΞΫηεݖݶͷઃఆ͕Մೳ
ίϯςϯπϚωʔδϟΛཧ $SBGU1SPʹϑϧػೳͷϢʔβʔཧɺύϒϦοΫϢʔβʔͷొɺγ ϯϓϧͰڧྗͳݖݶγεςϜ͕͍͍ͯ·͢ɻ ෳͷϢʔβʔάϧʔϓΛ࡞ ඞཁͳ͚ͩͷϢʔβʔάϧʔϓΛ࡞͢Δ͜ͱ͕Ͱ͖·͢ɻ֤ͦͯ͠ Ϣʔβʔෳͷάϧʔϓʹଐ͢Δࣄ͕Ͱ͖·͢ɻ 6TFST
ϢʔβʔͱάϧʔϓʹݖݶΛ༩͑Δ ϢʔβʔʹݖݶΛׂΓͯΔ͜ͱͰαΠτ্Ͱ্ͷૢ࡞ΛઃఆՄೳͰ͢ɻ ·ͨϢʔβʔάϧʔϓʹݖݶΛׂΓͯΔ͜ͱͰ͖·͢ɻ άϧʔϓɺάϧʔϓʹଐ͢Δͯ͢ͷϢʔβʔʹݖݶΛ༩͑·͢ɻ 6TFST
$BUFHPSJFTBOE5BHT IUUQTDSBGUDNTDPNGFBUVSFTDBUFHPSJFTBOEUBHT ΧςΰϦʔζͱλάζ $SBGUDBUFHPSZͱUBHͰ؆୯ཧ
ͯ͢దͳॴʹ $SBGUDBUFHPSZͱUBHΛαϙʔτ͍ͯ͠·͢ͷͰࣄΛཧ͢Δͷ؆ ୯Ͱ͢ɻ ΧςΰϦʔͰྨΛཧ $SBGUͰҟͳΔྨΛཧ͢ΔΧςΰϦʔάϧʔϓΛઃఆ͠·͢ɻ $BUFHPSJFTϑΟʔϧυΛ༻ͯ͠ଞͷΤϨϝϯτʹΧςΰϦʔΛద༻ ͢Δ͜ͱ͕Ͱ͖·͢ɻ $BUFHPSJFTBOE5BHT
λά͖ϑΥʔΫιϊϛʔ $SBGUʹɺλά͖ϑΥʔΫιϊϛʔͷαϙʔτΈࠐ·Ε͍ͯ· ͢ɻෳͷλάάϧʔϓΛઃఆͰ͖ɺ֤άϧʔϓʹಠࣗͷλάηοτ ͕͋Γ·͢ɻλάϑΟʔϧυ͔Βଈ࠲ʹλάΛ࡞Ͱ͖·͢ɻ $BUFHPSJFTBOE5BHT
3FMBUJPOT IUUQTDSBGUDNTDPNGFBUVSFTSFMBUJPOT ϦϨʔγϣϯζ ڧྗͳؔ࿈͚
ڧྗͳؔ࿈͚ $SBGUʹڧྗͳؔ࿈͚ΤϯδϯͱͭͷϦϨʔγϣφϧϑΟʔϧυλ Πϓ͕͋Γ·͢ɻͦΕ͋ͳͨͷFOUSJFTɺBTTFUTɺDBUFHPSJFTɺVTFSTɺ UBHTΛ·ͱΊͯϦϯΫ͢Δࣄ͕Ͱ͖·͢ɻ 3FMBUJPOT Ұ؏ੑͷ͋Δؔ࿈͚ ؔ࿈͚Λ͢Δ߹FOUSJFTɺBTTFUTɺDBUFHPSJFTɺVTFSTɺUBHTͷ ͲΕͰ͋ͬͯίϯςϯπ੍࡞ऀͱςϯϓϨʔτσβΠφʔͲͪΒʹ Ұ؏ੑͷ͋Δૢ࡞Λ༩͑·͢ɻ͜ΕɺͳͥͳΒཪͰಉؔ͡࿈͚Τ ϯδϯΛ༻͢ΔͨΊͰ͢ɻ
͋ͳ͕ͨΉؔ࿈͚Λग़ྗ $SBGUͷ৽͍͠SFMBUFE5Pཁૉͷύϥϝʔλʔঢ়گʹΑͬͯγϯϓϧ ʹෳࡶʹͰ͖·͢ɻ 3FMBUJPOT
5FNQMBUJOH IUUQTDSBGUDNTDPNGFBUVSFTUFNQMBUJOH ςϯϓϨʔτ ςϯϓϨʔτࣗ༝
࣋ͪࠐΈͷ)5.- ࢲͨͪόοΫΤϯυΛఏڙ͍ͯ͠·͢ɻ ϑϩϯτΤϯυશʹ͋ͳͨͷࣗ༝ͳαΠτΛ࡞Ε·͢ɻ ΤϥʔΛใࠂ ͋ͳ͕ͨ࡞ͬͨςϯϓϨʔτʹؒҧ͍͕͋Δ߹ਖ਼֬ʹϔϧϓϝοηʔ δͱϋΠϥΠτ͞ΕͨςϯϓϨʔτίʔυΛදࣔ͠·͢ɻ 5FNQMBUJOH
5XJHʹΑͬͯڧԽ ςϯϓϨʔτ5XJHʹΑͬͯڧԽ͞Ε·͢ɻ 5XJH4ZNGPOZͷΫϦΤΠλʔͨͪʹΑͬͯ࡞ΒΕͨΤϨΨϯτͰ ύϫϑϧͳςϯϓϨʔτγεςϜͰ͢ɻ ίʔυΛυϥΠʹอͭͨΊʹཱͭૉΒ͍͠ํ๏Λఏڙͯ͘͠Ε·͢ɻ )5.-͚ͩͰͳ͍ σϑΥϧτͰIUNMΛݟ·͕͢ɺҙͷ֦ுࢠΛ༩͑ΔࣄͰ͖·͢ɻ ·ͨɺҙͷ.*.&UZQFΛ༩͑ϨεϙϯεΛฦ͢͜ͱͰ͖·͢ɻ 5FNQMBUJOH
3FTQPOTJWF$1 IUUQTDSBGUDNTDPNGFBUVSFTSFTQPOTJWFDQ Ϩεϙϯγϒͳίϯτϩʔϧύωϧ 1$Ͱ41ͰฤूՄೳ
֎ͰฤूՄೳ $SBGUϨεϙϯγϒͳίϯτϩʔϧύωϧͰ͢ͷͰ֎ͰฤूՄೳͰ͢ɻ 3FTQPOTJWF$1
%BTICPBSE IUUQTDSBGUDNTDPNGFBUVSFTEBTICPBSE μογϡϘʔυ Ϣʔβʔʹ߹ΘͤͯΧελϚΠζՄೳ
ࢥ͍௨ΓͷμογϡϘʔυ μογϡϘʔυϢʔβʔʹ߹ΘͤͯΧελϚΠζ͢Δ͜ͱ͕Ͱ͖·͢ɻ 344ϑΟʔυɺ2VJDL1PTUɺ࠷ۙͷߘɺΞοϓσʔτ͙ʹར༻Մ ೳͳXJEHFUTCPYࣗ༝ʹϓϥάΠϯΛՃͰ͖·͢ɻ %BTICPBSE
$SBGU$.41SJDJOH'"2 IUUQTDSBGUDNTDPNQSJDJOHGBR Ձ֨ʹؔ͢ΔΑ͋͘Δ࣭
ͲͷΑ͏ʹ$SBGU$MJFOU͘͠$SBGU1SPΛങ͏͜ͱ͕Ͱ ͖·͔͢ʁ ʮ$SBGU1FSTPOBMʯ·ͨʮ$SBGU$MJFOUʯΛಋೖͯ͠Ε$.4ͷத͔ ΒߪೖͰ͖·͢ɻίϯτϩʔϧύωϧͷதͷશͯͷϖʔδͷԼʹϦϯΫ ͋Γ·͢ɻ $SBGU$.41SJDJOH'"2
ߪೖ͢Δલʹ$SBGU$MJFOUPS1SPΛࢼ͢͜ͱͰ͖·͔͢ʁ ͍ɻ͋ͳ͕ͨඇެ։ͷυϝΠϯ໊͔Β$SBGU$.4Λ࣮ߦ͍ͯ͠Δ߹ ʮ$MJFOUBOE1SPFEJUJPOTʯΛແظݶʹςετ༻͢ΔΦϓγϣϯ͕͋ Γ·͢ɻ $SBGU$.41SJDJOH'"2
͍ɺ͑େৎͰ͢ɻ $SBGU$.41SJDJOH'"2 ޙ͔Β$MJFOUFEJUJPO͔Β1SPʹΞοϓάϨʔυग़དྷ·͔͢ʁ
͍ɺͰ͖·͢ɻ $SBGU$.41SJDJOH'"2 ϩʔΧϧ൛Ͱߪೖͨ͠ޙʹຊ൪ʹެ։Ͱ͖·͔͢ʁ
͍͍͑ɺΞοϓσʔτશͯແྉͰ͢ɻ $SBGU$.41SJDJOH'"2 $SBGU$.4͕ϝδϟʔΞοϓσʔτͨ͠߹ɺྉ͔͔ۚ Γ·͔͢ʁ
͋ͳ͕ͨ$SBGU$.4Λ༻͢Δ͜ͱΛΉͷʹ༧ࢉ͕Γͳ͍ͷͰ͋Ε ࿈བྷ͍ͯͩ͘͠͞ɻͳʹ͔ಇ͖͔͚ΔࣄͰ͖·͢ɻ $SBGU$.41SJDJOH'"2 ར༻ՄೳͳׂҾ͋Γ·͔͢ʁ
גࣜձࣾϫΫάϛ ాଜষޗ !UBNTIPX ʔ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ