最も単純なページングのコントロール

この流れを観察して、関数化 or クラス化を行えるか検討する

  1. 初期プロセス
    • Sessionをつくる
    • iniから$formをつくる
    • Sessionに$formを保存する
  2. チェックプロセス(正常終了)
    • Sessionから$formをとりだす
    • Requestの値をつかって$formの値を変更する
    • $formをfreeze()する
    • Sessionに$formを保存する
  3. リエディットプロセス
    • Sessionから$formをとりだす
    • $formをdefrost()する
    • Sessionを$formに保存する
  4. 登録プロセス
    • Sessionから$formをとりだす
    • $formのDB登録を実行する
    • Sessionを廃棄する
    • 完了処理をする
  • 2'. チェックプロセス(異常終了)
    • Requestのチェックで$formにエラーがあった
    • $formのfreeze()をしない
    • エラー処理をする(エラー出力など)
    • Sessionに$formを保存する

隠蔽化できそうな部分

  • Sessionに関する部分
    • 各プロセスの最初と最後にSessionから$formの取出/保存をおこなっている
    • しかもそれは、$formの状態によらない(ただし最初の生成時には異なるか)
  • 微妙なのは
    • $formのチェック
    • freeze() defrost()
  • カプセルの外は
    • エラー処理
    • エラーの出力