Free Market Selection Process Test
Prueba Proceso de Seleccion Mercado Libre
(Xcode Version 13.0, iOS 15)
Caracteristicas de la App
HOME
En esta seccion se maneja la funcionalidad de busqueda al crear un UiSearchController como barra en la parte superior de la pantalla, tambien se muestra el resultado del llamado del servicio al presentar una lista de los productos y por ultimo al seleccionar uno de los items este presenta la pantalla de detalle
DETAIL
Arquitectura
VIEW
protocol HomeViewProtocol: AnyObject {
var interactor: HomeInteractorProtocol? { get set }
var router: HomeRouterProtocol? { get set }
func displayItems(_ viewModel: HomeViewModel)
func displayError(_ error: String)
}
INTERACTOR
protocol HomeInteractorProtocol: AnyObject {
var presenter: HomePresenterProtocol? { get set }
var worker: HomeWorkerProtocol? { get set }
func doLoadData(_ query: String)
}
PRESENTER
protocol HomePresenterProtocol: AnyObject {
var homeViewController: HomeViewProtocol? { get set }
func presentAllItems(_ searchQUery: SearchQuery)
func presentError(error: Error)
}