Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

архитектура крупных Word press сайтов

  • Login to see the comments

  • Be the first to like this

архитектура крупных Word press сайтов

  1. 1. Архитектура крупных WordPress сайтов Евгений Котельницкий Харьков 2014
  2. 2. Евгений Котельницкий +YevhenKotelnytskyi @yeeevhen http://4coder.info/me
  3. 3. План 1. Наши цели 2. Сложность построения больших WP-сайтов 3. Пишем на одном языке 4. Обработка исключений и оповещения об ошибках 5. Модули и архитектура a. О качестве архитектуры b. Модули c. Организация хуков d. HTML-верстка e. Статические компоненты
  4. 4. Наши цели Что мы хотим от проекта? ● Простота поддержки ○ Низкий порог вхождения ○ Низкая себестоимость изменений ○ Минимум ошибок ● Отсутствие проблем с быстродействием
  5. 5. Сложность построения больших WP-сайтов Сложность поддержки ● Как найти / исправить ошибку? ● Где реализован этот блок? ● Кто так пишет? (стиль написания кода) ● Кто так пишет? (архитектура) ● Я не трогал этот модуль, откуда ошибка? ● Как я перенесу “часть изменений”?
  6. 6. Сложность построения больших WP-сайтов Быстродействие Back-end ● Запросы в PHP циклах ● Повторяющиеся операции ● Структура БД ● Неоптимизированные запросы
  7. 7. Сложность построения больших WP-сайтов Быстродействие Front-end ● Большое количество медиа-файлов ● Растущий с прогрессией CSS ● Проблемы с JavaScript возникают редко
  8. 8. Пишем на одном языке с другими WP-разработчиками Стандарты кодирования ● PHP Coding Standards ● HTML Coding Standards ● CSS Coding Standards ● JavaScript Coding Standards
  9. 9. Пишем на одном языке с другими WP-разработчиками Используем возможности WordPress ● “wp_remote_…” вместо cURL ● “wp_mail” вместо PHPMailer ● “dbDelta” вместо “SQL Create”
  10. 10. Отладка и оповещение об ошибках Обработка исключений
  11. 11. Отладка и оповещение об ошибках Оповещения об ошибках
  12. 12. Построение архитектуры О качестве архитектуры Архитектура ПО - многоуровневая система абстракций. Качество абстракции ● Зацепление ● Связность ● Полнота ● Достаточность ● Примитивность Качество классов и объектов, Гради Буч
  13. 13. Построение архитектуры Что дают нам Модули? ● “Упрощение” ● Повторное использование ● Бесконфликтная работа команды
  14. 14. Организация хуков Проблемы ● Поиск реализации ● Очерёдность выполнения ● Конфликты хуков Решение “Декларативность” - Добавим немного правил
  15. 15. HTML-верстка ● Отделяем HTML-шаблоны от PHP ● Не пишем в них JavaScript ● У каждого модуля свои шаблоны
  16. 16. Статические компоненты У каждого модуля свои
  17. 17. Вопросы?
  18. 18. Спасибо!

×