Use-case: строение и использование больших программных систем, таких, как CMS
Этот материал не готов и будет исправлен!
Процесс разработки.
Основа:
основное требование для ПО- высокая степень повторного использования кода.
Пример:
Удобнее использовать уже написанные функции, чем создавать свои.
Объект- совокупность данных и функций, которые можно к ним применить.
Функции у всех объектов одинаковы (т.к. объект экземпляр класса).
Часто нужно создавать расширения для функций(наследование объектов), но менять общую функцию не надо.
Важно!
Проблема архитектуры:
Архитектура – некие приёмы объединения классов в функциональные группы классов.
Паттерное (шаблонное) проектирование.
Strategy
Возможности:
1) выбор дизайна.
2) разделение языков (мультиязычность)
3) системное управление контентом- модульное .
Примеры в QS:
Handler (операции над страницей)
Action (вставка чего-либо на страницу)
Observer (наблюдение)
Выбирается одна функция из каждого модуля.
Регистрация модулей обязательна.
Примеры:
Разделение на уровне клиент- сотрудник.
Adapter
Возможности:
визуальный редактор (т.е. календарь, внешние библиотеки)
Пример:
Ajax (интегровка в ядро)
Singleton (одиночка)
использование одного ядра, для всех модулей
Proxy
(чаще всего употребляется в целях оптимизации и называется Cache)
Запись полученных ранее результатов по запросам в базе данных
Примечание:
После изменения информации класс необходимо очистить.
Среднее время жизни Cache – TTL- устанавливается, стандартное 15 минут.