設計とは何か。
・アプリケーション設計
・アーキテクチャ設計
パターンの利用が重要。
Webアプリケーションの場合有用となるパターンは下記のとおり。
・レイヤパターン(多層アーキテクチャ)
Web アプリケーション全体をひとつのかたまりと見るのではなく、いくつかのレイヤで分割することによって、メンテナンス性や再利用性を高めようとするパターンのこと。代表的なのは、「プレゼンテーション層」「ビジネスロジック層」「データアクセス層」の三層構造。
・フロントコントローラパターン
リクエストを受け付ける入り口を1つに絞ってしまうパターン。共通処理をまとめやすい、画面遷移がコントロールしやすい、などの利点がある。
・コマンドパターン
一定のインターフェースを備えたオブジェクトょ用意して、それを切り替えるパターン。”コマンド”は”アクション”と呼ばれることも多い。
・DAO パターン
Data Access Object パターン。ビジネスロジック層とデータアクセス層の間のやり取りで使用されるパターン。リソースに依存しないテストが可能。
Java の世界では、GoF のデザインパターン や J2EE パターンがあるが、PHP などのスクリプトの世界でも取り入れられるものがあれば、取り入れたいものですね。