ООП потребности для темы Wordpress? [дубликат]

Я знаю, как программировать в PHP, но я не знаю OOPS (Объектно-ориентированное программирование). Лучше сделать темы в OOPS (Объектно-ориентированное программирование) или с нормальным кодированием? Это лучше для действий и т.д.?

Спасибо!

0
05.03.2013, 09:27
3 ответа

Будет лучше при кодировании темы в OOPS (Объектно-ориентированное программирование), потому что OOPS предоставляет следующие преимущества по нормальному/процедурному ориентированному программированию.

Преимущества объектно-ориентированного программирования

  1. Модульный принцип: исходный код для класса может писаться и сохраняться независимо от исходного кода для других классов. После того, как созданный, объект может быть легко роздан в системе.

  2. Сокрытие информации: Путем взаимодействия только с методами объекта, детали его внутренней реализации остаются скрытыми от внешнего мира.

  3. Повторное использование кода: Если класс уже существует, можно использовать объекты от того класса в программе. Это позволяет программистам реализовывать/тестировать/отлаживать комплекс, конкретные объекты задачи, которые можно затем использовать в собственном коде.

  4. Легкая Отладка: Если конкретный объект оказывается проблемой, можно просто удалить его из приложения и включить другой объект как его замену. Это походит на механические проблемы решения в реальном мире. Если болт повреждается, Вы заменяете его, не вся машина.

Стоимость объектно-ориентированного программирования

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

1
19.02.2020, 23:50
  • 1
    В общем языке программирования закрытия (также известный как лямбды) могут достигнуть всех тех же преимуществ, и справка производит код, который легче протестировать и отладить. По этой причине я-1 на этом. –  Josh Habdas 19.05.2017, 11:22

Отвечать на вопрос: Нет, Вам не нужно ООП для тем WordPress.

Это не означает, что Вы не можете сделать этого, подавляющее большинство тем используют некоторые биты классов, как расширение Меню WP Walker и некоторые другие мелочи, но я еще не видел тему, полностью разработанную в ООП.

Мудрый производительностью – в зависимости от сценария – я сомневаюсь, что Вы заметили бы любые существенные различия (особенно с кэширующейся системой), таким образом, это - вопрос персонального предпочтения.

Я рассматривал идею разработать темы в ООП, но это было бы просто, чтобы у меня было больше допускающего повторное использование, лучшего организованного и легко растяжимого кода.

Однако, как указано @Wyck, этот вопрос слишком универсален, чтобы быть отвеченным правильно.

1
19.02.2020, 23:50

Избегайте ООП.

Это - на самом деле два вопроса в одном

  1. необходимо ли использовать методологию ООП?
  2. необходимо ли использовать классы?

Нет ничего неправильно с использованием ООП, но большая часть взаимодействия, которое темы и плагины имеют с ядром Wordpress, очень функциональна - на событии "a", выполняют функцию "b". Обычно существует очень мало значения в попытке сделать Объектно-ориентированное проектирование (который необходимо всегда делать прежде, чем написать код ООП) обнаружить значимые персистентные классы объектов в теме, поскольку они, вероятно, очень тривиальны.

Необходимо ли все еще использовать классы в коде? зависит от того, какие вещи Вы делаете. Некоторые части ядра Wordpress разработаны, чтобы быть расширенными наследующими классами (виджеты и ходоки). Это будет почти безумно, чтобы не идти ООП, если необходимо измениться/расширить ту функциональность в теме.

Некоторые сменные писатели используют классы для скрытия данных / пространство имен для предотвращения глобальной переменной и коллизий имен функций, но это может быть достигнуто также путем добавления префикса "нормальных" имен функций.

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

Подводя итоги, когда у Вас есть опции использовать обоих, различиями является больше вопроса персонального предпочтения стиля кодирования затем любые главные существенные различия. Если Вы не знаете ООП, необходимо учиться и решить собой, которые разрабатывают, подходит Вам и проектам, Вы добиваетесь большего успеха.

0
19.02.2020, 23:50

Теги

Похожие вопросы