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
Symfony - フレームワークの先へ
Search
Katsuhiro Ogawa
May 30, 2015
Technology
2
10k
Symfony - フレームワークの先へ
PHPカンファレンス関西2015
Katsuhiro Ogawa
May 30, 2015
Tweet
Share
More Decks by Katsuhiro Ogawa
See All by Katsuhiro Ogawa
新規プロダクト開発に伴う既存マイクロサービスのリアーキテクティングとその後
fivestar
1
150
Goで学ぶSOLID原則
fivestar
0
390
メルカリ CSE チームの 歩みと取り組み / Steps and Tries in the CSE team for Mercari
fivestar
2
940
Go in Corporate Solutions Engineering
fivestar
0
2.5k
いつまでPHP 5.x使ってるの
fivestar
1
2k
PHP のドキュメントを読んで PHP のことをもっと知ろう
fivestar
1
3.3k
CrocosSecurityBundleを Symfony3.0に対応した話
fivestar
0
280
PHP BLT だけど HTML5 の コンテンツモデルのお話
fivestar
0
2.4k
THE NEW "PERFECT PHP" WILL BE COMING SOON
fivestar
0
8.1k
Other Decks in Technology
See All in Technology
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
570
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
210
2025年夏 コーディングエージェントを統べる者
nwiizo
0
170
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
450
エラーとアクセシビリティ
schktjm
1
1.3k
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
250
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
180
KotlinConf 2025_イベントレポート
sony
1
140
S3アクセス制御の設計ポイント
tommy0124
3
200
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
660
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
12
4.8k
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
Featured
See All Featured
Facilitating Awesome Meetings
lara
55
6.5k
Unsuck your backbone
ammeep
671
58k
GraphQLとの向き合い方2022年版
quramy
49
14k
Making Projects Easy
brettharned
117
6.4k
How to train your dragon (web standard)
notwaldorf
96
6.2k
KATA
mclloyd
32
14k
Side Projects
sachag
455
43k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Balancing Empowerment & Direction
lara
3
620
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Transcript
4ZNGPOZ ϑϨʔϜϫʔΫͷઌ খ༤େ 1 1)1ΧϯϑΝϨϯεؔ
খ༤େ 0("8",BUTVIJSP !pWFTUS ΫϩίεˠϠϑʔ ຊ4ZNGPOZϢʔβʔձ ஶॻ ύʔϑΣΫτPHP ޮతͳWebΞϓϦέʔγϣϯͷ ࡞Γํ
2
4ZNGPOZ͕ங͍͖ͯͨੈք ΤϯδχΞͷੜଘઓུ ϑϨʔϜϫʔΫͷઌ 3 "(&/%"
4ZNGPOZ͕ங͍͖ͯͨੈք 4
ࠓ͍ͨ͜͠ͱͦͷ w ࠷ۙ1)1ք۾͖ͬͯ·ͨ͠Ͷ w ͜͜ͰͲΜͳมԽ͕͔͋ͬͨ;Γ͔͑Δ w ࡢࠓͷɺ͋Δ͍ະདྷͷϑϨʔϜϫʔΫͷܗ 5
·ͣ1)1ͷਐԽ͕͋ͬͨ w 1%0 41-ͳͲඪ४ϥΠϒϥϦͷॆ࣮ w Φʔτϩʔυ w ໊લۭؒ w τϨΠτ
w ແ໊ؔ w γϯλοΫεͷॆ࣮ 6
(JU)VCͱ͍͏࠷ڧͷίϛϡχςΟ w 1VMM3FRVFTUʹΑΔίϛϡχέʔγϣϯ w 044ք۾ͦͷͷͷ׆ੑԽ 7
࣍ੈԽ͕ਐΉϑϨʔϜϫʔΫ w 4ZNGPOZ w -BSBWFM w $BLF1)1 w "VSB w
#&"34VOEBZ w FUD 8
Γ։͍͖ͯͨ4ZNGPOZ w 4ZNGPOZίϯϙʔωϯτͱ༷ͯ͠ʑͳ෦Λ ࠶ར༻ɾ֦ுՄೳͳܗͰఏڙ w %*ίϯςφͷීٴ w όϯυϧγεςϜ 9
༂ಈ͢Δ4ZNGPOZίϛολʔͨͪ w 5XJH w .POPMPH w "TTFUJD w %PDUSJOF"OOPUBUJPOT w
4JMFY 10
ඪ४Խઌಋ w ओཁͳϑϨʔϜϫʔΫͷ։ൃऀΛूΊͯ 1)14UBOEBSET8PSLJOH(SPVQΛ࡞ͬͨ w ݱࡏ1)1'*(ͱͯ͠143ΛࡦఆΛߦ͏ w ΦʔτϩʔσΟϯάϧʔϧ w ඪ४ίʔσΟϯάن
w ڞ௨ΠϯλʔϑΣΠεఆٛ 11
1&"3ʹมΘΔ࣍ੈύοέʔδཧ w $PNQPTFS1BDLBHJTUͷొ w ґଘύοέʔδཧ͕༰қʹ w ୭ͰؾܰʹύοέʔδΛొͰ͖Δ࣌ʹ w 0QFOQFBSͱͳΜͩͬͨͷ͔ 12
ίϯϙʔωϯτࢦͳ࣌ w -BSBWFMΛࢧ͑Δ4ZNGPOZίϯϙʔωϯτ w ܰྔͰΫϦʔϯͳ"VSBͳͲొ w ҰຕؠͷϑϨʔϜϫʔΫͰͳ͘ɺࣗ༝ʹ ίϯϙʔωϯτΛΈ߹ΘͤΒΕΔ࣌ʹ 13
ۀքͷࢿ࢈Λ૿͍ͯ͘͠ w ྑ࣭ͳίϯϙʔωϯτ͕૿͍͑ͯ͘͜ͱͰ ۀքͷࢿ࢈͕૿͍͑ͯ͘ w ۀքશମͷʹͭͳ͕Δ 14
ߴԽ͢ΔϑϨʔϜϫʔΫ w ૄ݁߹ͳΈΛٻΊΒΕΔ w ֦ுੑɺ࠶ར༻ੑΛࢧ͑ΔΦϒδΣΫτࢦ ͷ༷ʑͳςΫχοΫ͕ٻΊΒΕΔ w ΦϨΦϨ࣮Ͱͳ͘ύλʔϯʹ 15
ΦϒδΣΫτࢦͷॏཁੑ w ܧঝ͚ͩͬͯΕ͍͍࣌͡Όͳ͍ w ʮεΫʔΦϒδΣΫτࢦʯͰݕࡧʂ w ΦϒδΣΫτࢦͷΑ͏ͳجૅྗͷ্͕ඞཁ 16
ΤϯδχΞͷੜଘઓུ 17
ࠓ͍ͨ͜͠ͱͦͷ w ϑϨʔϜϫʔΫચ࿅͞Ε͍͍ͯͬͯ·͕͢ w զʑΤϯδχΞ͍ͯ͠ΔͷͩΖ͏͔ w ΤϯδχΞ͕Ͳ͏͋Δ͖͔ 18
ͦͦΤϯδχΞͷࣄͬͯ w ϑϨʔϜϫʔΫΛ͍͜ͳ͢͜ͱͰͳ͍ w γεςϜΛ࡞ͬͯϢʔβʔʹՁΛఏڙͨ͠Γ ੈͷதΛΑΓΑ͘͢Δ͜ͱ͕త w Ͱ͢ΑͶʁ w ݴޠϑϨʔϜϫʔΫಓ۩ʹ͗͢ͳ͍
19
ϑϨʔϜϫʔΫͷઌ w ϑϨʔϜϫʔΫϏδωεϩδοΫ·Ͱ໘ Έͯ͘Εͳ͍ w ϏδωεϩδοΫ෦ͦ͜ΤϯδχΞͷղܾ ͖͢ຊ࣭తͳ՝ 20
ઃܭೳྗΛΈ͕͘ w ΦϒδΣΫτࢦઃܭͷཧղΛਂΊΔ w ༷ʑͳύλʔϯઃܭݪଇΛʹ͚ͭΔ w 1PG&"" 40-*%ݪଇ FMTF w
ͦΕΒΛֶͿ͜ͱ͕ϑϨʔϜϫʔΫͷཧղͷ ॿ͚ʹͭͳ͕Δ 21
Ϗδωεͷ՝ʹͲ͏͖߹͏͔ w ͨͱ͑%%%ΛֶͿ 22
ઃܭྗΛੜ͔ͤΔϑϨʔϜϫʔΫͷબఆΛ w ϑϨʔϜϫʔΫ͕ϏδωεϩδοΫͷ࣮ͷ ͛ʹͳͬͯຊస w ༷ʑͳઃܭΛڐ༰͢ΔϑϨʔϜϫʔΫΛબͿ w ͦ͏ͩͶɺ4ZNGPOZͩͶ 23
ཁ݅ʹಛԽͨ͠ϑϨʔϜϫʔΫΛ࡞Δ w ͞Βʹޮతʹ։ൃΛߦ͑ΔΑ͏ʹɺཁ݅ʹ Ԡͨ͡ϑϨʔϜϫʔΫΛ࡞ΓɺطଘͷϑϨʔ ϜϫʔΫͱΈ߹Θͤͯରॲ͢Δ 24
ཧతʹՁΛஅ͢Δ w ݴޠʹͤΑϑϨʔϜϫʔΫʹͤΑ͖ݏ͍Ͱ அͤͣɺཁ݅ڥʹΑͬͯదͳͷΛ બఆ͍ͯ͘͠ 25
पลڥɺ͋Δ͍ݴޠ w ߴػೳͳ*%&Λ͍ޮతͳ։ൃΛ w /0.03&फڭઓ૪ w తʹԠ༷͡ʑͳݴޠΛ͍͜ͳͤΔΑ͏ʹ w 1)1ͷ͍͍ͱ͜ΖΛվΊͯߟ͑ͯΈΔ 26
νʔϜϏϧσΟϯάେ w νʔϜશମͷ։ൃྗΛҭ͍ͯͯ͘ w ίʔυϨϏϡʔΛऔΓೖΕΔͱ͔ w ίϛϡχέʔγϣϯΛͱΖ͏ 27
ϢʔβʔʹՁΛఏڙ͢Δ͜ͱ w ιʔείʔυͷΫΦϦςΟͱγεςϜͷ͍ উख·ͨผͷ w Ͳ͏͢ΕϢʔβʔʹͱ͍ͬͯқ͍ͷ͕ Ͱ͖͕͋Δͷ͔ w اըతͳࢹڧԽ͍ͯ͘͠ 28
ϑϨʔϜϫʔΫͷઌ 29
ϑϨʔϜϫʔΫ w ϑϨʔϜϫʔΫͷߏཁૉΛׂ͠ɺ ࢿ࢈ͱͯ͠ڞ༗Ͱ͖Δܗʹ w ΞʔΩςΫνϟͳͲຊ࣭తͳ෦Ͱҧ͍Λ ੜΈग़͢͜ͱʹྗ w %4-ͳͲతʹΑΓಛԽͨ͠ܗΛ 30
ΤϯδχΞ w ϑϨʔϜϫʔΫಓ۩ʹ͗͢ͳ͍ w ͪΖΜಓ۩Λ͍͜ͳ͢͜ͱඞཁ w ΑΓຊ࣭తͳʹྗ͍ͯ͘͠ w ϏδωεͷཁٻʹԠ͑ΔͨΊઃܭೳྗͳͲ ༷ʑͳͷΛຏ͍͍͔ͯͳ͚ΕͳΒͳ͍
31
࣌ʹྲྀ͞Εͳ͍ٕࣝज़Λ w ϑϨʔϜϫʔΫͷྲྀߦΓഇΓʹࠨӈ͞Εͳ͍ ֬ݻͨΔجૅΛʹ͚ͭΔ w ΦϒδΣΫτࢦઃܭɺ%%% w ͭΑ͍νʔϜ࡞Γ 32
ϑϨʔϜϫʔΫ͚ͩͰ ੜΈग़ͤͳ͍ՁΛ Ϣʔβʔʹఏڙ͠Α͏ 33
ϓϩϑΣογϣφϧͳ ΤϯδχΞΛࢦͯ͠ 34
ϑϨʔϜϫʔΫͷઌ 35
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ খ༤େ 36