Зачем использовать абстракцию при работе над одними проектами?

Ну, с самого начала я думал, что абстракции бессмысленны … Я просто не понимаю, нужно ли их использовать или нет — особенно при работе фрилансером без помощи кого-либо еще.

Вот небольшой урок, который я сделал, чтобы продемонстрировать это. То, что я делал в этих классах, можно было легко сделать в обычном классе. Не было необходимости в абстрактном классе. Может кто-нибудь сказать мне, где абстрактный класс будет полезен в небольшом примере, пожалуйста. Я хочу знать, когда и зачем использовать абстракцию, я не спрашиваю

    abstract class Computer{
abstract function turn_on();
abstract function turn_of();
abstract function activate_fan();
}

class Toshiba extends Computer{
function turn_on(){
echo __class__ ." is now on. Green light showing </br>";
$this->activate_fan();
}

function turn_of(){
echo __class__ ." is now of. No light showing </br>";
}

public function activate_fan(){
echo __class__ . " Fan is now running, speed 300rps </br>";
}
}class Asus extends Computer{
function turn_on(){
echo __class__ ." is now on. Blue light showing </br>";
$this->activate_fan();
}

function turn_of(){
echo __class__ ." is now of. No light showing </br>";
}

public function activate_fan(){
echo __class__ . " fan is now running, speed 80rps </br>";
}
}

$Toshiba = new Toshiba;
$Asus = new Asus;

$Toshiba->turn_on();
$Asus->turn_on();

0

Решение

Как насчет этого примера:

function restartComputers($computers) {
foreach ($computers as $c) {
$c->turn_of();
$c->turn_on();
}
}
0

Другие решения

Других решений пока нет …