DesignPatternsProject

EXPLANATION ON UTILIZED DESIGN PATTERNS

Observer pattern

Displayer is loosely coupled with services , services send information to displayer with update when necessary , there is no other relationship between them

Singleton pattern

All watches must use same object for same service, so singleton must be used . Services are unique classes . They cannot be defined externally

Decorator pattern

The displayer can be decorated with the decorator class and they can gain additional features . For example weather displayer add show weather feature to current displayer.

Strategy pattern

Each watch contains a displayer , this displayer can be changed at runtime and this displayer provides extra features

UML CLASS DIAGRAM image