Architectures and design patterns

Practice for Week 6: 5 September

The lecture this week was about design, rather than code. The tutorial does not have worked-through activities like previous weeks. Please feel free to use this time to ask your tutor questions, to suggest topics for class discussion and to work on your assignment.

Whether or not you have completed Assignment 1, please open your Assignment files and browse through the code.

For each class in your project, decide:

  1. Which layer does the class belong to?
  2. What would need to be changed if you used a different data store (e.g., you'll use JPA instead of JDBC in Assignment 2)?
  3. What would need to be changed if you created a mobile or console interface?
  4. How could you improve the separation into layers?

In the deeper study, a number of design patterns were mentioned. Do you recognize any of these design patterns in your code?

  1. Catch up on any tutorials that you did not finish or did not understand.
  2. Work on Assignment 1: next week is your last chance to submit your assignment.
  3. Ask your tutor for help with problems in your Assignment.
  4. Ask your tutor to discuss, in the class, any questions about the course so far.