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
DMMのハイパー メディアオタサーの姫 arimoが語る Phalcon
Search
arimo
October 03, 2015
Programming
5
16k
DMMのハイパー メディアオタサーの姫 arimoが語る Phalcon
10/3(sat) PHPカンファレンス2015で発表してきたPhalconの資料
arimo
October 03, 2015
Tweet
Share
More Decks by arimo
See All by arimo
arimo_birthday_2016
arimo
1
8.8k
DMMのハイパー メディアオタサーの姫arimoが語る Phalconその後 /phpblt-phalcon-after
arimo
0
1.8k
Other Decks in Programming
See All in Programming
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
180
fs2-io を試してたらバグを見つけて直した話
chencmd
0
220
As an Engineers, let's build the CRM system via LINE Official Account 2.0
clonn
1
670
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
あれやってみてー駆動から成長を加速させる / areyattemite-driven
nashiusagi
1
200
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
200
バグを見つけた?それAppleに直してもらおう!
uetyo
0
170
Symfony Mapper Component
soyuka
2
730
命名をリントする
chiroruxx
1
380
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
130
MCP with Cloudflare Workers
yusukebe
2
220
useSyncExternalStoreを使いまくる
ssssota
6
1k
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
How to Ace a Technical Interview
jacobian
276
23k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
How to train your dragon (web standard)
notwaldorf
88
5.7k
For a Future-Friendly Web
brad_frost
175
9.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Building Your Own Lightsaber
phodgson
103
6.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
A Philosophy of Restraint
colly
203
16k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Transcript
%..ͷϋΠύʔ ϝσΟΞΦλαʔͷඣ BSJNP͕ޠΔ 1IBMDPO
ϋΠύʔϝσΟΞ ΦλͷΈͳ͞Μ ͖͛͝ΜΑ͏ʂʂʂ
λΠτϧʹΒΕͨ Έͳ͞Μ ͖͛͝ΜΑ͏ʂʂʂʂ
·͡Ίʹ1IBMDPO ʹ͍ͭͯΓ͔ͨͬ ͨਓɺͪΐͬͱ͝Ί Μͳ͍͞ʜ
͓ർΕ༷ Ͱ͢ʂ ఏڙ %..DPN-BCP
ࣗݾհ
ϋΠύʔϝσΟΞΦ λαʔͷඣ!BSJNP Ͱ͢ʂʂʂʂʂ
ϋΠύʔ
ϝσΟΞ Φλαʔ
ඣʢࣗশʣ
!BSJNP
ϋΠύʔϝσΟΞ Φλαʔͷඣͱ
(PPHMFͰ αδΣετ͞ΕΔ ϋΠύʔϝσΟΞΦλαʔͷඣͱ
ΑΖ͚͠Εݕࡧ ͍͍ͯͨͩͯ͠ ϋΠύʔϝσΟΞΦλαʔͷඣͱ
ϋΠύʔϝσΟΞΦλαʔͷඣͱ
άάϥϏϦςΟ ͷྑ͍͞ ϋΠύʔϝσΟΞΦλαʔͷඣͱ
͋Γϒϩάհ
ΠϘ࣒ʹ͍ͭͯͷ ҙשى ͋Γϒϩάհ
͋Γϒϩάհ
࣏Γ·ͨ͠ WA ͋Γϒϩάհ
͋Γϒϩάհ
࣏Γ·ͨ͠ WA ͋Γϒϩάհ
ಛٕ
ઞΓܳ ಛٕ
ಛٕ
͓લͷཤྺॻ ͭ·ΒΜ ಛٕ
ಛٕ
௧λΠπ৬ਓ ಛٕ
ಛٕ
BSJNP %..ͰԿͯ͠Δ͔ ʢඣۀ͔ͬΓ͡Όͳ͍Αʂʣ
ΞϓϦͷαʔόαΠυΛ %.. ʢ৽نҊ݅ʣ ͪ͝Όͪ͝Ό͍ͯ͠Δ ϓϩάϥϚ
ɾϑϩϯτΤϯυΔ ɾΠϯϑϥߟ͑Δ ɾͲͷݴޠͰΔ͔ߟ͑Δ ɾ"1*Λੜ͢ ɾσϓϩΠํࣜΛߟ͑Δ ɾ৽ଔڭҭͱ͔৽ଔઆ໌ձ ɾ৽͍͠ΞϓϦͷఏҊ %..
%.. %..DPN-BCPͰ ͍ΖΜͳ͜ͱΛܦݧͯ͠·͢ એ
ಥવͷձࣾઆ໌ %..DPN-BCP ͱʂ એ
ϋΠύʔϝσΟΞΦ λͷΈͳ͞Μ͙͙ Ε·͢Ͷʁʁʁʁʁ ʢʈТʈʣ
ૣ͘ ͠ΌΕ
·͡Ίʹ
ࠓճͷ ςʔϚ
1IBMDPO
$ݴޠͷΤΫεςϯγϣϯͰಈ͍ͯΔ ϑϧελοΫͳ 1)1ϑϨʔϜϫʔΫ 1IBMDPOͱ
ɾ͓͏ͱࢥ͖͔͚ͬͨͬ ɾͲΜͳϑϨʔϜϫʔΫʁ ɾόʔδϣϯͲ͏ͳͬͯΔʁ ɾͲ͏ͬͯಈ͍ͯΔʁ ɾ;FQIJSͱ ɾ%*ίϯςφศར ɾ1IBMDPOͷҋ 1IBMDPOͱ
1IBMDPOΛ͏ ͖͔͚ͬʹ͍ͭͯ
1IBMDPO ఱͱ͕ͻͬ͘ΓฦΔ ΄Ͳͷ༷มߋ
1IBMDPO ॠؒతʹେྔͷΞΫηε͕དྷΔ༷ʹ ఱͱ͕ͻͬ͘ΓฦΔ ΄Ͳͷ༷มߋ
ॠؒతʹେྔͷΞΫηε͕དྷΔ༷ʹ ఱͱ͕ͻͬ͘ΓฦΔ ΄Ͳͷ༷มߋ 1IBMDPO ΠϯϑϥɺϛυϧΣΞɺ'8͔Βݟ͠
'VFM1)1Ͱ్த·Ͱॻ͍͚ͯͨͲɺ 1IBMDPO ಥવ1IBMDPOʹ શॻ͖͑
'VFM1)1͔Β 1IBMDPOʹॻ͖ ͑ͨ࣌ͷײ
'VFM1)1͔Β1IBMDPO υΩϡϝϯτগͳ͍ʂ ௐࠪʹ͕͔͔࣌ؒͬͨʂ
'VFM1)1͔Β1IBMDPO υΩϡϝϯτগͳ͍ʂ ௐࠪʹ͕͔͔࣌ؒͬͨʂ ͔͠͠ɺ͞΄ͲڋઈԠͳ͍ɻ
1IBMDPOͱ ͲΜͳ ϑϨʔϜϫʔΫ͔
ૣ͍ 1IBMDPO
ϋΠύʔϝσΟΞΦ λͷΈͳ͞Μ͙͙ Ε·͢Ͷʁʁʁʁʁ ʢʈТʈʣ 1IBMDPO
ʘϕϯνϚʔΫ͕ެࣜαΠτʹ͋Δʗ 1IBMDPO
1IBMDPO
͍ʢʈТʈʣ 1IBMDPO
ඣϕϯνϚʔΫΛ औΔͷͰ͢ 1IBMDPO
1IBMDPO 'VFM "QBDIFSQT 'VFM OHJOYSQT 1IBMDPO "QBDIFSQT 1IBMDPO OHJOY XPSLFS
SQT ୯७ʹFDIP͢ΔͷͰͷॲཧੑೳ
Θ͍͊ɺ 1IBMDPO OHJOY ࠾༻ʂ 1IBMDPO
ͱࢥͬͨઌʹʜ 1IBMDPO
όʔδϣϯͷ ൃੜʂ
όʔδϣϯͷ 1IBMDPOYܥͰ͚ͬͯͨͲɺ 1)1ͷ੬ऑੑͷͰ1)1ʹ ্͛ͨΒ1IBMDPOܥʹ্͛ͳ ͖ΌͳΒͳ͘ͳͬͪΌͬͨʂ
όʔδϣϯͷ
1IBMDPOͷ όʔδϣϯʹ͍ͭͯ
1IBMDPOY$ݴޠ 1IBMDPOY͔Β;FQIJSݴޠ 1IBMDPO ;FQIJSͰ͍Ζ͍ΖΧελϚΠζͰ͖Δʂ ˎƅŋ Ň ŋʄʴE ˲ʆ Cʴ ŋʄƅŋ
ˎɻ
IUUQTHJUIVCDPN QIBMDPODQIBMDPO 1IBMDPO
;FQIJSͱʁʁ
;FQIJSϏϧυ࣌ʹ$ݴޠʹ ίϯύΠϧ͞ΕΔͭ ;FQIJS 1)1ͱඇৗʹࣅͨه๏Λอͪͳ͕Βɺ $ݴޠ૬ͷ࣮ߦΛ खʹೖΕΒΕΔʂ
;FQIFSͷΤϥʔ͕ग़Δͱ ͑ͳ͍ͯ͘ [FQϑΝΠϧͲ͜ʹ͋ΔΜʜ ;FQIJS
;FQIJS 'VFM1)1Έ͍ͨʹ͙͢ʹ $PSFΛݟΔ͜ͱ͕Ͱ͖ͳͯ͘ ͨ·ʔʹࠔΔͱ͖͕͋Δ
%*ίϯςφศར
%*
%*
%*
σΟϨΫτϦ ݟͯΈΔʁ
σΟϨΫτϦݟͯΈΔʁ ʻཧը໘ͱ͔ɺόονͱ͔Ͱڞ௨ͷॲཧ TVCNPEVMFʹͯ͠DPNNPOʹೖΕͯΔ ʻDPOUSPMMFSຊମ ʻDPOpHܥͷઃఆ͜͜ʹ·ͱΊͯೖͬͯΔ
σΟϨΫτϦݟͯΈΔʁ όον1IBMDPOͰ ࡞ͬͯΔ͚Ͳʜ ͍ͭͰʹόονͷ σΟϨΫτϦݟͯΈΔʁ ˔Тʆ˔
σΟϨΫτϦݟͯΈΔʁ ʻཧը໘ͱ͔ɺόονͱ͔Ͱڞ௨ͷॲཧ TVCNPEVMFʹͯ͠DPNNPOʹೖΕͯΔ ʻUBTLT͍ͬͯ͏σΟϨΫτϦͷதʹ όονຊମ͕͍ͬͯΔ DMJQIQ͕όον࣮ߦͷۄ
σΟϨΫτϦݟͯΈΔʁ
1IBMDPOͷҋ
1IBMDPOͷҋͦͷ ʙυΩϡϝϯτӳޠࣄ݅ʙ
͋ɺ͋Εɾɾɾʁ υΩϡϝϯτӳޠࣄ݅
͙͙ͬͯ ӳޠ͔ͬΓ υΩϡϝϯτӳޠࣄ݅
υΩϡϝϯτӳޠࣄ݅
͓ʁʁʁ͍͍͡ΌΜ υΩϡϝϯτӳޠࣄ݅
υΩϡϝϯτӳޠࣄ݅
ެࣜϚχϡΞϧ த్ʹຊޠԽ υΩϡϝϯτӳޠࣄ݅ ʢʈТʈʣ
1IBMDPOͷҋͦͷ ʙ03.ͷ͍উखࣄ݅ʙ
Ͱ03.1)2- ͰαϒΫΤϦ͕͑ͳ͍ ͨΊ1%0Ͱ͛Δ͔͠ͳ ͍ʢެࣜʣ 03.
ʢެࣜʣ 03.
03.
1IBMDPOͷҋͦͷ ʙϝʔϧػೳࣄ݅ʙ
ϝʔϧૹ৴༻ͷ ύοέʔδ͕ͳ͍ʂ ϝʔϧػೳࣄ݅ ʢ'VFM͋ͬͨͷʹɾɾɾʣ
ϝʔϧػೳࣄ݅
ϝʔϧςϯϓϨʔτ ͷͨΊ͚ͩʹ 7JFXΛ͏Ίʹʜ ϝʔϧػೳࣄ݅
ϝʔϧػೳࣄ݅
7JFXʹ7PMU͕ ࠾༻͞Ε͍ͯ·͢ ϝʔϧػೳࣄ݅
UIJTWJFXWBSJBCMFbBSJNP` ͬͯϏϡʔʹΛͯ͠ WPMUϑΝΠϧଆͰ\\WBSJBCMF^^ͬͯॻ͍͓ͯ͘ ͱΤϯδϯͰͷม࣌ʹɺ FDIPWBSJBCMF ʹมΘΓ·͢ ϝʔϧػೳࣄ݅
7PMUͰذͤ͞Δͱ͖͜Μͳ͔Μ͡ \JGWBSJBCMFʜ^ \FMTF^ \FOEJG^ ϧʔϓ͜Μͳ͔Μ͡ \GPSWBSJBCMFJOWBSJBCMFT^ \FOEGPS^ ϝʔϧػೳࣄ݅
ϝʔϧػೳࣄ݅
1IBMDPOͷҋͦͷ ʙDPOpHͷϚʔδࣄ݅ʙ
DPOpH ڥผʹDPOpHΛ ͚Δػೳ͕ͳ͍ ʢ'VFM1)1ͩͱ͢ͰʹఆٛࡁΈͷڥ͕͋Δʣ
&/7ͱ͔ͰΓସ͑ͯ Έ͍ͯΔঢ়گ DPOpH
DPOpH
DPOpHΛ্ॻ͖ ͢Δػೳ͕ͳ͍ DPOpH
DPOpH͕ Ϛʔδ͢ΔΑ͏ʹ खಈͰॻ͘ඞཁ͕͋Δ ʂ DPOpH
DPOpH
DPOpH
1IBMDPOͷҋͦͷ ʙ%*ίϯςφࣄ݅ʙ
Ͳ͜Ͱ͑ͯ ศར͡ΌΜʂʂ %*ίϯςφ %*
%*ίϯςφͷத͕ ҰੜมΘΒͳ͍ %*
1IBMDPOͷ%*TIBSFE ʹͯ͠Δ͔Ͳ͏͔Ͱ ฦͬͯ͘ΔΠϯελϯε͕ ৽ن͔͍ճ͔͠มΘΓ·͢ %*
ɾTFUϝιουͬͯσϑΥϧτ EJTFU OBNF GVODUJPO \^ ɾTFUϝιουͬͯUSVFࢦఆ EJTFU OBNF GVODUJPO
\^ USVF USVFʹ͢ΔͱTIBSFEͰγϯάϧτϯʹͳΔ ɾ<>ͬͯೖ EJ<OBNF>GVODUJPO \^ %*
EJHFU BSJNP ͷ߹ ຖճҟͳΔΠϯελϯε͕ฦ͖ͬͯͯɼ EJHFU4IBSFE BSJNP ͱ͢Δͱ ຖճಉ͡Πϯελϯε͕ฦ͖ͬͯ·͢ %*
EJSFNPWF bBSJNP` Ͱ͔ͬ͠Γ%*ίϯςφ͔Βফ͠ڈ͔ͬͯΒೖΕ͢ ͱͪΌΜͱೖΓ·͢ɻ %*
1IBMDPOͷҋͦͷ ʙςʔϒϧͷதফ͑Δࣄ݅ʙ
ςʔϒϧͷதফ͑Δࣄ݅ pOE ͷDPOEJUJPOʹ */۠ΛೖΕͯɺ */ͷதʹۭྻΛೖΕͯɺ %#͔Βऔಘͯ͠ɺ ͦΕΛEFMFUF ͢Δͱʜ
pOE Ͱશબ͞Εͯ EFMFUF Τϥʔग़ͳ͍ ςʔϒϧͷதফ͑Δࣄ݅
ͭ·ΓΘ͔Δͳ ςʔϒϧͷதফ͑Δࣄ݅
શফ͠ ςʔϒϧͷதফ͑Δࣄ݅
ςʔϒϧͷதফ͑Δࣄ݅
1)2-͍ͬͯ͏ ΫΤϦϏϧμͰ ಉ͜͡ͱΛ͠Α͏ͱ͢Δ ͱͪΌΜͱΤϥʔʹͳΔ ςʔϒϧͷதফ͑Δࣄ݅
·ͱΊ
ͬͺΓ1IBMDPOͷ ͍͍ͱ͜Ζ ·ͱΊ
ૣ͍ ·ͱΊ
·ͱΊ 'VFM "QBDIFSQT 'VFM OHJOYSQT 1IBMDPO "QBDIFSQT 1IBMDPO OHJOY XPSLFS
SQT ୯७ʹFDIP͢ΔͷͰͷॲཧੑೳ
ҋ͍ͬͺ͍͋Δ͚Ͳ ৽͍͠ϑϨʔϜϫʔΫ ʹઓ͢Δ ͍ͬͯ͏ख͙͞Γײ ·ͱΊ
৽͍͠ͷɺ ͓͠Ζ͍ʂ ·ͱΊ
·ͱΊ ͦΜͳ৽͍͠ ϑϨʔϜϫʔΫʹ όϯόϯઓͰ͖Δ %..
ϒʔεͰ BSJNPͱѲखʂ ·ͱΊ
ௐࢠΓ·ͨ͠ ·ͱΊ ͍ͭҰݴΛൃͣ͞ʹνϟοτπʔϧͷΈ Ͱίϛϡχέʔγϣϯͯ͠ՈͰҰݴ͞ͳ͍ ͰΞχϝؑͷΈͰٳΛऴ͑Δ͜ͱ͕͋Γɺ͍ ͟ಉ྅ʹ͔͚͠Α͏ͱͨ͠ͱ͖ʹશ͕͘ग़ͳ ͯࣗ͘Ͱࣗʹͼͬ͘Γ͢ΔαϒΧϧঁ ŋТŋA
XFBSFIJSJOH ·ͱΊ
͋Γ͕ͱ͏͍͟͝·ͨ͠