Php 现加入一项“第(1)款”;使用「;工厂a类中的语句是否违反了SOLID?
我有一个工厂类,它在调用createPdf()方法时创建一个PDF对象。我需要的所有函数都包含在该对象中。工厂本身通过创造目标来实现单一责任的坚实原则,对吗 那么,在下面添加“使用”声明是否违反了坚实的原则?或者在某些方面,事情就是这样的Php 现加入一项“第(1)款”;使用「;工厂a类中的语句是否违反了SOLID?,php,oop,Php,Oop,我有一个工厂类,它在调用createPdf()方法时创建一个PDF对象。我需要的所有函数都包含在该对象中。工厂本身通过创造目标来实现单一责任的坚实原则,对吗 那么,在下面添加“使用”声明是否违反了坚实的原则?或者在某些方面,事情就是这样的 use Vendor\Module\Pdf; class PdfFactory { public function createPdf(){ return new Pdf(...); } } 根据: 使用别名引用外部完全限定
use Vendor\Module\Pdf;
class PdfFactory
{
public function createPdf(){
return new Pdf(...);
}
}
根据:
使用别名引用外部完全限定名或导入的功能是名称空间的一项重要功能。这类似于基于unix的文件系统创建指向文件或目录的符号链接的能力
您的示例可以写为:
classpdffactory
{
公共函数createPdf(){
返回新的\Vendor\Module\Pdf(…);
}
}
因此,为了回答您的问题,
使用
永远不会成为违反任何原则的标准。这不是工厂级。。它只是一个PDF生成器。为了简单起见,对代码进行了裁剪。在调用createPdf之前会发生很多事情。