说
a)我具有特质,并在另一堂课中使用它。我知道那是怎么回事。
b)我有一个普通的随机类,称为Helper,并且在该Helper类中具有函数,并且将该类包括在另一个类中。我可以通过使用
在其他类中使用这些帮助程序类的功能Helper :: method()
如果方法是静态的或使用new关键字并使用
之类的方法$ helper-> method()。
c)我可以只有一个php文件和功能。根本没有课。我可以将其包含在另一个类中,然后使用它
方法()
就是这样。
d)我可以有一个类,然后另一个类可以扩展它并具有其功能,但是这样不好,我不能同时扩展2个类。
与b)和c)解决方案相比,为什么使用特质是最好的方法?
答案 0 :(得分:-1)
为什么与b)和c)解决方案相比,使用特征是最好的方法?
您的每个示例对于不同的开发都是一个很好的解决方案。
Helper::method();
Helper->method();
您有一个将在许多类中使用的功能。该功能是相对通用的。 然后将其放在Helper类上,并尽可能将其设置为静态
method();
这是另一个问题:过程还是面向对象的开发?然后取决于上下文。
Trait{ ... }
某些特定的(或不是)功能需要存在于不同的类中吗? 或者您想按功能的用途或其他方式对功能进行排序(当一个类中的功能太多时,我会做很多事情)
但是请记住,在开发时要遵循一些约定。 如果您想共享您的代码(例如GitHub),则最好坚持使用它们(这不是真正的义务,但是...)。
总而言之,这取决于您想做什么,取决于您的开发背景。 没有比其他方法更好的方法了。