1 / 16

Structural design patterns Bridge

Structural design patterns Bridge. Miroslav Sajko. Modelová situácia. Plánovač vlákien s rôznymi typmi plánovania na rôznych platformách. Modelová situácia. Nová platforma – prácne pridávanie pre každý typ plánovania. Bridge. „ Handle /Body“

meir
Download Presentation

Structural design patterns Bridge

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. StructuraldesignpatternsBridge Miroslav Sajko

  2. Modelová situácia • Plánovač vlákien s rôznymi typmi plánovania na rôznych platformách

  3. Modelová situácia • Nová platforma – prácne pridávanie pre každý typ plánovania

  4. Bridge • „Handle/Body“ • Oddeľ abstrakciu od implementácií, aby sa obidve dali upravovať nezávisle • (Decouple an abstraction from its implementation so that the two can varyindependently)

  5. Bridge v UML • Abstraction – definuje jadro návrhového vzoru, obsahuje odkazy na Implementory • RefinedAbstraction – rozširuje Abstraction, ukryto pred Implementorom • Implementor – definuje základné operácie • ConcreteImplementor– implementuje operácie Implementora

  6. Dôsledky • Dve rôzne a nezávislé hierarchie • Vyhnutie sa prepojeniu medzi abstrakciou a implementáciou • Jednoduchá rozširovateľnosť abstrakcie aj implementácie • Skrytá implementácia pred klientom • Počas behu programu možemeprepínať medzi jednotlivými implementáciami

  7. Riešenie modelovej situácie

  8. Implementácia • Iba 1 ConcreteImplementor– netreba abstraktný Implementor (špeciálny prípad) • Výber „správneho“ Implementora –podľa parametra z konštruktora alebo výber defaultného a potom prípadná zmena počas behu alebo využijeme AbstractFactory

  9. Sample

  10. Sample

  11. Sample

  12. Sample

  13. Sample

  14. Využitie v praxi • Určenie konkrétnej implementácie počas behu • Obmedzenie vzniku veľa tried, ktoré by bolo nutné definovať pri zviazaní rozhraní a výslednej implementácie • Chceme implementáciu zdielať medzi viacerými objektami

  15. Zdroje • Design Patterns: Elements of Reusable Object-Oriented Software • http://en.wikipedia.org/wiki/Bridge_pattern • http://sourcemaking.com/design_patterns/bridge • http://javapapers.com/design-patterns/bridge-design-pattern/ • http://objekty.vse.cz/Objekty/Vzory-Bridge

  16. Ďakujem za pozornosťOtázky? Kontakt: miroslav.sajko@student.upjs.sk

More Related