All Projects → marty-suzuki → Iosdesignpatternsamples

marty-suzuki / Iosdesignpatternsamples

Licence: mit
This is Github user search demo app which made by many variety of design patterns. You can compare differences in MVC, MVP, MVVM and Flux.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Iosdesignpatternsamples

mvc-tree
🌳 A chronological visualization of the family of MVC patterns.
Stars: ✭ 40 (-93.57%)
Mutual labels:  mvc, mvp, mvvm, design-patterns
Ios Design Patterns
Learning ground for iOS Design Pattern included with sample projects for MVC, MVP, MVVM, and VIPER
Stars: ✭ 120 (-80.71%)
Mutual labels:  mvvm, mvp, design-patterns, mvc
Modelassistant
Elegant library to manage the interactions between view and model in Swift
Stars: ✭ 26 (-95.82%)
Mutual labels:  mvvm, mvp, mvc
Business Search App Java
Showcases object oriented programming in Java, Java Swing, Kotlin, and Android
Stars: ✭ 53 (-91.48%)
Mutual labels:  mvvm, mvp, design-patterns
ios-architecture-example
Architecture pattern simple examples in iOS. You can compare differences in MVC, MVP, MVVM-Delegate and MVVM-Rx for same feature
Stars: ✭ 16 (-97.43%)
Mutual labels:  mvc, mvp, mvvm
Ribs
Uber's cross-platform mobile architecture framework.
Stars: ✭ 6,641 (+967.68%)
Mutual labels:  mvvm, mvp, mvc
Swift Design Patterns
🚀 The ultimate collection of various Software Design Patterns implemented in Swift [Swift 5.0, 28 Patterns].
Stars: ✭ 85 (-86.33%)
Mutual labels:  mvvm, design-patterns, mvc
Architecturesamplewithfirebase
これは、iOSアプリを色々なアーキテクチャで実装してみたものです。
Stars: ✭ 89 (-85.69%)
Mutual labels:  mvvm, mvp, mvc
Westore
更好的小程序项目架构
Stars: ✭ 3,897 (+526.53%)
Mutual labels:  mvc, mvp, mvvm
Ios Architectures
Sample app for iOS architectures
Stars: ✭ 90 (-85.53%)
Mutual labels:  mvvm, mvp, mvc
Android Firebase Kotlin Java Mvp Mvc Mvvm Chat
Simple chat Application with one to one connectivity using Firebase Real time Database written in MVC,MVP and MVVM architecture to better understand the android coding patterns. Purpose of writing same application functionality with 3 different pattern is to show how single application can be developed using 3 different patterns(Mvc, Mvp, Mvvm).
Stars: ✭ 180 (-71.06%)
Mutual labels:  mvvm, mvp, mvc
Androidarchitecture
Android Architecture using Google guides
Stars: ✭ 127 (-79.58%)
Mutual labels:  mvvm, mvp, mvc
Androidquick
做外包用的快速开发库--微信、支付宝支付(含签名,下单)、自定义View(验证码/密码,九宫格图片上传等)、换肤、图片预览、RxJava、EventBus、JetPack、CameraX、base层封装等
Stars: ✭ 565 (-9.16%)
Mutual labels:  mvvm, mvp, mvc
estore
Electronic Store Application - A web based application developed using PHP and Driven by MySQL Database
Stars: ✭ 48 (-92.28%)
Mutual labels:  mvc, design-patterns
mvp-sample
一个简单的MVP示例,和传统不一样的是,我们把Activity/Fragment作为Presenter,把View单独提出来,扩展了Presenter的能力。
Stars: ✭ 41 (-93.41%)
Mutual labels:  mvc, mvp
sirius
Modern coffeescript/javascript framework
Stars: ✭ 20 (-96.78%)
Mutual labels:  mvc, mvp
application
✨ Extra contrib to nette/application (@nette)
Stars: ✭ 23 (-96.3%)
Mutual labels:  mvc, mvp
Core-iOS-Application-Architecture
Core iOS Application Architecture - The development paradigm of clean, testable code and modular iOS applications. + Xcode templates
Stars: ✭ 123 (-80.23%)
Mutual labels:  mvc, mvp
puremvc-swift-multicore-framework
PureMVC MultiCore Framework for Swift
Stars: ✭ 17 (-97.27%)
Mutual labels:  mvc, design-patterns
MVVM
MVVM - POP & OOP
Stars: ✭ 13 (-97.91%)
Mutual labels:  mvp, mvvm

iOSDesignPatternSamples

This is Github user search demo app which made by many variety of design patterns.

Application Structure

  • SearchViewController... Search Github user with query.
  • UserRepositoryViewController... Show repositories of user who selected in SearchViewController.
  • RepositoryViewController... Show a repository which selected in UserRepositoryViewController or FavoriteViewController. In addition, add / remove favorite repositories on memory.
  • FavoriteViewController... Show favorite repositories which stored on memory.

Design Patterns

Difference between A to B

A / B MVC MVP MVVM Flux
MVC - diff diff diff
MVP - - diff diff
MVVM - - - diff

You can compare differences like this.

Run

You need to set Github Personal Access Token like this.

extension ApiSession {
    static let shared: ApiSession = {
        let token = "" // <- Your Github Personal Access Token
        return ApiSession(injectToken: { InjectableToken(token: token) })
    }()
}

Requirements

  • Xcode 12 or later
  • iOS 13 or later
  • Swift 5 or later

Special Thanks

Author

marty-suzuki, [email protected]

License

iOSDesignPatternSamples is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].