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

Практичне застосування паттернів проектування

Читайте также:
  1. Cутність та умови застосування міжнародних розрахунків за допомогою акредитивів.
  2. XIV. 7. Вимірювання електрорушійних сил. Застосування методу вимірювання ЕРС для визначення різних фізико – хімічних величин
  3. А. Рішення на застосування одного з перших трьох режимів радіаційного захисту
  4. Акти застосування права: поняття, ознаки, види, структура
  5. Акти офіційного тлумачення (інтерпретаційні акти) – це правові акти, прийняті компетентними державними органами, що містять роз’яснення норм права або порядку їх застосування.
  6. Акти правозастосування, їх види
  7. Б. Рішення на застосування четвертого або п'ятого режимів радіаційного захисту
  8. Види актів застосування норм права
  9. Вимоги до проектування поздовжнього профілю сортувального пристрою
  10. Глава 20 РЕАЛІЗАЦІЯ НОРМ ПРАВА. ПРАВОЗАСТОСУВАННЯ
  11. Експертні системи, їх будова та застосування в економіці
  12. Електронний підпис, його застосування та законодавче обґрунтування.

Найчастіше причини, по яких варто вивчати паттерни проектування, формулюють наступним чином [10]:

1. Можливість багаторазового використання. Повторне використання рішень із уже завершених успішних проектів дозволяє швидко приступити до рішення нових проблем і уникнути типових помилок. Розробник одержує пряму вигоду від використання досвіду інших розробників, уникнувши необхідності знову і знову «винаходити велосипед».

2. Застосування єдиної термінології. Професійне спілкування і робота в групі (команді розробників) вимагає наявності єдиного базового словника і єдиної точки зору на проблему. Паттерни проектування надають подібну загальну точку зору як на етапі аналізу, так і при реалізації проекту.

3. Паттерни проектування надають абстрактний високорівневий погляд як на проблему, так і на весь процес об’єктно-орієнтованої розробки. Це допомагає уникнути зайвої деталізації на ранніх стадіях проектування.

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

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

Проектування з використанням паттерном передбачає, що почати роботу необхідно з аналізу найзагальнішої картини, а потім додавати до неї окремі деталі. Реалізація цього підходу при розробці програмних проектів складається з наступних етапів [14]:

1. Відшукати паттерни, що є присутніми у ПрО, і проаналізувати отриманий набір.

2. Для отриманого набору паттернів виконати такі дії:

а) вибрати паттерн, що найбільшою мірою формує контекст для всіх інших паттернів;

б) застосувати цей паттерн до самого верхнього рівня реалізації проекту;

в) виявити будь-які додаткові паттерни, що можуть з’явитися в отриманій схемі, і додати їх до набору, що був отриманий у результаті попереднього аналізу;

г) повторно застосувати зазначений процес до набору паттернів, виділених у результаті аналізу.

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

При розробці дизайну системи варто керуватися такими базовими принципами [12]:

- завжди формувати простий дизайн: із двох запропонованих рішень, як правило, кращим є те, що простіше;

- слабка залежність: дизайн модуля повинен бути таким, що б у випадку його модифікації залежні фрагменти системи не вимагали або майже не вимагали змін.

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

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

При практичному застосуванні паттернів проектування також не слід забувати про те, що ООП постійно розвивається. Підходи, які раніше вважалися зразковими, згодом можуть стати антипаттернами [14], а їм на зміну можуть прийти значно кращі рішення (як, наприклад, трапилося з паттерном Sіngleton).


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |

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



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