Stan (wzorzec projektowy)

Stan – czynnościowy wzorzec projektowy, który umożliwia zmianę zachowania obiektu poprzez zmianę jego stanu wewnętrznego[1]. Innymi słowy – uzależnia sposób działania obiektu od stanu w jakim się aktualnie znajduje[2].

Przykład zastosowania

Rozważmy aplikację, której zadaniem jest rysowanie różnych obiektów za pomocą różnych komponentów. Aplikacja taka może posiadać abstrakcyjny interfejs reprezentujący narzędzie do rysowania implementowany przez klasy konkretnych narzędzi. Klasa główna będzie wywoływać odpowiednie narzędzie do rysowania - w zależności od tego w jakim będzie stanie. W sekcji przykłady znajduje się przykładowy kod rozwiązujący powyższy problem.

Konsekwencje

Do plusów korzystania z tego wzorca należy możliwość łatwego dodawania kolejnych narzędzi.

Przykłady

Zobacz też

Przypisy

  1. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides: Inżynieria oprogramowania: Wzorce projektowe (Wyd. II). Warszawa: WNT, 2008, s. 371. ISBN 978-83-204-3472-9.
  2. Opis wzorca na stronie SourceMaking.

Bibliografia

  • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides: Inżynieria oprogramowania: Wzorce projektowe (Wyd. II). Warszawa: WNT, 2008, s. 371-381. ISBN 978-83-204-3472-9.

Linki zewnętrzne