|
ADO в Delphi AJAX Android C++ CakePHP CMS COM CSS Delphi Flash Flex HTML Internet Java JavaScript MySQL PHP RIA SCORM Silverlight SQL UML XML Бази даних Веб-розробка Генетичні алгоритми ГІС Гітара Дизайн Економіка Інтелектуальні СДН Колір Масаж Математика Медицина Музика Нечітка логіка ООП Патерни Подання знань Розкрутка сайту, SEO САПР Сесії в PHP Системне програмування Системний аналіз Тестологія Тестування ПЗ Фреймворки Штучний інтелект
|
Патерни — шаблони проектування. Семантичний конспект розділу
← Патерни — шаблони проектування Шаблони проектування програмного забезпечення (англ. software design patterns) — ефективні способи вирішення задач проектування програмного забезпечення. Шаблон не є закінченим зразком, який можна безпосередньо транслювати в програмний код. Об'єктно-орієнтований шаблон найчастіше є зразком вирішення проблеми і відображає відношення між класами та об'єктами, без вказівки на те, як буде зрештою реалізоване це відношення.
Патерни поведінки: Ланцюжок Відповідальностей — Chain of responsibility Патерни поведінки: Команда — Command Патерни поведінки: Інтерпретер — Interpreter Патерни поведінки: Ітератор — Iterator Патерни поведінки: Медіатор — Mediator Патерни поведінки: Хранитель — Memento Патерни поведінки: Спостерігач — Observer Патерни поведінки: Стан — State Патерни поведінки: Стратегія — Strategy Патерни поведінки: Шаблонний метод — Template method Патерни поведінки: Відвідувач — Visitor Патерни поведінки: Команда — Command Патерни поведінки: Ланцюжок Відповідальностей — Chain of responsibility Патерни поведінки — Є такі, що акцентують свою увагу на поведінці Вони або інкапсулюють поведінку, або дозволяють її розподілити.. Патерни поведінки — Behavioral patterns.
Ланцюжок Відповідальностей — Забезпечує обробку об’єкта, шляхом передачі його по ланцюжку доти, доки не буде здійснена обробка якоюсь із ланок
Команда — Дозволяє інкапсулювати всю інформацію, необхідну для виконання певних операцій, які можуть бути виконані пізніше, використавши об’єкт команди Команда — Command.
Інтерпретер — Дозволяє описати граматику певної мови, за допомогою чого можна записати речення на цій мові та інтерпретувати його значення Інтерпретер — Interpreter.
Ітератор — Дозволяє доступатися почергово до елементів будь-якої колекції без вникання в суть її імплементації Ітератор — Iterator.
Медіатор — Централізує взаємодію між компонентами, таким чином послаблюючи їхню зв’язність Медіатор — Mediator.
Хранитель — Забезпечує можливість повернення системи до попереднього стану Хранитель — Memento.
Спостерігач — Дозволяє автоматично реагувати багатьом об’єктам на зміну стану певного іншого об’єкта Цей патерн допоможе централізувати огляд роботи декількох класів та генерувати відповідні події. Спостерігач — Observer.
Стан — Дозволяє винести логіку визначення стану об’єкту та його поведінку, характерну для цього стану, в інші класи Стан — State.
Стратегія — Зберігає сім’ю алгоритмів і дозволяє змінювати їх незалежно та переключатися між ними Стратегія — Strategy.
Шаблонний метод — Задає покроково алгоритм, а елементи алгоритму можуть бути довизначені в похідних класах Шаблонний метод — Template method.
Відвідувач — Дозволяє відділити певний алгоритм від елементів, на яких алгоритм має бути виконаний Відвідувач — Visitor.
Породжуючі патерни: Абстрактна Фабрика — Abstract factory Породжуючі патерни: Будівельник — Builder Породжуючі патерни: Фабричний Метод — Factory method Породжуючі патерни: Прототип — Prototype Породжуючі патерни: Одинак — Singleton Породжуючі патерни — Основним завданням таких патернів є спростити створення об’єктів, які необхідні аплікації. Породжуючі патерни — Creational patterns.
Абстрактна Фабрика — Надає простий інтерфейс для створення об’єктів, які належать до того чи іншого сімейства Інколи працюючи із певним набором об’єктів через групу інтерфейсів, хочете створювати об’єкти тільки із іншого набору, щоб пристосувати ваш код до інших умов. Звичайно група інтерфейсів, через які ви оперуєте, залишається та ж сама. Спростити створення відповідного набору допоможе даний патерн. Абстрактна Фабрика — Abstract factory.
Будівельник — Вимальовує стандартний процес створення складного об’єкта, розділяючи логіку будування об’єкта від його представлення Інколи структура деякого об’єкта дуже складна і залежить від багатьох чинників. Щоб спростити створення такого об’єкту зазвичай використовують цей патерн. Будівельник — Builder.
Фабричний Метод — Щоб зручно вибрати одну реалізацію та інстанціювати її, відштовхуючись від простої умови, можна використати цей патерн. Фабричний Метод — Factory method.
Прототип — Дозволяє створювати копії об'єктів, що уже визначені на стадії дизайну. Використовується коли постає завдання отримати копію уже існуючого об’єкта, або отримати можливість швидко генерувати багато подібних екземплярів.. Прототип — Prototype.
Одинак — Забезпечує існування єдиного екземпляру класу та єдиного доступу до нього Одинак — Забезпечує Функціональність єдиного екземпляра Одинак — Singleton.
Патерни — Ефективні способи вирішення задач проектування програмного забезпечення Патерни — Шаблони проектування програмного забезпечення Поділені на три великі групи: породжуючі, структурні та поведінкові.
Патерни поведінки : Ланцюжок Відповідальностей — Chain of responsibility Патерни поведінки : Команда — Command Патерни поведінки : Інтерпретер — Interpreter Патерни поведінки : Ітератор — Iterator Патерни поведінки : Медіатор — Mediator Патерни поведінки : Хранитель — Memento Патерни поведінки : Спостерігач — Observer Патерни поведінки : Стан — State Патерни поведінки : Стратегія — Strategy Патерни поведінки : Шаблонний метод — Template method Патерни поведінки : Відвідувач — Visitor Патерни поведінки — Акцентують свою увагу на поведінці Патерни поведінки — Вони або інкапсулюють поведінку, або дозволяють її розподілити
Структурні патерни: Адаптер — Adapter Структурні патерни: Міст — Bridge Структурні патерни: Компонувальник — Composite Структурні патерни: Декоратор — Decorator Структурні патерни: Легковаговик — Flyweight Структурні патерни: Проксі — Proxy Структурні патерни — Основним завданням цих патернів є формування найбільш підходящої структури та взаємодії між класами для виконання певних завдань
Адаптер. — Використовується, якщо потрібно, щоб один об’єкт міг бути зрозумілим під іншим інтерфейсом. Надає можливість користуватися об’єктом, який не є прийнятним у нашій системі і який не можна змінити. Адаптер. — Adapter.
Міст — Дозволяє розділити імплементацію від її абстракції, таким чином реалізація може бути змінена окремо від абстракції, оскільки вона не наслідується від неї напряму Якщо потрібно розділити абстракцію та імплементацію так, що на одному боці матимемо абстракцію, а на іншому декілька реалізацій, причому всі доступні до модифікацій, то слід задуматися над поєднанням таких незалежних абстракції та реалізації за допомогою цього патерну.. Міст — Bridge.
Компонувальник — Дозволяє нам зберігати деревовидну структуру і працювати однаково із батьками та синами у дерев Якщо елемент містить собі подібні елементи, а вони в свою чергу також можуть містити елементи, то найлегше таку структуру реалізувати за допомогою цього патерну. Компонувальник — Composite.
Декоратор — Використовується для швидкої та динамічної можливості розширення існуючої функціональності, без зміни її носителя Використовується для надання деякої додаткової функціональності нашим об'єктам. Декоратор — Decorator.
Легковаговик — Забезпечує підтримку великої кількості об’єктів шляхом виокремлення спільної інформації для збереження в одному екземплярі Якщо ваша система використовує багато об’єктів, що мають спільні дані, то такі дані можна винести та зробити загальнодоступними для економії пам’яті за допомогою даного патерну. Легковаговик — Flyweight.
Проксі — Підміняє реальний об'єкт та надсилає запити до нього тоді, коли це потрібно Проксі — Даний патерн дозволить донести ваші команди до пункту призначення. Використовуйте цей патерн, якщо відсутня можливість працювати із об’єктом напряму. Може ініціалізувати реальний об'єкт, якщо він до того не існував. Проксі — Proxy.
Фасад — Надає єдину точку доступу до підсистеми, тим самим спрощуючи її використання та розуміння. Фасад — Facade.
Структурні патерни — Основним завданням цих патернів є формування найбільш підходящої структури та взаємодії між класами для виконання певних завдань Структурні патерни — Structural patterns.
По матеріалам книги Андрія Будая "Дизайн патерни – просто, як двері". Матеріал розміщується за домовленістю з автором.
Зверніть увагу на додаткові посиланняЯкщо вас цікавить...Головний розділзагрузка...
|
Сторінки, близькі за змістом ![]() Шаблони проектування програмного забезпечення (англ. software design patterns) — ефективні способи вирішення задач проектування програмного забезпечення. Шаблон не є закінченим зразком, який можна безпосередньо транслювати в програмний код. Об'єктно-орієнтований шаблон найчастіше є зразком вирішення проблеми і відображає відношення між класами та об'єктами, без вказівки на те, як буде зрештою реалізоване це відношення. |
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|