This guide encompasses best practices and recommended architecture for building robust, high-quality apps
- RxSwift : Rx is a generic abstraction of computation expressed through Observable interface, which lets you broadcast and subscribe to values and other events from an Observable stream
- Alamofire : Alamofire is an HTTP networking library written in Swift
- Kingfisher : Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web. It provides you a chance to use a pure-Swift way to work with remote images in your next app.
- Resolver : An ultralight Dependency Injection / Service Locator framework for Swift 5.x on iOS
There are 3 main modules to help separate the code. They are Data, Domain, and Presentaion.
- Data contains Local Storage, APIs, Data objects (Request/Response object, DB objects), and the repository implementation.
- Domain contains UseCases, Domain Objects/Models, and Repository Interfaces
- Presentaion contains UI, View Objects, Widgets, etc. Can be split into separate modules itself if needed. For example, we could have a module called Device handling things like camera, location, etc.
Default Search | Search keyword (ex: flo) |
---|---|