IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.
突然ですが、きっとあなたも使っているデザインパターンシリーズ 何気なく書いていたあのクラスが無意識的にNullObjectパターンやHook Operationパターンを適用していることがここ最近多い気がしませんか? 僕の場合はS2Daoを通して見付けた(身に着けた)ものが多いんですが、今回はそのS2Daoより、簡単に書けるHook OperationパターンとNullObjectパターンをPHP5で書いてみます。 Hook Operationパターン 「Hook Operationパターン」にも書かれていますが、あるクラスの処理の前と後ろに、別の処理を実行したいことがあります。 AOPとか特別なことはせずに、あるクラスの前処理と後処理を呼び出します。 あるクラスの処理を「Process」クラスの「execute」処理とし、別の処理(前・後)は「Hook」インタフェースを実装するクラス
はてなのPHP keywordを付けているところを眺めていたら、僕と同じようにデザインパターンを実践している人がいた。参考にしよう ref - ルーで一気にクマー デザパタについては以前「デザパタ本には載らないデザパタ」にも書いたことあったけど、GoFとかJ2EEとかPofEAA(これはちょっと大きいか)で色んなパターンが転がってるけど、実際にやっていることは、「同じような実装を2度も書きたくない」から、書きやすく整理する手法をパターンっていってるんだなーと思う。 んで、ここはid:shimookaが上手いことまとめてくれていて、突き詰めれば勝手にデザパタされるんじゃないかと。 (中略) 僕なんかは、もともとjavaで一定のプログラミング設計(?)とかインタフェースについて見てきた(Seasar含めて)からinterfaceみたいなものが大好きなんだけど、んなもんいらん!実装クラスだけで
http://blog.xole.net/article.php?id=525を読んで、前からパターンについて思っていることを絡めてつらつらと。。。 多くの書籍で紹介されているパターンはあくまでGoFの23個だけです。実際にはハタさんの書いてあるとおり「デザパタ本には載らないデザパタ」自体はかなりの数があると思います。というより、「○○パターン」と名前が付いていない属人的なテクニックの方が多いんじゃないでしょうかね。 #こういう本はあったら面白いかも知れません :-) で、「なぜGoFか」ということについては、関連する情報が多いとか、エライ人らがまとめたものだからとか、GoFはウケが良いからとか色々理由はあると思いますが、やっぱり他のパターンの基底となるものが多いからじゃないでしょうかね。 #やっぱり、基本大事 ここからつらつらと。。。 個人的にデザインパターンを扱っていて強く思ったのが、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く