Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rajagp/iOS_MVC_MVP_MVVM_SampleApp
Sample Application demonstrating the MVC, MVP and MVVM architecture patterns on iOS
https://github.com/rajagp/iOS_MVC_MVP_MVVM_SampleApp
Last synced: 9 days ago
JSON representation
Sample Application demonstrating the MVC, MVP and MVVM architecture patterns on iOS
- Host: GitHub
- URL: https://github.com/rajagp/iOS_MVC_MVP_MVVM_SampleApp
- Owner: rajagp
- License: mit
- Created: 2017-01-12T19:18:33.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2017-06-22T22:02:20.000Z (over 7 years ago)
- Last Synced: 2024-06-06T14:34:12.750Z (8 months ago)
- Language: Swift
- Homepage:
- Size: 5.01 MB
- Stars: 84
- Watchers: 6
- Forks: 21
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ios-architecture - iOS_MVC_MVP_MVVM_SampleApp
README
# Overview
This repo includes a sample application that demonstrates the MVC, MVP and MVVM architecture patterns on iOS.
- Xcode 8.3
- Swift 3.2The application accepts search criteria from the user and pulls in movie data using the OMDb service based on the seatch criteria. The results are displayed in the app and the user can get more details on a specific title.
- The OMDb API:https://www.omdbapi.com
- The unit test coverage is not complete but is is enough to get started. When running in test mode, the requests are stubbed out and responses returned from a local file bundled in the app.![](http://www.priyaontech.com/wp-content/uploads/2017/01/moviedemo.gif)
# Details
An overview of the patterns is available at http://www.priyaontech.com/2017/01/mvc-mvp-and-mvvm-patterns-on-ios/
There is also a PDF document (iOS_MVP_MVVM_Patterns.pdf) available in this repo that provides details on how the patterns are implemented in the context of the sample app.# Repo Structure
* The *mvc folder* contains the Model View Controller (MVC) version of the app
* The *mvp folder* contains the Model View Presenter (MVP) version of the app
* The *mvvm folder* contains the Model View View Model (MVVM) version of the app# Build
To query against the OMDb DB, you would have to get an API Key from https://www.patreon.com/posts/api-is-going-10743518
Once you receive the key, please update the `ServerManagerRequestRouters.swift` to return the right API Key :
```
static var apiKey:String {
return <#Get Key from https://www.patreon.com/posts/api-is-going-10743518 #>
}
```
# License
MIT License. See LICENSE for details.