АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Template method (шаблоновий метод)

Читайте также:
  1. Classification of methods of identification
  2. Comparative and Historical method
  3. Method of calculation of effectiveness ratio of an investment
  4. Method of calculation of the pure given effect
  5. Methods of generating electricity
  6. METHODS OF PAYMENT IN FOREIGN TRADE
  7. METHODS OF THE PHONEMIC ANALYSIS

Визначає кістяк алгоритму, перекладаючи відповідальність за деякі його кроки на підкласи. Дозволяє підкласам перевизначати кроки алгоритму, не міняючи його загальної структури.

Vіsіtor (відвідувач)

Представляє операцію, яку треба виконати над елементами об'єкта. Дозволяє визначити нову операцію, не міняючи класи елементів, до яких він застосовується.

Організація каталогу

Шаблони проектування розрізняються ступенем деталізації й рівнем абстракції і повинні бути якимсь образом організовані. Описується класифікація, що дозволяє посилатися на сімейства взаємозалежних шаблонів Вона допоможе швидше освоїти шаблони, описувані в каталозі, і вкаже напрямок пошуку нових.

Таблиця "Простір паттернов проектировани":

Критерії класифікації шаблонів:

Ціль

Рівень

Найважче завдання в об’єктно-орієнтованому проектуванні - розкласти систему на об'єкти. При вирішенні доводиться враховувати безліч факторів: інкапсуляцію, глибину деталізації, наявність залежностей, гнучкість, продуктивність, розвиток, повторне використання тощо. Все це впливає на декомпозицію, причому часто суперечливим образом.

Методики об’єктно-орієнтованого проектування відображають різні підходи. Ви можете сформулювати завданя письмово, виділити із фрази, що вийшла, іменники й дієслова, після чого створити відповідні класи й операції. Інший шлях - зосередитись на відносинах і поділі обов'язків у системі. Можна побудувати модель реального світу або перенести виявлені при аналізі об'єкти на свій дизайн.

Багато об'єктів виникають у проекті з побудованої в ході аналізу моделі. Але нерідко з'являються й класи, у яких немає прототипів у реальному світі. Це можуть бути класи як низького рівня, наприклад масиви, так і високого. Шаблон Компоновщик вводить таку абстракцію для однакового трактування об'єктів, у якої немає фізичного аналога. Якщо дотримуватися строгого моделювання і орієнтуватися лише на реальний світ, то вийде система, що відображає сьогоднішні потреби, але, можливо, не враховуює майбутній розвиток. Абстракції, що виникають у ході проектування, - ключ до гнучкого дизайну.

Шаблони проектування допомагають виявити не цілком очевидні абстракції й об'єкти, які можуть їх використати. Наприклад, об'єктів, що представляють процес або алгоритм, у дійсності немає, але вони є невід'ємними складовими гнучкого дизайну. Шаблон Стратегія описує спосіб реалізації взаємозамінних сімейств алгоритмів. Шаблон Стан дозволяє представити стан деякої сутності у вигляді об'єкта. Ці об'єкти рідко з'являються під час аналізу й навіть на ранніх стадіях проектування. Робота з ними починається пізніше, при спробах зробити дизайн більш гнучким і придатним для повторного використання.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)