Una aplicación de chat de iOS escrita después de una arquitectura Viper y BDD
Con este proyecto, me gustaría reunir todas las mejores prácticas que pueda encontrar cuando trabajo con una arquitectura Viper y un enfoque BDD. Viper es la implementación de la arquitectura limpia del tío Bob, y empuja el SRP (principio de responsabilidad única) al límite . Aunque funciona a la perfección en aplicaciones lineales y simples, siempre hay casos en los que Viper no encaja perfectamente sin pensar un poco más: comunicaciones entre módulos o contenedores de vistas de trabajo como UipageViewControllers, UitabBarControllers o menús de hamburguesas. La inyección de dependencia es otro desafío, particularmente para aquellos casos en los que un servicio se reutiliza en diferentes módulos de la aplicación.
Aquí puede encontrar una presentación de una charla que di sobre Viper y BDD: https://robertogarrido.com/wp-content/uploads/2017/06/clean-architectures-and-bdd-on-ios-github.pdf
Aquí puede encontrar una lista de lecturas interesantes sobre Viper y BDD:
Patrones de arquitectura iOS: https://medium.com/ios-os-x-development/ios-architecture-patterns-ecba4c38de52
APLICACIONES DE IOS ARQUITECTOS CON VIPER: https://www.objc.io/issues/13-architecture/viper/
Arquitectura de aplicaciones móviles con (b) módulos Viper: un enfoque de ingeniería estructurado para grandes aplicaciones móviles: http://digital.travelport.com/blog/architecting-mobile-apps-with-bviper-modules
Arquitectura Viper: nuestras mejores prácticas para construir una aplicación como un jefe: https://cheesecakelabs.com/blog/best-practices-viper-architecture/
Arquitectura del proyecto iOS: Uso de Viper: https://cheesecakelabs.com/blog/ios-project-architecture-using-viper/
Ingeniería La arquitectura detrás de la nueva aplicación de Uber: https://eng.uber.com/new-rider-app/
Soy Roberto Garrido, un desarrollador independiente de iOS disponible para contratar en mi sitio web: https://robertogarrido.com