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
16k
5
Share
DMMのハイパー メディアオタサーの姫 arimoが語る Phalcon
10/3(sat) PHPカンファレンス2015で発表してきたPhalconの資料
arimo
October 03, 2015
More Decks by arimo
See All by arimo
arimo_birthday_2016
arimo
1
9k
DMMのハイパー メディアオタサーの姫arimoが語る Phalconその後 /phpblt-phalcon-after
arimo
0
1.8k
Other Decks in Programming
See All in Programming
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
130
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.4k
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
310
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.9k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.3k
AIとRubyの静的型付け
ukin0k0
0
510
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.3k
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
110
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
240
dRuby over BLE
makicamel
2
290
Claspは野良GASの夢をみるか
takter00
0
150
Featured
See All Featured
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Into the Great Unknown - MozCon
thekraken
41
2.5k
Between Models and Reality
mayunak
4
320
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
Practical Orchestrator
shlominoach
191
11k
The Curse of the Amulet
leimatthew05
1
13k
Test your architecture with Archunit
thirion
1
2.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
320
Testing 201, or: Great Expectations
jmmastey
46
8.2k
What's in a price? How to price your products and services
michaelherold
247
13k
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 ·ͱΊ
͋Γ͕ͱ͏͍͟͝·ͨ͠