Основы ООП.
Все основанные на объектах языки (C#, Java, С++, Smalltalk, Visual Basic и т.п.) должны отвечать трем основным…
Все основанные на объектах языки (C#, Java, С++, Smalltalk, Visual Basic и т.п.) должны отвечать трем основным…
Отношения между классами — агрегация (aggregation) — описывает связь «часть»–«целое», в котором «часть» может существовать отдельно от…
Прежде чем приступить к изучению основных паттернов также рассмотрим основные отношения между объектами, которые помогут нам понять…
Паттерн Интерпретатор (Interpreter) определяет представление грамматики для заданного языка и интерпретатор предложений этого языка. Как правило, данный…
Паттерн “Команда” (Command) позволяет инкапсулировать запрос на выполнение определенного действия в виде отдельного объекта. Этот объект запроса…
Паттерн Посетитель (Visitor) позволяет определить операцию для объектов других классов без изменения этих классов. При использовании паттерна…
Паттерн Хранитель (Memento) позволяет выносить внутреннее состояние объекта за его пределы для последующего возможного восстановления объекта без…
Паттерн Посредник (Mediator) представляет такой шаблон проектирования, который обеспечивает взаимодействие множества объектов без необходимости ссылаться друг на…
Шаблонный метод (Template Method) определяет общий алгоритм поведения подклассов, позволяя им переопределить отдельные шаги этого алгоритма без…
Паттерн “Наблюдатель” (Observer) представляет поведенческий шаблон проектирования, который использует отношение “один ко многим”. В этом отношении есть…
Паттерн Стратегия (Strategy) представляет шаблон проектирования, который определяет набор алгоритмов, инкапсулирует каждый из них и обеспечивает их…
Состояние (State) — это поведенческий шаблон проектирования, который позволяет объекту изменять своё поведения, в зависимости от внутреннего…
Паттерн Итератор (Iterator) предоставляет абстрактный интерфейс для последовательного доступа ко всем элементам составного объекта без раскрытия его…
Цепочка Обязанностей (Chain of responsibility) – поведенческий шаблон проектирования, который позволяет избежать жесткой привязки отправителя запроса к…
Паттерн Приспособленец (Flyweight) – структурный шаблон проектирования, который позволяет использовать разделяемые объекты сразу в нескольких контекстах. Данный…
Паттерн Компоновщик (Composite) объединяет группы объектов в древовидную структуру по принципу “часть-целое и позволяет клиенту одинаково работать…
Паттерн Заместитель (Proxy) предоставляет объект-заместитель, который управляет доступом к другому объекту. То есть создается объект-суррогат, который может…
Декоратор (Decorator) представляет структурный шаблон проектирования, который позволяет динамически подключать к объекту дополнительную функциональность. Для определения нового…
Мост (Bridge) – структурный шаблон проектирования, который позволяет отделить абстракцию от реализации таким образом, чтобы и абстракцию,…
Фасад (Facade) представляет шаблон проектирования, который позволяет скрыть сложность системы с помощью предоставления упрощенного интерфейса для взаимодействия…