Всем здрасте! Я - не программист. Но волею судьбы что бы зарабатывать деньги приходится программировать. Сейчас занимаюсь одним проектом (инет-магазин) и параллельно работаю в поддержке одной CMS. Вся CMS построена на классах. У меня же, в моем проекте, класс только для шаблонизации и соединения с БД. При этом все запросы идут через гравный-индекс-файл и через recive-файл (принимает данные из форм) Файл index.php выглфдит примерно так: Код (Text): //подключаем все необходимое //инициализируем шаблонизатор, соединение с БД switch($do) { ....case "list": //подключаем файл для этого действия includes/list.php ....break; ....case "show": //подключаем файл для этого действия includes/show.php ....break; ....case "compare": //подключаем файл для этого действия includes/compare.php ....break; } //парсим шаблон, выводим его в свою очередь файл list.php имеет подобную структуру: Код (Text): switch($list) { ....case: "goods" //туева хуча операторов для вывода товаров (*) ....break; ....case: "manufacturer" //туева хуча операторов для вывода производителей и товаров к ним ....break; ....case: "categories" //туева хуча операторов для вывода разделов/ктегорий и тд ....break; } С каждым днем кода становится все больше и больше. Можно, конечно, разбивать его еще на файлы, но я думаю, что проектирую структуру движка как-то неверно. Так вот, объясните мне, может нужно применить ООП? В CMS строка (*) выглядела б так: $obj = new goods(); $obj->setParams($id, бла-бла); С другой стороны, что мешает написать $var = goods($id, бла-бла); И классы не нужны. Объясните, когда их применять. Понятно, что когда шаблонизация, базы, соединение с фтп, преобразование картинок, то классы приходят на помощь. Возможно, когда обрабатываем бб-коды. А еще когда?
Это можно и с помощью функций сделать. ООП - это всего лишь парадигма, такая же как и процедурый подход. Тут дело в архитектуре. Мне кажется, что и в процедурном подходе можно организовать нормальную систему. Обычно, если применяют ООП при разработке сайта, то делают все при помощи классов. P.S. Я сам еще плохо шарю в ООП, поэтому близко не воспринимай)