Design Patterns Midterm

The flashcards below were created by user djon on FreezingBlue Flashcards.

  1. Why use sockets?
    • programs talk to other computers
    • updates, games
  2. Why use libraries?
    libraries are the best way to manage and distribute functions and classes
  3. why use advanced c++?
    • c++ is constantly advancing and improving¬†
    • always a benefit to code more elouently
    • c++11
  4. Four elements of a pattern
    • pattern name
    • problem description
    • solution
    • consequences
  5. Pattern name
    • a word or two to describe a design problem, solutions and consequences
    • Singleton, Facade
  6. Design Problem
    explains the problem and its context
  7. Design Solution
    • describes the elements that make up the design
    • usually expressed in classes or objects
  8. Design Consequences
    documents the trade-offs of applying the pattern
  9. 3 major pattern groups
    • creational
    • structural
    • behavioural
  10. 2 scope groups of patterns
    • class scope
    • object scope
  11. difference between class scope & object scope
    • class = change at compile time
    • object = change while running
  12. creational patterns
    deal with issues of object creation/instantiation
  13. structural patterns
    deal with issues of class composition and organization
  14. behavioural patterns
    deal with issues of flow control, communication and cooperation
  15. motivation of an iterator
    • access container elements without exposing its internal structure
    • traverse elements without bloating the container interface
  16. applicability of an iterator
    access an object's contents without exposing its internal representation
  17. Ways to control the iterator
    • External: client controls - more flexible
    • Interal: iterator controls - easier to use
  18. Who defines the traveral algorithm of an iterator
    • aggregate object - cursor
    • iterator - reuse on different aggregates
  19. 4 basic iterator operations
    • First
    • Next
    • IsDone
    • CurrentItem
  20. Null Iterators
    used for boundary testing
Card Set:
Design Patterns Midterm
2014-02-19 03:40:37
Design Patterns

Show Answers: