Sobre la arquitectura de aplicaciones de iOS

May 10 2022
Un breve artículo de opinión.
He visto innumerables tweets e historias últimamente sobre la arquitectura de aplicaciones de iOS. He sido un gran fanático de probar una nueva arquitectura en iOS, y en el pasado trabajé con una arquitectura similar a Redux / TCA porque creo que el flujo de datos unidireccional es la única forma de tener una base de código buena y sólida.
Foto de Pierre Châtel-Innocenti en Unsplash

He visto innumerables tweets e historias últimamente sobre la arquitectura de aplicaciones de iOS. He sido un gran fanático de probar una nueva arquitectura en iOS, y en el pasado trabajé con una arquitectura similar a Redux / TCA porque creo que el flujo de datos unidireccional es la única forma de tener una base de código buena y sólida.

Glose en iOS está construido usando Redux (para que podamos compartir la decisión de la arquitectura entre los clientes frontend, iOS y Android), y he creado varias aplicaciones de código abierto como MovieSwiftUI usando una arquitectura similar a Redux (y lite) para SwiftUI:

Pero con mi trabajo reciente de SwiftUI en la aplicación Medium y algunos otros proyectos de código abierto, he llegado a algunas conclusiones:

  • SwiftUI le permite crear un sistema autónomo muy potente con muy poca cantidad de código.
  • SwiftUI ofrece un flujo de datos muy limpio, está integrado y es fácil de entender.
  • Realmente ya no quiero agregar repetitivo sobre SwiftUI porque es tedioso y la mayoría de las veces innecesario. Y crea fricciones innecesarias cuando se incorporan nuevos ingenieros al equipo.
  • Puedo lograr una arquitectura muy limpia, tanto comprobable como mantenible con clean & barebone MVVM.

Entonces, la próxima vez que inicie una aplicación SwiftUI y se pregunte qué arquitectura debe usar. Pruebe una arquitectura MVVM simple, cree vistas pequeñas, modelo de vista pequeña, todo privado, use el objeto Estado , Publicado , Observado y Observable . Si necesita algo disponible para toda su aplicación, cree un EnvironmentObject e inyéctelo en el nivel de la aplicación. Estos son solo algunos ejemplos

¿Viste la gran documentación de flujo de datos de Apple ?

Aquí están los 3 mejores videos absolutos de WWDC que necesita ver sobre el flujo de datos de SwiftUI y los mecanismos subyacentes:

Créame, una vez que haya terminado con esos videos, literalmente tendrá esto sobre su cabeza.

© Copyright 2021 - 2022 | unogogo.com | All Rights Reserved