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.7k
DMMのハイパー メディアオタサーの姫arimoが語る Phalconその後 /phpblt-phalcon-after
arimo
0
1.8k
Other Decks in Programming
See All in Programming
オブジェクト指向は必要なのか / Is object-oriented needed?
kishida
27
19k
ここ1~2年くらいで 使えるようになった(主要ブラウザーの最新版 がすべて対応した ) ウェブの新機能について ランダムに喋る!
myzkyy
9
6.5k
C# 大統一理論推進委員会 会員のための Unity Package Manager プロジェクト構成案
monry
PRO
0
580
上手な探索的テストとその上達方法について
matsu802
4
650
「コンパイル時のユニットテスト」導入するとユニットテストを 書かなくてよくなるのか?
tomohisa
9
2.2k
Some Quick Ideas To Improve Your Tests ( #jassttokyo )
teyamagu
PRO
2
2.3k
App Router への移行は「改善」となり得るのか?/ Can migration to App Router be an improvement
takefumiyoshii
1
130
Migrating to Signals: A Practical Workshop
manfredsteyer
PRO
0
280
Understanding Ast By Looking
inouehi
0
120
Laravel OpenAPIによる"辛くない"スキーマ駆動開発
kentaroutakeda
2
2.1k
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
4
1.1k
DDD, necessary but insufficient: physical design principles for microservices
cer
PRO
0
2.2k
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
257
12k
No one is an island. Learnings from fostering a developers community.
thoeni
14
2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.2k
Building Your Own Lightsaber
phodgson
97
5.6k
Statistics for Hackers
jakevdp
789
220k
Build your cross-platform service in a week with App Engine
jlugia
223
17k
Making the Leap to Tech Lead
cromwellryan
123
8.4k
Design by the Numbers
sachag
274
18k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
Designing the Hi-DPI Web
ddemaree
275
33k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
Ruby is Unlike a Banana
tanoku
95
10k
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 ·ͱΊ
͋Γ͕ͱ͏͍͟͝·ͨ͠