Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Какие плюсы и минусы у процедурного и объектно-ориентированного стилей кода на php?

Советский советник Ученик (45), закрыт 2 года назад
Лучший ответ
EVK IT Сервис К Мыслитель (5236) 2 года назад
Пиши так, как удобно тебе. У каждого СВОЙ ПУТЬ.
Я применяю смешанный стиль: и классы и функции.
В работе с командой предпочтительнее ООП конечно.
Остальные ответы
партнер [www.a77r.ru] Мудрец (10184) 2 года назад
об этом написана масса статей, есть приверженцы и того и другого стиля.
На мой взгляд, с ООП лучше выстраивается сложная архитектура, а процедурный стиль больше подходит небольшим проектам.
Самый День Искусственный Интеллект (100523) 2 года назад
Простота - при обычном (функциями) программировании.
Объёмность видения сразу всей картины (ООП стиль) программировании.

При первом всё просто, но не видно объёма.
При втором всё сложно, но виден объём.

На скорость не влияет, вообще ни на что не влияет, кроме МОЗГОВ программиста. который видит либо сразу весь сайт, либо не видит его, но знает про все функции на сайте.
Андрей Высший разум (483627) 2 года назад
Процедурное программирование в PHP - монолитный код с непредсказуемыми зависимостями между частями кода и отсутствием приличного контроля типов. Ручное прописывание бесконечных include / require, ручная инициализация всех переменных.

В результате получаем очень хрупкий и ненадёжный код. Любое изменение в любом файле может повлечь за собой лавину правок в десятках файлов проекта. Для отельного простейшего скрипта процедурное программирование подходит, для чего-то серьёзного - ни в коем случае.

ООП - модульный код с разделением на независимые компоненты-классы и с полноценным контролем типов. Никаких ручных include - PHP сам подгружает нужные классы. Никакой ручной инициализации - контейнер внедрения зависимостей автоматически создаст и проинициализирует объект по заданным в конфигурации настройкам.

Получаем более надёжный код, который легко исправлять и модифицировать. Да, самого коды будет чуть больше, но геморроя многократно меньше. Отдельные независимые друг от друга классы намного проще писать и тестировать.
Табах МитбаховичЗнаток (325) 2 года назад
ты неуч
Андрей Высший разум (483627) Табах Митбахович, Весеннее обострение, а ты без таблеток. Сочувствую.
Советский советникУченик (45) 2 года назад
А ядро Linux в каком стиле написано?
Андрей Высший разум (483627) Советский советник, Язык C, на котором написано ядро Linux, поддерживает только процедурное программирование.
NohtypГуру (3389) 2 года назад
Мoнoлит мoжнo paзбить на микpocepвиcы.
Андрей Высший разум (483627) Nohtyp, Но процедурный код микросервиса останется монолитным - со всеми недостатками этого подхода.
Похожие вопросы