¿Cuáles son los pros y los contras del patrón coordinador en iOS?

En cuanto a cada patrón, lo mejor que puede hacer es hacerse la pregunta “¿es útil en mi contexto?”, Como en “no aplicar patrones a ciegas”. ¿Su aplicación maneja cientos de vistas diferentes? ¿O solo tiene dos vistas? Si estás en el último caso, probablemente no quieras usar un Coordinador.

No tengo ninguna muestra de código para compartir, pero aquí hay algunas ventajas:

  • En iOS, AppDelegate y ViewControllers son notoriamente grandes (lo que yo llamo “objetos de Dios”), Coordinator es una forma de eliminar todos los elementos de navegación
  • Es más fácil cambiar la forma en que navega en el camino (cambio de animación o pasar de una inserción estándar a una modal)
  • Compartir código de navegación tiene algunas ventajas obvias

Contras:

  • Cuidado con la gestión de la memoria. Si almacena los controladores “tal cual” en su Coordinador, puede tener problemas.
  • Si realmente desea compartir código, es posible que tenga que trabajar en las firmas de métodos comunes. De lo contrario, puede tener un coordinador con 10 formas de comenzar la misma página.
  • A veces, tener todo el código en un solo lugar es más legible.

En pocas palabras, te sugiero que lo pruebes y veas cómo te funciona. No hay ningún gran riesgo al usar un coordinador, y cambiar de nuevo no debería ser demasiado doloroso de todos modos.