Simple VIPER implementation demo
This is the simplest approach to show VIPER pattern. Demonstrates switching between two Views.
Focus on references between objects(Presenter, View, Router) and show how everything initialise, connected and de-initialise.
Protocols
Delegates
Console output:
openButtonClicked
SomeRouter was asked to showSecond()
Configurator init
Presenter init(viewcontroller:)
Presenter.viewcontroller - weak -> viewcontroller
Interactor init(presenter:)
Interactor.presenter - weak -> presenter
Router init(viewController:)
Router.viewController - weak -> viewController
ViewController -> presenter
Presenter.router -> router
Presenter.interactor -> interactor
Presenter closeClicked()
SecondViewController viewWillDisappear(:)
SecondViewController viewDidDisappear(:)
Presenter deinit
Interactor deinit
Router deinit
Configurator de-init