我正在构建小型MVC,并且有一些疑问想要解决。
我有调度程序类,该类需要 HTTP 请求、HTTP 响应和路由器类。
我可以使用依赖注入来做到这一点,例如:
$dispatcher = new Dispatcher($request, $response, $router);
现在可以说我不喜欢这种方法,并且想在 Dispatcher 类中使用这样的类:
class Dispatcher()
{
protected $request;
protected $response;
protected $router;
public function __construct()
{
$this->request = new Request();
$this->response = new Response();
$this->router = new Router();
}
}
2方法有什么问题吗?我是否在阻止一些 OOP 原则?还是以这种方式使用它就可以了?