Dietcube を試す その2

Dietcube を試すの続きを。

/
├ app/
│ ├ Controller/
│ │ └ HelloController.php
│ ├ config/
│ │ └ config.php
│ ├ Service/
│ │ └ SampleService.php
│ ├ template/
│ │ └ hello
│ │   └ index.html.twig
│ ├ Application.php
│ └ Route.php
├ tmp
└ webroot
  └ index.php

ディレクトリ階層は上述のような構造。中身を見ると

  • Controller以下: そのままC
  • Service以下: ビジネスロジック的な処理、当てはめるならばMの部分が多いのでは
  • template以下: twigのテンプレート。V

MVCに当てはめるならばこんな感じでしょうか。

それから、

  • Application.phpuseを使って名前空間指定
  • $container['SERVICE_NAME']の中でServiceの中で定義したクラスのインスタンス生成して戻り値に指定
  • Controllerの中で$this->get('SERVICE_NAME')してインスタンスを取得、処理実行

とすることで一連の処理ができる、という感じに見受けられます。しかもこれはCの部分でnewせずに共通のApplication.phpnewしたものを使えるのでDIですよね。

参考

この記事を書いた人

アバター

アルム=バンド

フロントエンド・バックエンド・サーバエンジニア。LAMPやNodeからWP、Gulpを使ってejs,Scss,JSのコーディングまで一通り。たまにRasPiで遊んだり、趣味で開発したり。