Design Patterns
Design Patterns
Upon starting this project, our team was adamant that we should adhere to web standards and design patterns as this may assist us in development and future progress. The following design patterns were implemented by our group, provided with their relevant system element and a brief description.
Design Pattern | Description | Relevant System Element |
---|---|---|
Extensibility Pattern | This design patterns takes into the consideration the possibility of future growth. When the schema is developed further with new functionality extended, the extensibility pattern will ensure that the system’s core data flow and internal structure will not be affected to such an extent that it will change the system’s behaviour. | Schema |
Chain of Responsibility Pattern | This ensures the prevention of more than one object handling a request. There is a chain of processing objects where each object can handle certain requests. The requests will travel down the chain of processing objects until it finds one that can handle it. | API Request Handling |
Scheduled Task Pattern | Scheduled task patterns ensure that operations are performed at specific points in the future. The operations are controlled by scheduler object that keeps track of them and ensures they’re achieved. Particularly useful in real-time systems. | Dataset Retrieval |
REST API Pattern | Separating your API into logical resources is a key feature of the REST API design pattern, with these resources being manipulated using specific HTTP requests. This will lead to a well designed API that can easily be understood and used by developers. | Backend API |
MVC Pattern | MVC is Model-View-Controller pattern. Models are templates of data that can only be accessed or edited by controllers. Views are user interface based code that allows access to functions that manipulate data through the assistance of the Controller classes. | Smartwatch Application & Smartphone Background Service |