Application of protocol-oriented programming in iOS development
Vo, Tung Duc (2019)
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2019052611937
https://urn.fi/URN:NBN:fi:amk-2019052611937
Tiivistelmä
There has always been a demand for better approach to build scalable and extensible software for tech companies and communities. For Cocoa developers, architectural design pattern is one of the most popular topics in tech blogs, talks and events. Since the introduction of Swift and protocol-oriented programming paradigm, Cocoa developers have another option to build better software.
This study aims to clarify the concepts of protocol-oriented programming and its advantages over its counterpart, object-oriented programming, for building software using Swift language. Moreover, this study also presents different techniques and practices for improving the scalability and maintainability of the software. The thesis also introduces how to use Model-View-View Model architectural design pattern as a replacement of the traditional Model-View-Controller.
The project used to demonstrate the mentioned techniques is written in Swift and developed for iOS devices. Created solely for the purpose of this thesis, the application is not published in Apple App Store. However, the project is open-source and can be found in Github.
Overall, the main purpose of the thesis is to recommend a collection of techniques, together with protocol-oriented design that can be used to create better software.
This study aims to clarify the concepts of protocol-oriented programming and its advantages over its counterpart, object-oriented programming, for building software using Swift language. Moreover, this study also presents different techniques and practices for improving the scalability and maintainability of the software. The thesis also introduces how to use Model-View-View Model architectural design pattern as a replacement of the traditional Model-View-Controller.
The project used to demonstrate the mentioned techniques is written in Swift and developed for iOS devices. Created solely for the purpose of this thesis, the application is not published in Apple App Store. However, the project is open-source and can be found in Github.
Overall, the main purpose of the thesis is to recommend a collection of techniques, together with protocol-oriented design that can be used to create better software.