En el desarrollo de iOS, ¿puedo poner toda la capa del modelo en una API de red creada para la aplicación o también necesito usar modelos Swift? Si puedo hacerlo, ¿cuál es la mejor práctica (suponiendo que quiero un backend flexible que pueda expandirse a otras plataformas)?

Puede poner todo el modelo en una capa de red. Sin embargo, si su aplicación pierde la conexión de red, no funcionará. Si es un lugar donde la red es lenta, su aplicación será lenta.

Si su aplicación realmente está tratando con datos que Best vive en la nube, esto podría ser razonable, pero incluso si eso es cierto, es posible que desee un almacenamiento en caché más adelante, si puede asegurarse de no obtener datos obsoletos.

Alternativamente, podría estar mejor con un almacenamiento local completo y un motor de resincronización, pero eso siempre es difícil de escribir (lamentablemente, este es el caso más común porque las personas tienden a querer que los datos sean iguales entre múltiples dispositivos … y si pierden su teléfono actual, quieren que el nuevo tenga todas sus cosas, incluso si nunca configuraron ninguna copia de seguridad)

Si sus datos no tienen una buena razón para vivir en la nube, tendrá un rendimiento mucho mejor manteniéndolos locales, y no necesitará ninguna conectividad de red.