プロジェクトのディレクトリ構成
s2base.php5-version.zip を解凍すると次のディレクトリが展開されます。
s2base.php5 |-- app ・・・ アプリケーション本体格納ディレクトリ |-- config ・・・ 設定ファイル保存ディレクトリ |-- lib ・・・ ライブラリ関連ディレクトリ |-- public ・・・ WEB公開ディレクトリ |-- test ・・・ テスト用ディレクトリ |-- var ・・・ ログ・キャッシュディレクトリ `-- vendor ・・・ 外部フレームワーク、ライブラリ等との連携モジュールpublicディレクトリは、Zend Framework と組合わせる場合に使用します。
モジュールのディレクトリ構成
S2Baseでの開発はモジュール単位で行います。module コマンドを 実行しモジュール名を「Default」とすると、次のディレクトリ群が app/modules ディレクトリと test/modules ディレクトリに作成されます。
s2base.php5 |-- app | |-- ・・・ | |-- modules | | `-- Default | | |-- dao | |-- dicon | |-- entity | |-- interceptor | `-- service |-- test | `-- modules | `-- Default | |-- dao `-- serviceapp/modules ディレクトリに作成されるディレクトリ群は、次のレイヤイメージに対応します。
一番左の黄色のボックスは、S2Baseで作成したモジュールを使用するレイヤで、WEB層やCLI層となります。
-
dao
データベースにアクセスするオブジェクトです。詳細はS2Daoを参照下さい。 -
dicon
[ダイコン] と呼びます。S2Container の設定ファイルです。XML形式で記述します。 -
entity
データベースのテーブルに対応するクラスです。S2Dao で用います。 -
interceptor
S2Aop の MethodInterceptor を実装するクラスになります。 -
service
プレーンな PHP クラスです。サービス(ロジック)を実装します。