In this chapter we looked at three case studies to see how we can use Swift with the protocol-oriented programming paradigm and how to use design patterns to create easy-to-maintain and very flexible applications. If you worked through the designs yourself and your design was different from the ones we presented here, that is OK. There are many correct answers for each of the problems. The key is to make sure your applications are designed to be easily maintained and very flexible.
As an architect, your focus should not only be on meeting the requirements of your framework or application but also on making your code base easy to maintain and expand to meet future requirements. Using a programming paradigm such as protocol-oriented programming and emphasizing the use of design patterns in our application's design can help us meet these requirements.