0.8.xに向けて

以下のような構造の変更を考えています:

  • Moony_Contextの廃止
    • Moony_SessionのインスタンスはMoony_Requestが保持
      • getSession/setSessionメソッドを実装
    • PATH_INFOを取得するアクセサをMoony_Requestに移動
      • getPathInfo/setPathInfoメソッドを実装
  • Moony_Responseの新設
    • 現行のMoony_Viewの機能を以下のように分割
      • Moony_View: Smartyを操作するためのクラス
      • Moony_Response: テンプレートに設定する値を保持するためのクラス
  • Moony_Action::executeの引数変更
    • 現行(〜0.7.2): execute($context, $view) # Moony_ContextとMoony_Viewのインスタンス
    • 新規(0.8.0〜): execute($request, $response) # Moony_RequestとMoony_Responseのインスタンス

結構大規模な構造変更になってしまう予感。実装自体は大した手間ではないんだけど…。あまり後方互換性とか考えていません、ごめんなさい。これで一応MVCがきちんと分割されるような感じ。