Swift 3: Integración con tecnologías backend

Documentación y herramientas para generar servicios REST

¡Prueba gratis durante 10 días

nuestros 1201 cursos !

Prueba gratis Mostrar modalidades de suscripción
En la actualidad, existen herramientas que nos ayudarían a crear la documentación de nuestros servicios para poder ahorrarnos la implementación y actualización de los parámetros y referencias. Vamos a ver cuáles son.

Transcripción

Una vez que ya estamos en la parte más importante de nuestro flujo de integración con el cliente y el servidor, que es la definición de nuestra API, necesitamos ciertas herramientas y ciertas formas para documentar cómo van a ser las llamadas, en dónde va a estar el "endpoint", cuántos ambientes vamos a tener, qué parámetros le tenemos que enviar, qué formatos nos va a devolver. Bueno, toda esa parte de la documentación es de las más importantes. Y, en este video, vamos hablar de cuáles son las herramientas que tenemos a nuestro alcance para poderlas utilizar. La primera y más sencilla es: escribe todo en Markdown. Markdown es un formato inventado por John Gruber, en donde vas a poder escribir en un archivo de texto plano, con un formato específico de Markdown, vas a poder escribir código, títulos, fuentes, respuestas y todo lo que necesites. En realidad, es un formato muy general. Sirve para escribir cualquier tipo de documento si por habitualmente lo exportas a PDF o HTML. Un cliente muy famoso y de los que utilizo todos los días para poder estar escribiendo Markdown en mi Mac es MacDown. MacDown es este cliente, donde vas a poder escribir código o cualquier tipo de formato y vas a poder sacar la documentación según la vayas necesitando. Este es un formato de propósito general. Sirve para hacer cualquier tipo de documentación, no es específico de una API, pero te puede ayudar muchísimo si tu equipo todavía no tiene una herramienta de documentación. Hay herramientas de documentación que son más específicas. Pero si lo que estás buscando es rapidez y una forma muy sencilla de poderlo utilizar, te recomiendo muchísimo Markdown. ya que es un formato bastante aceptado. Por otro lado, tenemos también proyectos como Slate. Slate es un documentador. Básicamente, escribes el formato en Slate y te va dando una estructura general, un sitio de documentos estáticos, en donde puedes ir colocando cuáles van a ser tus peticiones, cómo van a ser tus parámetros, cómo van a ser tus respuestas e incluso cada uno de los ejemplos para tus diferentes clientes. Tiene diferentes características, pero lo más importante es que es un proyecto muy estable, el cual puedes utilizar en tus proyectos a la hora de documentarlos. Ahora, este tipo de proyectos en realidad no tienen injerencia con el lenguaje o la plataforma en la cual estés programando el "back-end" o los clientes. Es simplemente para documentar. Pero esta parte es tan importante porque vas poder estar utilizando diferentes clientes en diferentes lenguajes. Y mientras estén cumpliendo este contrato, tanto del lado del "back-end" como de lado del "front-end", vas a poder estar generando la documentación y agregando más tecnologías a tu sistema. Otro podría ser apiDoc. apiDoc es un conjunto de herramientas que te van a permitir integrar tu código —literalmente, —la documentación va a estar encima de tus métodos— ¿Cómo se integra tu proyecto a la documentación? Lo único que va a hacer es ir y leer todo tu proyecto para empezar a generar la documentación según la vayas necesitando. Igual, va a generar documentos y un sitio HTML con páginas estáticas. También existe por aquí una lista muy útil que encontré. Esta lista se llama "beautiful-docs" y, básicamente, lo que tiene es una lista de proyectos que te van a ayudar a documentar tus API y tus "endpoints" para cualquier tipo de sistema. Ahora, vamos a algo más avanzado. ¿Qué pasa si quiero que mi herramienta me diseñe mis clientes? Para eso tenemos Swagger. Swagger es una herramienta con la que puedo escribir, tal cual, cómo necesito mis métodos, cómo necesito mis "queries" para mi cliente de API. Y con esto, sacar una biblioteca para poder generar el cliente. Lo va a hacer en diferentes lenguajes. Pero lo más importante es que vas a definir, por un lado, cómo quieres tus peticiones y tus respuestas. Te va a generar la documentación y te puede generar, incluso hasta los clientes. Otra herramienta que hace lo mismo se llama Apiary. Apiary en realidad es un servicio que te va a permitir colocarlo por ambiente, de una manera más estructurada y muchísimo más robusta. También existe Blueprint. Blueprint es otra herramienta que nos va a ayudar a escribir cómo necesitamos nosotros nuestras peticiones y nos va a generar la documentación de manera automática. Esta documentación va a ser muy rápida y sencilla y es una de las más ligeras de todas. La que me gusta más a mí, pero para ser sincero es una de las más completas y vastas, es RAML. RAML es un conjunto de herramientas entres la que tiene un editor, un diseñador de API. Este diseñador de API hace que escribes en un formato YML; le vas colocando el título, la versión, los tipos y después cada uno de los servicios que vas a estar utilizando De ahí que coloques si es seguro, si es un método "get", cuáles son las respuestas, qué tipo serán lo que acepta de respuesta y lo que va a estar enviando en las peticiones y nos va a estar generando la documentación. Además, hay bibliotecas que leen este tipo de archivos y generan el código de Swift, generan el código de Java o generan en el código de Ruby. Esta herramienta es una de las más poderosas que conozco. MuleSoft es quien ha creado la herramienta y de verdad que es muy buena para documentar. Es muy estructurada, pero necesitas saber mucho de la sintaxis. Por otro lado, puedes utilizar programas como Insomnia, que es un cliente, en donde puedes estar generando todas las peticiones y ver cuál es la respuesta de los servidores. Este cliente lo que hace es una aplicación de escritorio que hace las peticiones. En vez de hacerlas con la línea de comandos, las hace en un ambiente bonito, en un ambiente donde puedas estar viendo cómo se serializan, cuáles son las respuestas, los encabezados y los tiempos. Hay varias herramientas para esto. Otra herramienta que utilicé muchos años se llama Advanced REST client. Y es un plugin para Chrome. Básicamente hace lo mismo, pero lo hace dentro del navegador de Chrome. Colocas la URL, los parámetros y eso te va a ir entregando las respuestas de tus servicios. Ahora, nosotros vamos a utilizar una herramienta que se llama Postman. Postman es exactamente lo mismo, es un cliente para poder estar haciendo peticiones, pero este cliente puede ser totalmente independiente de tu navegador. Hace exactamente lo mismo. Hace las peticiones, pero tiene muy buen "parser" de JSON, de XML. Puede hacer tipo de peticiones de cualquiera de los verbos HTTP. Y nos va a permitir guardar estas colecciones en la nube. Por último, si te dedicas mucho a hacer integraciones con API de terceros, en lo personal utilizo Paw. Paw es una herramienta para Mac que es muchísimo más completa y grande para estar haciendo integraciones con clientes de terceros como, por ejemplo, Strive o como, por ejemplo, estar enviando peticiones a SendGrid o estar probando mi conjunto de servicios entre diferentes equipos. Tiene dos herramientas muy útiles. La primera es que puede generar un archivo con todas las peticiones. Y la segunda es que puede generar un repositorio en la nube, en donde puedes agregar equipos y todo tu equipo puede utilizar la misma configuración de las peticiones hacia el servidor. Maneja variables, ambiente, credenciales y diferentes tipos de autenticación Es una de las más completas y poderosas. Aunque de este tipo de herramientas hay muchísimas. Puedes seguirlas por el mercado y buscar todas las opciones que tienes disponibles. Lo más importante que hay que tener en cuenta es: vas a necesitar generar documentación y vas a necesitar un cliente para estarla probando. Este cliente va a simular tu aplicación de iOS o cualquier cliente que estés utilizando para "fronted". Analiza las opciones que tienes a tu alcance y elige la que más convenga a tu proyecto y a tu equipo.

Swift 3: Integración con tecnologías backend

Aprende a vincular tus aplicaciones web creadas con Swift 3 con el servidor, comienza a enviar información entre ambos y aprovecha esto al máximo dentro de tus sistemas.

3:08 horas (27 Videos)
Actualmente no hay comentarios.
 

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.