理系学生日記

おまえはいつまで学生気分なのか

PoEAA: Page Controller

Page Controller は、特定ページ/Action に対するリクエストを処理するオブジェクトです。

本書では、これを実現する方法として、

  1. Server Page (ASP/PHP/JSP 等) に混ぜる
  2. Script (CGI/Servlet) で記述する

という方法を謳っていますが、このうちで Server Page に混ぜる方法については、構造が汚くなるぞという念押しがされています。まぁ実践としても、コントローラは独立した Object として分離するというのがどこでも実施されている方法だと思います。 分離したコントローラの基本的な責務としては、

  1. URL のデコードと、Form データの抽出
  2. モデルの作成と、作成したモデルにデータ処理をさせる
  3. どの View を表示するかの決定と、当該の View に対するモデルの情報の引き渡し

となります。