Никак не могу понять, зачем нужны абстрактные классы и интерфейсы? И еще смысл наследования?
В статьях есть примеры, но в них наследование не имеет смысла. Например
class Controller {
protected function getView() {
}
}
class ModuleController extends Controller {
public function getView() { //Вот в дочернем классе метод переопределяется, и каков смысл тогда наследовать?
echo 'view';
}
}