Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Design Patterns in PHP
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Czerny
August 30, 2017
Technology
76
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Design Patterns in PHP
PHP BLT #8
第117回 PHP勉強会@東京
Czerny
August 30, 2017
Other Decks in Technology
See All in Technology
古い指輪から広がった JAVA コミュニティ とのつながり
yamad
0
100
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
3
1.1k
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
4
1.1k
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
0
420
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3.1k
re:Invent初参加で変わったこと、2回目にやってみたいこと(JAWS-UG彩の国埼玉 #12)
mhrtech
2
230
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
290
Rustuna: Rustによる高速なOptuna実装
pfn
PRO
0
190
Refining Active Record
shugo
0
160
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
250
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
170
Running Kotlin + Quarkus with Lambda
nealle
1
3.7k
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
460
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
Navigating Weather and Climate Data
rabernat
0
560
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
It's Worth the Effort
3n
188
29k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
260
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
A better future with KSS
kneath
240
18k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Transcript
Design Patterns in PHP 2017-08-08 PHP BLT #8 2017-08-30 第117回
PHP勉強会@東京 K. LEE @CzernyF
自己紹介 • LEE KWANGHOON • J-WAVEi • Perl/PHP/Python, etc. •
@CzernyF • 犬 • SUZUKI Cappuccino
TL;DR
https://github.com/domnikl/DesignPatternsPHP.git
Design Patterns? • OOP設計ノウハウのカタログ • Gang of Four • 全23パターン
• Purpose ◦ Creational ◦ Structural ◦ Behavioral • Scope ◦ Class ◦ Object
実は結構古い • Javaが出るより前 • 言語仕様やFrameworkに既に含まれてるパターン • OOPをやってれば自然にかけるようになるパターン • 今ではアンチパターンになってる場合も ◦
再考: GoF デザインパターン ▪ http://qiita.com/irxground/items/d1f9cc447bafa8db2388 • やはり銀の弾丸などない ◦ ただのパターンにすぎない ◦ すべての状況において最善とは限らない
だが • 現代にも有用なパターンはまだある • OOPの実践的なサンプル ◦ OOPを熟知している読者をターゲットにしてる ▪ だが、OOPについてまだ理解が足りない人に勉強にはなるかも •
合わせて読んでほしい ◦ 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れ るまでの軌跡 ▪ http://qiita.com/hirokidaichi/items/591ad96ab12938878fe1
Facade
Facade pattern
Mediator
Mediator pattern
応用: Facade-Mediator!?
その他に • Abstract Factory • Factory Method • Decorator •
Observer • Template Method • Visitor • その他、現代的パターン(DIとか)
まとめ
Phing使ってる方、 いませんか!?