Seminar on Design and Architecture Patterns

Ošlejšek: Brainstorming II

Lesson details

  • Teams brainstorm on explained patterns and make joint notes (anywhere).

Required output

  • Teams describe the application of selected patterns more formally, adding them to the document from the previous lesson. 
  • Expected patterns:
    • Observer: What is the Subject? Who are the Observers that are notified? We are looking for multiple observers, either multiple instances of the same class and/or instances of multiple classes. Make it clear in the description.
    • Abstract Factory: Describe product types and at least two sub-classes for each product type.
    • Flyweight: Take your three trees decomposed by Composite and consider their leaves to be implemented as sharable flyweights. Clarify their intrinsic (sharable) and extrinsic (non-sharable) states. Based on this, describe whether the application would be meaningful. Summarize your decision explicitly by providing a keyword  CERTAINLY, PERHAPS, or NO.
    • Visitor: Propose one application. Put emphasis on (a) elements and (b) what visitors (operations over elements). Provide a few examples of operations (visitors).
  • Submit results to the "07 - Design patterns brainstorming II".