1
我有我的业务对象的存储库,我需要根据数据创建不同的对象。我应该直接在repo中创建它们还是将其移动到其他地方 - 工厂或业务逻辑层中的某个类?我应该在哪里创建对象?库?厂?
/**
* @returns Applier
*/
class ApplierRepository implements IApplierRepositoryInterface {
//some code
public function find($id) {
$data = $this->findBySql($id);
//Is it a business logic?
if($data['profile_id'] != null)
$object = new ProfileApplier();
if($data['user_id'] != null) {
$user = $this->userRepository->find($data['user_id']);
$object = new UserApplier($user);
}
//...
return $object;
}
}
非常感谢!这就是我一直在寻找的。 –
不客气! –