Design pattern- VIPER
Anoniem
VIPER(VIEW INTERACTOR PRESENTER ENTITY ROUTER) View- View is responsible for mirroring the actions user makes with an interface Interactor — contains business logic related to the data (Entities) or networking, like creating new instances of entities or fetching them from the server. For those purposes you’ll use some Services and Managers which are not considered as a part of VIPER module but rather an external dependency. Presenter — contains the UI related (but UIKit independent) business logic, invokes methods on the Interactor. Entities — your plain data objects, not the data access layer, because that is a responsibility of the Interactor. Router — responsible for the segues between the VIPER modules.