Php 在课堂上应该做多少专业化工作?
我正在构建PHP类来完成特定和一般任务,但我不确定我是否正确地完成了这些任务Php 在课堂上应该做多少专业化工作?,php,oop,Php,Oop,我正在构建PHP类来完成特定和一般任务,但我不确定我是否正确地完成了这些任务 class Cat { public function cuddleNonStrayCat() { $this->washHands(); $this->cuddleCat(); } public function cuddleStrayCat() { $this->cuddleCat(); $this-&g
class Cat
{
public function cuddleNonStrayCat() {
$this->washHands();
$this->cuddleCat();
}
public function cuddleStrayCat() {
$this->cuddleCat();
$this->washHands();
$this->getRabiesVaccine();
}
public function getRabiesVaccine() { ... }
public function cuddleCat() { ... }
public function washHands() { ... }
}
$cat = new Cat;
# Example 1 - Very compact to do a specialized thing:
$cat->cuddleStrayCat();
# Example 2 - Do the specialization outside of the class:
$cat->cuddleCat();
$cat->washHands();
$cat->getRabiesVaccine();
第一个例子是,我将专门化(混乱)放在类内部,但将其保持在外部干净。第二个例子正好相反
一个比另一个更受欢迎,或者有其他更好的方法吗?为什么“猫”包含拥抱猫的逻辑
出于某种原因,您似乎认为应该在一个类中尽可能多地填充逻辑。那是错误的。一个类应该有一个通用的用途(这基本上是定义的概念),但您已经开始在其中添加所有松散相关的内容——这是创建“上帝对象”的方法,它包含应用程序逻辑的每一部分
这样看:为什么猫会意识到如何洗手呢?从看这个视频开始:很好的视频。我需要看两遍;)