最近我已經完成了閱讀OOP書籍,並且我已經決定使用Laravel Framework創建一個項目。Laravel - 正確的工作組織
在本書中,作者建議根據類型劃分類:DTO,BL和存儲庫。 Laravel讓我有點困惑如何組織我的系統。
我一直在想這樣做這樣的事情:
文件結構:
app
BL
RegisterUser.php
Repositories
UserRepository.php
再比如說做:
// UserController的
public function register($name, $email)
{
try {
$this->registerUser->fromWeb($name, $email);
}
catch(..) {
}
return View::make(....);
}
//註冊用戶
public function fromWeb($name, $email) {
if(...)
throw new Exception();
$this->userRepository->createUser($name, $email);
}
// userRepository
public function createUser($name, $email) {
// Insert to DB
}
我不爲這個行動提出具體的,我一般詢問是否有正確的工作方式。
此外,我必須在模型中使用DTO嗎?如果是這樣,它應該如何適應?