Кратки водич за обрасце дизајна у ЈаваСцрипт-у



Овај чланак ће вам помоћи у детаљном приступу о дизајнерским узорцима у ЈаваСцрипт-у на поједностављени начин ради бољег разумевања.

су напредна објектно оријентисана решења за софтверске проблеме који се често понављају. Узорци су вишеструко употребљиви дизајни и интеракције предмета. Сваки образац има своје име и постаје део речника када се разговара о сложеним дизајнерским решењима.

Шта су обрасци дизајна у ЈаваСцрипт-у?

може се дефинисати као а софтверски образац или опис за решавање проблема који се јавља у више случајева током дизајнирања софтверске апликације или софтверског оквира.





Обрасци дизајнера градитеља

Сада, разговарајмо о Банди четворке (ГоФ)



Банда четворке

Тхе 23 банда од четири (ГоФ) обрасци се обично сматрају основом за све остале обрасце.

Банда четворке (ГоФ) од дизајнерских образаца:



Елементи вишеструко објектно оријентисаног софтвера, Аддисон-Веслеи Профессионал Цомпутинг Сериес, аутор Ерицх Гамма, Рицхард Хелм, Ралпх Јхонсон, и Јохн Влиссидес. Т.хесе 23 ГоФ обрасци се генерално сматрају темељем свих осталих образаца.Категоризирани су у три групе: Креативни, структурни и бихевиорални.

Врсте образаца дизајна

У основи постоје три различите врсте образаца дизајна у ЈаваСцрипт-у. Они су следећи:

Креативни обрасци

Фабрика сажетака: Ово ствара инстанцу са неколико породица класа. Ово пружа интерфејс за стварање породица које су сродни или зависни објекти без икаквих спецификација њихових конкретних класа.

Градитељ: Ова одвојена конструкција објекта од његове репрезентације. Такође раздваја конструкцију сложеног објекта од његове репрезентације, тако да се потпуно исти процес изградње може креирати са различитим приказима.

Фабричка метода: Ово ствара инстанцу за неколико изведених класа. Такође дефинише интерфејс за креирање објекта, али омогућава поткласи да одлучи коју ће класу инстанцирати. Ово такође има фабричку методу која омогућава класу да одложи инстанцију за поткласе.

Прототип: То је потпуно иницијализована инстанца која се може копирати или клонирати. Конкретно, врста објеката који се креирају помоћу прототипске инстанце, стварају нове објекте копирањем овог прототипа.

Синглетон: Потпуно су иницијализиране инстанце за копирање или клонирање.Специфичне врсте објеката треба створити помоћу прототипске инстанце и створити нове објекте копирањем овог прототипа.

Структурни обрасци

Адаптер: Поклапа се са интерфејсима различитих класа. Такође претвара интерфејс класе у други интерфејс, осим у онај који има клијента. Адаптер такође омогућава часовима да раде заједно што иначе не би могло бити због интерфејса некомпатибилности.

Мост: Одваја интерфејс објекта од његове примене. Раздвајање апстракта од његове примене, тако да се могу разликовати независно.

Композитни: Структура стабла је једноставних и сложених објеката, састављених објеката у структуре стабла који представљају делимично целине хијерархије. Композитни омогућава клијентима да се јединствено односе према појединачним предметима и композицијама предмета.

Декоратор: Динамички додаје одговорности објектима. Динамички придружује додатне одговорности објекту. Декоратори такође пружају флексибилну алтернативу поткласирању за проширење функционалности.

Фасада: Једна класа која представља читав подсистем и пружа обједињени интерфејс скупу интерфејса у систему. Фасада дефинише интерфејс вишег нивоа што олакшава употребу подсистема.

Мува: Фино зрнаста инстанца која се користи за ефикасно дељење за ефикасну подршку великом броју фино зрнастих предмета. Летећа тежина је заједнички објекат који се истовремено може користити у више контексата.Тежина муве такође делује као независни објекат у сваком контексту - не разликује се од инстанце објеката који се не деле.

Заступник: То је објекат који представља други објекат. Обезбеђује сурогат или резервисани објекат који контролише приступ њему.

Обрасци понашања:

подићи нешто до моћи у јави

Ланац одговорности: То је начин прослеђивања захтева између ланца објеката. Избегава спрегу са пошиљаоцем и шаље захтев примаоцу дајући прилику да више захтева обради захтев. Прихватајући објекти су ланцима и прослеђују захтев дуж ланца док их објекат не обради.

Команда: Инкапсулира захтев за наредбом као објекат. Инкапсулирани захтев као објекат, што вам омогућава да параметеришете клијенте различитим захтевима, редовима или дневницима и подржавате операције које је немогуће извршити.

Тумач: То је начин за укључивање језичких елемената у програм. С обзиром на језик, дефинишите представу за његову граматику заједно са тумачем који користи представу за тумачење реченица на језику.

Итератор: Секвенцијални приступ елементима колекције омогућава начин секвенцијалног приступа елементима агрегатног објекта без излагања његове основне репрезентације.

Посредник: Дефинише поједностављену комуникацију између класа. Дефинишите објекат који обухвата начин интеракције скупа објеката. Посредник промовише лабаву спрегу спречавајући да се предмети експлицитно позивају једни на друге и омогућава вам независно мењање њихове интеракције.

Мементо: Снима и враћа унутрашње стање објекта. Не крши енкапсулацију, хватање и екстернализацију унутрашњег стања објекта тако да се објекат може касније вратити у ово стање.

Посматрач: То је начин обавештавања о променама у више класа. Дефинише зависност између више објеката, тако да када један објекат промени стање, сви његови зависни делови се аутоматски обавештавају и ажурирају.

Стање: Мења понашање објекта када се његово стање промени. Омогућава објекту да мења своје понашање када се промени његово унутрашње стање. Изгледа да објекат мења своју класу.

Стратегија: Инкапсулира алгоритам унутар класе и дефинише породични алгоритам, енкапсулира сваки од њих и чини га заменљивим. Стратегија омогућава алгоритам да се разликује независно од клијената који га користе.

Шаблон: Тачне кораке алгоритма одложите за поткласу. Дефинише костур алгоритма у операцији, одлажући неке важне кораке у подкласе. Метод предлошка омогућава нам да створимо поткласу која редефинише одређене кораке алгоритма без промене структуре алгоритма.

Посетилац: Дефинише нову операцију класе без промене. Представљају операцију коју треба извршити на елементима објектне структуре. Посетилац вам омогућава да дефинишете нову операцију без промене класа елемената на којима делује.

Овим смо дошли до краја овог чланка. Надам се да сте разумели обрасце дизајна у ЈаваСцрипт-у, њихове типове, значај и њихову примену.

Сад кад сте разумели основе дизајнерских образаца у ЈаваСцрипт-у, погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250.000 задовољних ученика раширених широм света. Едурекин курс за обуку и сертификацију Јава Ј2ЕЕ и СОА дизајниран је за студенте и професионалце који желе да буду Јава програмер. Курс је дизајниран да вам пружи почетну предност у Јава програмирању и обучи вас за основне и напредне Јава концепте, заједно са разним Јава оквирима као што су Пролеће .

Имате питање за нас? Спомените то у одељку за коментаре овог блога „Дизајн образаца у ЈаваСцрипт-у“ и јавићемо вам се што је пре могуће.