Uzorak dizajna
Uzorci dizajna su rješenja za višekratnu upotrebu softver razvoj. Oni služe kao predlošci koje programeri mogu koristiti prilikom stvaranja aplikacije. Nisu specifični za pojedinca programski jezici, ali umjesto toga su najbolje prakse ili heuristika koji se mogu primijeniti u različitim programskim okruženjima.
Iako uzorci dizajna ne ovise o jeziku, oni često uključuju predmete ili Nastava. Stoga su tipično povezani s objektno orijentirano programiranje. Pojedinačni obrasci mogu se klasificirati u tri različite kategorije: 1) kreativni obrasci, 2) strukturni obrasci i 3) obrasci ponašanja.
1. Kreativni obrasci
Kreativni obrasci dizajna opisuju načine za stvaranje predmeta pomoću metoda koje su prikladne za različite situacije. Na primjer, obrazac "Singleton" koristi se za stvaranje osnovne klase koja će imati samo jedan primjerak. Uobičajeni primjer je globalna varijabla definirana u Izvorni kod programa. Uzorak "Object Pool" koristi se za stvaranje klase s "poolom" objekata koji se mogu dohvatiti po potrebi, umjesto da se ponovno stvore. Ovo se često koristi za caching svrhe.
2. Strukturni uzorci
Uzorci strukturnog dizajna definiraju odnose između objekata. Na primjer, obrazac "Podaci privatne klase" koristi se za ograničavanje pristupa određenoj klasi. To može spriječiti neželjenu preinaku objekta. Klasa "Dekorator", s druge strane, omogućuje dodavanje ponašanja i stanja u objekt na runtime. To programerima pruža fleksibilnost da dodaju onoliko klasa objektu koliko je potrebno. Jedan od primjera je avatar u videoigri koja akumulira oružje, oklop i predmete tijekom igre. Prikladno nazvana klasa "Dekorator" pružit će dobar okvir za ovaj postupak.
3. Obrasci ponašanja
Uzorci dizajna ponašanja opisuju ponašanje predmeta, poput načina međusobne komunikacije. Jedan od primjera je obrazac "Naredba", koji opisuje objekte koji izvršavaju naredbe. Uzorak "Memento" bilježi stanje predmeta kako bi se mogao vratiti u spremljeno stanje. Ova dva uzorka mogu se zajedno koristiti za izvođenje otkopčati i Redo operacije u programu.
rezime
Svaka od tri kategorije uključuje nekoliko drugih obrazaca dizajna koje programeri mogu koristiti. Iako obrasci pružaju korisne predloške za programere, ponekad im se zamjera da su nepotrebni ili nedovoljno specifični za određene programe. Stoga, iako su obrasci dizajna korisni alati za programiranje, njih nije potrebno točno slijediti kako bi se stvorili dobro osmišljeni softverski program.