$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
laravelとデザインパターン
Search
Takayuki
December 20, 2017
Technology
1
1.7k
laravelとデザインパターン
laravelとデザインパターン
Takayuki
December 20, 2017
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
440
エンジニアのキャリア論
bumptakayuki
1
230
地方カンファレンス主催のススメ
bumptakayuki
1
230
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.2k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
710
沖縄観光、名物を一挙紹介!
bumptakayuki
2
710
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
3k
flutterでイベントアプリを作ってみた
bumptakayuki
0
170
オフショア開発の辛みと学んだ事
bumptakayuki
0
410
Other Decks in Technology
See All in Technology
AIBuildersDay_track_A_iidaxs
iidaxs
4
1.3k
アラフォーおじさん、はじめてre:Inventに行く / A 40-Something Guy’s First re:Invent Adventure
kaminashi
0
140
『君の名は』と聞く君の名は。 / Your name, you who asks for mine.
nttcom
1
120
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
240
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
2
560
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
6
3.1k
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
230
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
200
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
760
Entity Framework Core におけるIN句クエリ最適化について
htkym
0
120
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
410
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
260
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
0
150
BBQ
matthewcrist
89
9.9k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
850
The Mindset for Success: Future Career Progression
greggifford
PRO
0
200
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
230
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
1
210
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
69
New Earth Scene 8
popppiees
0
1.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.7k
Everyday Curiosity
cassininazir
0
110
Docker and Python
trallard
47
3.7k
Transcript
鈴木孝之 2017/12/19 Laravelとデザインパタʔン
"HFOEB 'BDFEFύλʔϯͱ -BSBWFMͷ'BDFEFͱ 'BDBEFͷಋೖࣄྫ
0.ࣗݾհ ◆໊લ ླ ೭(Suzuki Takayuki) ◆ࣗݾհ ɾ1990ɺਆಸݝੜ·Εɻ ɾ2015ʹϑϧεϐʔυʹೖࣾ͠ɺ20175 ݄ʹ ϑϦʔϥϯεʹͳΓɺىۀ४උɻ
ɾݱࡏɺԭೄͷΪʔΫϋεͱؔ౦ۙลΛ த৺ʹ׆ಈɻ ࠷ۙɺىۀ͠·ͨ͠ɻ ◆झຯ ϚϥιϯେձɺίεϓϨɺԻָϥΠϒɺٿ ؍ઓ
0.ࣗݾհ ΪʔΫϋεͱɺओʹΤϯδχΞϓϩάϥ ϚʔΛ৬छͱ͢ΔਓɺWeb͕͖ͳਓͳͲ͕ ڞʹॅΉίϯηϓτܕγΣΞϋεͰ͢ʂ ΤϯδχΞͳͲ͕ଟ͍͜ͱ͔Βॅຽಉ࢜Ͱϓϩ άϥϛϯάΛڭ͑߹ͬͨΓ͠·͢ʂ
'BDFEFύλʔϯͱ
1.Facedeύλʔϯͱ ɾʮϑΝαʔυʯʢӳ: facadeʣ ͋·Γฉ͖ͳΕͳ͍ݴ༿Ͱ͕͢ϑϥϯεޠɺΠλϦΞ ޠ͔Βͷआ༻ޠͰɺʮݐͷද໘ʯɺͱΓΘ͚ʮਖ਼໘ʯ ͱ͍͏ҙຯͰΘΕ·͢ɻ ޠݯϥςϯޠͷfaciesʢӳ: faceʣʢ໘͢Δɺإʣ ͕సͨ͡ͷͰ͢ɻ
1.Facedeύλʔϯͱ ɾFacade ύλʔϯ͋Δ͍ Façade ύλʔϯʢϑΝ αʔυɾύλʔϯʣͱɺGoFʢGang of Four; 4ਓͷ ΪϟϯάͨͪʣʹΑͬͯఆٛ͞Εͨɺίϯϐϡʔλι
ϑτΣΞͷσβΠϯύλʔϯͷ1ͭͰ͋ΔɻFacade ʢϑΝαʔυʣͱʮݐͷਖ਼໘ʯΛҙຯ͢Δɻҟͳ ΔαϒγεςϜΛ୯७ͳૢ࡞͚ͩΛ࣋ͬͨFacadeΫϥ εͰ݁ͼɺαϒγεςϜؒͷಠཱੑΛߴΊΔࣄΛత ͱ͢Δɻ
1.Facedeύλʔϯͱ ɾFacadeΫϥε͋͘·ͰαϒγεςϜ ෦ʹࣄΛ͛Δ͚ͩͰෳࡶͳ࣮ ࣋ͨͳ͍ɻ ଟ༷ͳػೳͷմͰ͋ΔαϒγεςϜ͔Βɺ αϒγεςϜΛར༻͢ΔϢʔβʔͷ༻్ʹ ߹Θͤͨ૭ޱ(ΠϯλʔϑΣʔε)Λఏڙ͢ Δ͚ͩͰ͋Δɻ
-BSBWFMͷ'BDFEFͱ
ґଘੑೖ ґଘੑೖΛ͏ ͱॊೈੑɺอकੑ ্͕͕Γ·͢ɻ ૄ݁߹ʹͳΔͨΊɺςετָ͕ αʔϏείϯςφΛհͯ͠Πϯ ελϯεʹΞΫηε͢Δҝɺς ετΛهड़͢Δ࣌ʹɺϞοΫʹ ೖସ͑Δ͜ͱ͕ग़དྷ·͢ɻ γϯάϧτϯʹͰ͖Δɻ
αʔϏείϯςφΛհͯ͠ ΠϯελϯεʹΞΫηε͢ ΔҝɺΦϒδΣΫτΛγϯ άϧτϯͱͯ͠ొͰ͖· ͢ɻຖճΫϥεΛ new ͢ ΔͷʹൺͯɺϝϞϦʔޮ ɺύϑΥʔϚϯεޮ͕ ্͕Γ·͢ɻ 1 3 2 LaravelͷFacadeͷϝϦοτɾಛ
༻ҙ͞ΕͨϑΝαʔυ LaravelͰඪ४Ͱ37छྨͷϑΝαʔυ͕ఏڙ͞Ε͍ͯ·͢ɻ
ͲͷΑ͏ͳ໘Ͱ༻͢Δ͖ʁ ɾෳͷॲཧʹରͯ͠ɺେͷࢦࣔग़͠ ͢ΔΠϯλʔϑΣʔεΛ࡞͓͖͍ͬͯͨ ࣌ʁ
࣮ྫ DBϑΝαʔυͷத
࣮ྫ DBϑΝαʔυͷதͰ ෳͷϞδϡʔϧΛ ݺͼग़͍ͯ͠Δ
͓͢͢Ί ɾLaravelͷIDE Helper FacadeͰIDEͰιʔεʹδϟϯϓͰ͖Δ https://qiita.com/michiomochi@github/items/fc70230402972c99472f
'BDBEFͷಋೖࣄྫ
ϑΝʔαʔυͷ࡞ Ͱɺ࣮ࡍʹϑΝαʔυΛ࡞ͯ͠Έ·͢ɻҎԼͷखॱͱͳΓ·͢ɻ 1.ΫϥεΛ࡞ 2.αʔϏεϓϩόΠμʔΛ࡞ 3.αʔϏεϓϩόΠμʔͷઃఆ 4.ϑΝαʔυΫϥεΛ࡞ 5.ϑΝαʔυΤϦΞεͷઃఆ 6.ϑΝαʔυΛͬͯΈΔ
1.ΫϥεΛ࡞ αʔϏεΫϥεΛ࡞
2.αʔϏεϓϩόΠμʔΛ࡞ $ php artisan make:provider UtilsServiceProvider
3.αʔϏεϓϩόΠμʔͷઃఆ
4.ϑΝαʔυΫϥεΛ࡞ FacadeσΟϨΫτϦΛΔ
5.ϑΝαʔυΤϦΞεͷઃఆ app.phpͷaliasesʹ ఆٛ
6.ϑΝαʔυΛͬͯΈΔ ίϯτϩʔϥଆͰݺͼग़͢
ࢀߟ https://laravel10.wordpress.com/2015/04/27/%E3%83%95%E3%82%A1%E3%82%B5%E3%83%BC %E3%83%89/ https://ja.wikipedia.org/wiki/Facade_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3 https://qiita.com/yousan/items/18dab4dbac4a27ce3662