Opis | Oblikovni obrasci (eng. Design patterns) |
Trajanje | 5 dana |
Predznanje | |
Tko treba slušati |
Sažetak:
Oblikovni obrasci mogu ubrzati proces razvoja programske potpore (eng. software) kroz korištenje ispitanih i u razvoju dokazanih razvojnih paradigmi. Učinkovit razvoj programske potpore zahtjeva razmatranje ishoda koji su vidljivi tek u kasnijoj fazi ostvarenja (eng. implementation) programske potpore. Ponovna uporaba (eng. reusing) oblikovnih obrazaca onemogućava ishode koji mogu prouzrokovati velike probleme u razvoju te poboljšava čitljivost i razumljivost programskog koda kako za programere tako i za arhitekte koji su već upoznati s oblikovnim obrascima.
Česte su situacije u kojima programeri ne znaju kako primjeniti određenu tehniku oblikovanja programske potpore na određeni problem. Naime, takve tehnike nije jednostavno primjeniti na općenit, širi skup problema. Oblikovni obrasci pružaju općenita rješenja koja su dokumentirana u obliku koji nije ograničen specifičnostima nekog datog problema.
Nadalje, obrasci pružaju mogućnost programerima da prilikom međusobne komunikacije rabe dobro poznate i razumljive pojmove za opisivanje programske potpore. Oblikovni obrasci mogu se nadograđivati i poboljšavati s vremenom, što ih čini otpornijima od drugih ad-hoc oblikovnih rješenja.
SADRŽAJ
1. Dan i pola drugoga.
Stvarateljski oblikovni obrasci (eng. Creational design patterns)
Ovi oblikovni obrasci primjenjuje se prilikom stvaranja instanci (eng. instance), tj. objekata nekog razreda.
Obrasci: Abstract Factory, Builder, Factory Method, Prototype, Singleton
Pola drugoga i 3. Dan.
Strukturalni oblikovni obrasci (eng. Structural design patterns)
Ovi oblikovni obrasci koriste se prilikom usložnjavanja razreda i objekata kod izgradnje složenog sustava.
Obrasci: Adapter, Decorator, Composite, Facade, Bridge, Flyweight
4. i 5. Dan
Ponašajni oblikovni obrasci (eng. Behavioral design patterns)
Ovim obrascima definira se način komunikacije i sinkronizacije među objektima unutar složenog sustava.
Obrasci: Chain of responsibility, Command, Interpreter, Iterator, Mediator, Memento, Null Object, Observer, State, Strategy, Visitor.