Wzorce projektowe

Paweł Ciach

9 listopada 2003


  1. Czym są wzorce projektowe.

    Przykładowe definicje:
    • Wzorce projektowe stanowią powtarzalne rozwiązanie zagadnień projektowych, z którymi się wciąż spotykamy.
    • Wzorzec identyfikuje i specyfikuje pewna abstrakcję, której poziom znajduje się powyżej poziomu abstrakcji pojedynczej klasy, instancji lub komponentu
    • Wzorce projektowe w największym stopniu dotyczą problematyki proponowanego użycia powtarzających się motywów architektury programów, zaś szkielety aplikacji dotyczą szczegółów projektowych i implementacyjnych

  2. Historia wzorców projektowych.

    • Prace architekta Christophera Alexandra. Wzroce projektowe w architekturze.
    • Wzorzec MVC jako pierwszy wzorzec projektowy zastosowany w informatyce.
    • Wydanie książki “Design Patterns: Abstraction and Reuse of Object Oriented-Design”, napisanej przez tak zwany Gang Of Four (E. Gamma, R. Helm, R. Johnson, J. Vlissides)
    • Wzorce zdobywają popularność

  3. Analiza tego czym jest wzorzec na przykładzie wzorca Decorator oraz wzorca Factory

  4. Przegląd najważniejszych wzroców projektowych (W sposób bardzo ogólny):

    • Wzorce konstrukcyjne
      • Factory
      • Factory method
      • Abstract factory
      • Singleton
      • Builder
      • Prototype
    • Wzorce strukturalne
      • Adapter
      • Bridge
      • Composite
      • Decorator
      • Facade
      • Flyweight
      • Proxy
    • Wzorce czynnościowe
      • Chain of responsibility
      • Command
      • Interpreter
      • Iterator
      • Mediator
      • Memento
      • Observer
      • State
      • Strategy
      • Template
      • Visitor

  5. Wzorzec MVC oraz HMVC - wyrafinowane wzorce stosowane do budowania eleganckiej architektury interfejsu użytkownika .

Bibliografia:
  • Cooper J. W. (2000) , Java. Wzorce Projektowe, Gliwice
  • Deepak A., Crupi J., Malks D. (2003), CORE J2EE. Wzorce projektowe, Gliwice
  • www.mindview.net - strona Bruce Eckel'a na której można znaleźć "Thinking in patterns"
  • Lea D., Christopher Alexander: An Introduction for Object-Oriented Designers,
  • Buschman F. Meunier R. (1996), Pattern Oriented Software Architecture: A system of Patterns. New York
  • Gamma E., Helm R., Johnson R., Wlissides J. (1994),Design Patterns: Abstraction and Reuse of Object Oriented-Design
  • Sherman A., Brown K., Woolf B. (1998), The Design Patterns Smalltalk Companion, Massachusetts
  • Pree W. (1995), Design Patterns for Object-Oriented Software Development. Massachusetts
  • Coplien J. O., Shmidt D. (1995), Pattern Languages of Program Design, Massachusetts