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
それできみ、 そのSOLIDとやらは なんの役に立つのかね ~オブジェクト指向の原則 ハ...
Search
Hisateru Tanaka
June 15, 2018
Programming
8
3k
それできみ、 そのSOLIDとやらは なんの役に立つのかね ~オブジェクト指向の原則 パッケージ編~
大正GeekNight Vol.1
PHPカンファレンス福岡 2018 前々夜祭
...の発表資料です
Hisateru Tanaka
June 15, 2018
Tweet
Share
More Decks by Hisateru Tanaka
See All by Hisateru Tanaka
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
140
哲学史とモデリング
tanakahisateru
4
700
オブジェクト指向宗教史
tanakahisateru
31
17k
ほげ言語にあってPHPにない機能
tanakahisateru
6
3k
君たちはどうプログラミングするか
tanakahisateru
12
1.7k
デバッグ用ロガーの注入どうする?
tanakahisateru
2
580
アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?
tanakahisateru
25
9.4k
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
14
8.4k
まんがのかきかた
tanakahisateru
8
690
Other Decks in Programming
See All in Programming
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
150
20241217 競争力強化とビジネス価値創出への挑戦:モノタロウのシステムモダナイズ、開発組織の進化と今後の展望
monotaro
PRO
0
340
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
940
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.5k
CloudNativePGがCNCF Sandboxプロジェクトになったぞ! 〜CloudNativePGの仕組みの紹介〜
nnaka2992
0
140
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
800
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
380
functionalなアプローチで動的要素を排除する
ryopeko
1
740
Rubyでつくるパケットキャプチャツール
ydah
0
260
AHC041解説
terryu16
0
500
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
250
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
89
5.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
BBQ
matthewcrist
85
9.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building an army of robots
kneath
302
45k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
Bash Introduction
62gerente
610
210k
Become a Pro
speakerdeck
PRO
26
5.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Site-Speed That Sticks
csswizardry
3
290
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Transcript
ͦΕͰ͖Έɺ ͦͷ40-*%ͱΒ ͳΜͷʹཱͭͷ͔Ͷ ʙΦϒδΣΫτࢦͷݪଇύοέʔδฤʙ
ͨͳ͔ͻͯ͞Δ @tanakahisateru ॴ
None
40*-%ྑ͍ΫϥεΛઃܭ͢ΔͨΊͷݪଇ
ίʔυ্ख͘ॻ͍͍ͯΔ ͳͥσεϚΔͷ͔
มߋʹڧ͍ΦϒδΣΫτ ˓खஈ ☓త Ͱͳ͘ Ͱ͢Α ͑ʙͱɺ֬ೝͰ͚͚͢Ͳ
ύοέʔδઃܭͷݪଇ ύοέʔδͷ෦ڽू ύοέʔδಉ࢜ͷ݁߹ w ࠶ར༻ɾϦϦʔεՁͷݪଇ w શ࠶ར༻ͷݪଇ w ดੑڞ௨ͷݪଇ w
ඇ॥ґଘͷݪଇ w ҆ఆґଘͷݪଇ w ҆ఆɾநՁͷݪଇ ྑॻʹ40-*%ͷ͋ͱඞͣॻ͔Ε͍ͯΔͷ͕
ύοέʔδ ͱ͔ͷҙຯ͋Δ͚Ͳ
package com.example.application.util ύοέʔδઃܭ ࣗͷϓϩμΫτʹϑΥϧμΛΔ͜ͱ ͦͷϑΥϧμɺ͍·͙͢KBSʹΓग़ͤ·͔͢ ύοέʔδਤ
ύοέʔδͷ෦ڽू
࠶ར༻ɾϦϦʔεՁͷݪଇ ύοέʔδ࠶ར༻ͷඞཁ݅ ࣭ཧ͞Εͨύοέʔδͷ ϦϦʔε खΕ Ͱ͋Δ
શ࠶ར༻ͷݪଇ ύοέʔδ୯Ґ͝ͱʹશަͩ దʹׂ͠ͳ͍ͱϢʔβʔʹෆඞཁͳมߋΛڧ͍Δ
ดੑڞ௨ͷݪଇ มߋՕॴ͕͋ͪͪ͜ࢄ͢ΔͷͭΒ͍ ͻͱͭަͨ͠ΒࡁΉͷ͕ཧ
ύοέʔδಉ࢜ͷ݁߹
ඇ॥ґଘؔͷݪଇ ύοέʔδͷґଘؔʹ॥͕͋ͬͯͳΒͳ͍ ٺԽΛ͔ͭશͯյ͔͢ͷೋʹͳΔ
҆ఆґଘͷݪଇ ґଘΑΓ҆ఆ͢Δ มߋͷগͳ͍ ํʹ͚Α
҆ఆɾநՁͷݪଇ ΑΓ҆ఆͨ͠ύοέʔδͱɺ ΑΓநతͳύοέʔδͰ͋Δ͖ ٯ·ͨવΓ
࠶ར༻ɾϦϦʔεՁͷݪଇ શ࠶ར༻ͷݪଇ ดੑڞ௨ͷݪଇ ඇ॥ґଘͷݪଇ ҆ఆґଘͷݪଇ ҆ఆɾநՁͷݪଇ
࠶ར༻ɾϦϦʔεՁͷݪଇ શ࠶ར༻ͷݪଇ ดੑڞ௨ͷݪଇ ඇ॥ґଘͷݪଇ ҆ఆґଘͷݪଇ ҆ఆɾநՁͷݪଇ ͪΌΜͱ͚Ζ ͪΌΜͱ·ͱΊΖ ҆ఆํʹͳ ͭ·Γ۩͔Βநͷ͜ͱ
୯ํϚετͳ ύοέʔδʜ
มߋʹڧ͍ΦϒδΣΫτ มߋʹڧ͍ϓϩμΫτߏ ΦϒδΣΫτࢦͷݪଇ ͰऴΘΓ͡Όͳͯ͘ ͦΕΛʮखஈʯͱͨ͠ 40-*%ʹ४ͯ͡ΫϥεͷࢹͰ ·Ͱҙࣝߦ͔ͳ͍ͱɺ001͕ʹཱͭͱݴ͑ͳ͍Μ͡Ό
ΏΔ;ΘϓϩϚωຊ͡Όͳͯ͘Ψνͷίʔυઃܭख๏ຊͰ͢ ৄࡉ͍͍ͩͨ͜͜ʹ ॻ͍ͯ͋Δ 001ͳϓϩάϥϚʔඞಡͷݹయ ࣌ͷ͍ͤͰ λΠτϧ͕ӕ͘͘͞ ͳͬͨ೦ͳࢠ
ॳ൛ ӳޠ ͪͳΈʹॳ൛͕ಉ࣌ظͷຊͱ͍͑ͪ͜Β ឯ༨ۂં͋ͬͯ࠷ۙผͷຊʹͳΓ·ͨ͠Ͷ લͱ͔ͦΜͳϨϕϧ͡Όͳ͍Ͱ͢Ͷ
Ϟμϯ৽͚ΓΌ͍͍ ͔͍͍ͬ͜৽͍͠ΞʔΩςΫνϟΛ͍͔͚Δ·͑ʹɺ ͦͷతײͱࠜݯΛΖ͏