Узорци понашања
У софтверском инжењерству узорци понашања су пројектни узорци који покушавају да идентификују честе обрасце који се јављају у комуникацији између објеката и да их претворе у пројектне узорке. Овим се постиже флексибилност у спровођењу комуникације међу објектима.
Примери узорака понашања су:
- Посматрач: Дефинише зависност 1:N између објеката, такву да када један објекат промени стање сви зависни објекти буду обавештени и аутоматски се ажурирају.
- Итератор: Обезбеђује секвенцијални приступ елементима неког агрегатног објекта без експонирања унутрашње структуре тог агрегата.
- Стратегија: Дефинише фамилију алгоритама, енкапсулирајући сваки и чини их међусобно замењивим. Стратегија омогућава једноставну промена алгоритма у време извршења.
- Шаблонски метод: Дефинише костур неког операционог алгоритма, делегирајући поједине кораке поткласама. Шаблонски метод омогућава поткласама да редефинишу одређене кораке алгоритма без измене његове структуре.
- Стање: Омогућава објекту да мења своје понашање када се мења његово унутрашње стање. Изгледа када да објекат мења своју класу.
- Подсетник: Без нарушавања енкапсулације снима и екстернализује стање неког објекат, тако да омогући да се објекат касније може вратити у дато стање.
- Посредник: Дефинише објекат који енкапсулира како скуп објеката интерагује. Посредник омогућава слабо спрезање објеката што постиже чувањем објеката који се међусобно реферишу, а то дозвољава да им се интеракција мења независно.
- Команда: Енкапсулира захтев у један објекат, омогућавајући да се клијенти параметризују различитим захтевима, да се захтеви испоручују кроз ред чекања, да се прави дневник захтева и да се ефекти извршеног захтева пониште.
- Ланац одговорности: Избегава непосредно везивање пошиљаоца захтева са примаоцем захтева, дајући шансу већем броју објеката да обраде захтев. Ланац одговорности повезује објекте примаоце захтева у ланац и прослеђује захтев низ ланац док га неки објекат не обради.
- Посетилац: Репрезентује једну операцију коју треба применити на елементе једне објектне структуре. Посетилац омогућава дефинисање нове операције без измене класа елемената над којим се извршава.
- Интерпретер: За дати језик дефинише репрезентацију његове граматике, као и интерпетер који користи ту репрезентацију да интерпретира исказе језика.