¿Qué incluye una arquitectura de aplicación iOS?

No es nada como una arquitectura de aplicación web.

Claro, como cualquier software, hay un “front end” y un “back end”. Pero incluso la aplicación web más simple requiere una serie de decisiones: considere una aplicación LAMP: ha decidido que una caja de Linux ejecutará apache y servirá respuestas HTTP basadas en el código PHP que accede a una base de datos MySQL. ¡Y tal vez en el lado del cliente esté usando un marco Javascript!

Pero cualquier aplicación web popular es más complicada que eso, porque debes asegurarte de que la aplicación se escala y se ejecuta todo el tiempo cuando hay varios posibles puntos de falla. Por lo tanto, una arquitectura es necesaria.

iOS no es nada de eso. El usuario toca un trozo de vidrio y su dispositivo dibuja algo en la pantalla. La complejidad de la arquitectura se basa en las demandas de la aplicación: ¿puede el desarrollador salirse con la suya usando UIKit o necesita usar CoreAnimation / OpenGL? ¿Qué tan complicados son los datos en juego? ¿Deberían usar Core Data? Si se trata de una aplicación basada en medios, ¿qué marcos de video / audio / imagen deberían usarse, si corresponde? Etc.

Posiblemente, las únicas decisiones de arquitectura que deben tomarse son cómo interactúa una aplicación con un servidor back-end … pero esa es una arquitectura de aplicación web, no una arquitectura de aplicación iOS. Por lo general, un desarrollador de iOS que necesita diagramar una arquitectura de aplicación puede dibujar una flecha que apunte a “Cloud” y listo.