Application of Protocol-Oriented MVVM Architecture in iOS Development
Luong Nguyen, Khoi Nguyen (2017)
Luong Nguyen, Khoi Nguyen
Metropolia Ammattikorkeakoulu
2017
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201705239613
https://urn.fi/URN:NBN:fi:amk-201705239613
Tiivistelmä
The mobile application industry is fast paced. Requirements change, additions of new features occur on a daily basis and demand frequent code structure adjustment. Thus, a flexible and maintainable software architecture is often a key factor for an application’s success. The major objective of this thesis is to propose a practical use case of Protocol Oriented Model View View Model, an architecture inspired by the Protocol Oriented Programming paradigm.
This thesis explains the architecture concepts by analyzing the process of constructing a Protocol Oriented Model View View Model-oriented Swift application. Moreover, it indicates the uses of software development’s best practices in specific situations. Drawbacks of modern architecture like Model View Controller are also addressed.
The main product of this thesis is a fully functional iOS application written in Swift. Also, for learning purposes, parts of the application’s code base are extracted, modified and can be freely used under the MIT license.
In conclusion, the thesis exhibits how a well-design architecture could affect the over- all quality of an application, especially in terms of maintainability. It also encourages a best-practice minded approach in software development and further studies toward the practical use of the Protocol Oriented Model View View Model architecture.
This thesis explains the architecture concepts by analyzing the process of constructing a Protocol Oriented Model View View Model-oriented Swift application. Moreover, it indicates the uses of software development’s best practices in specific situations. Drawbacks of modern architecture like Model View Controller are also addressed.
The main product of this thesis is a fully functional iOS application written in Swift. Also, for learning purposes, parts of the application’s code base are extracted, modified and can be freely used under the MIT license.
In conclusion, the thesis exhibits how a well-design architecture could affect the over- all quality of an application, especially in terms of maintainability. It also encourages a best-practice minded approach in software development and further studies toward the practical use of the Protocol Oriented Model View View Model architecture.