v3.0 (c) 2022 Infusiones de grandeza - Escrito por: Eric Crichlow
IOGINFRASTRUCTURE es un marco diseñado para facilitar las tareas comunes y mundanas del desarrollo de aplicaciones móviles, como las comunicaciones de back-end, la persistencia de los datos y la inflación de los objetos comerciales. Junto con ellos, también ayuda con la gestión de bloques de código, generalmente relacionados con las comunicaciones de back-end, que inicialmente fallan y necesitan ser intentados nuevamente, ya sea hasta que tengan éxito, o hasta que fallen suficientes veces que la aplicación deja de intentarlo. Esto se conoce como gestión de reintento.
La mayoría de estas funciones ya existen en marcos bien establecidos, entonces, ¿por qué introducir una nueva?
Dos razones. Uno, la mayoría de los marcos existentes son extremadamente grandes, incluso se podría decir, hinchado, ofreciendo mucha más funcionalidad y flexibilidad de lo que la mayoría de las aplicaciones necesitan y, lo que es más importante, este marco está implementado y disponible para iOS y Android, de modo que una aplicación que debe desarrollarse para ambas plataformas puede utilizar el mismo marco para la misma compatibilidad para la funcionalidad básica, lo que acelera significativamente el desarrollo de ambos códigos, es lo que puede utilizar el mismo marco de la línea de compatibilidad básica, lo que puede acelerar el desarrollo de la misma línea, lo que puede acelerar el desarrollo de ambos. Implementación de aplicaciones nativas, que no dependen de las tecnologías multiplataforma clucky.
Versión 1.1: Lanzamiento público inicial
Versión 2.0: Agrega almacenamiento seguro, URL base de API múltiples, tipos de solicitud de datos personalizados y iogDataObject codible; Cambiado de objetos de recolección de cimientos a objetos de recolección nativos Swift; Limpiar advertencias
Versión 3.0: Cambiar a un proyecto Swift Package Manager; Soporte agregado para GraphQL; Soporte agregado para DOCC
iOS 13.0
MacOS 10.10
tvos 13.0
Watchos 7.0
Esta es la clase que maneja el almacenamiento de datos. Admite dicho almacenamiento en memoria, en valores predeterminados del usuario o en un archivo. Admite almacenar datos de forma segura (cifrado). Y permite que los datos se almacenen solo para la sesión actual, o tengan una fecha de vencimiento o sean permanentes.
Esta es la clase que maneja las comunicaciones de fondo. Maneja grandes conjuntos de datos devueltos en páginas y gestiona múltiples solicitudes simultáneas. Bajo la enumeración "iogDatarequestType" se definen los tipos de solicitudes que la clase admite. Esta es una conveniencia para que los clientes de la clase identifiquen a qué tipo de solicitud se está respondiendo. Agregue sus propias entradas a esta enumeración para sus propios tipos de solicitudes personalizadas.
Esta es la clase que maneja una solicitud única, y todos los detalles de solicitud y respuesta asociados con ella.
Esta es la clase que maneja la inflación de la clase de objetos comerciales. Se necesitan datos JSON que generalmente se devuelven de una llamada de back-end y las analizan en una clase definida para un objeto comercial específico.
Esta es la clase que los clientes subclase para crear objetos de datos comerciales personalizados con solo las propiedades específicas relevantes para el objeto comercial.
Esta es la clase que gestiona la ejecución retrasada y repetida de un bloque de código, lo que permite que la persona que llama determine cuándo se ha completado el flujo de trabajo y volver a intentar los intentos ya no son necesarios.
Esta es la clase que maneja las interacciones GraphQL. Inspecciona dinámicamente los objetos comerciales que son subclases de "IogGqldataObject" y crea cadenas de consulta y mutación para ellos, hace solicitudes al servidor GraphQL y devuelve objetos poblados o matrices de esos objetos. Según la enumeración "ioGGQLRequestType" se definen los tipos de solicitudes que admite la clase. Esta es una conveniencia para que los clientes de la clase identifiquen a qué tipo de solicitud se está respondiendo. Agregue sus propias entradas a esta enumeración para sus propios tipos de solicitudes personalizadas.
Esta es la clase que los clientes subclasean para crear objetos de datos comerciales GraphQL personalizados con solo las propiedades y mutaciones específicas relevantes para el objeto comercial.
Instalar usando la opción de menú de archivo Xcode "Agregar paquetes ..."
Referencia al paquete usando esta URL: https://github.com/ecrichlow/ioginfastructure-ios.git
En cuanto a utilizar las clases contenidas en este proyecto, la forma más fácil de aprender a usarlas es observar las clases de prueba unitaria. Dan grandes detalles sobre cómo realizar cada función.
Cabe destacar que las clases IOGDATAmanager, IegretryManager y IOGGQLManager admiten respuestas de transmisión a múltiples delegados y, por lo tanto, se proporcionan "RegistroDelegado" y "UnregisterDelegate" métodos para cada clase.
IOGPERSISTENCEMAGER solo puede de forma segura (encriptadas) cadenas de tiendas.
Se pueden enviar preguntas o sugerencias a [email protected]
Copyright (c) 2018 Infusiones de grandeza
Licenciado bajo la licencia Apache, versión 2.0 (la "licencia"); No puede usar este archivo, excepto de conformidad con la licencia. Puede obtener una copia de la licencia en
http://www.apache.org/licenses/license-2.0
A menos que la ley aplicable sea requerida o acordado por escrito, el software distribuido bajo la licencia se distribuye de manera "como es", sin garantías ni condiciones de ningún tipo, ya sea expresas o implícitas. Consulte la licencia para los permisos y limitaciones de rigor de idioma específico bajo la licencia.