Header Ads Widget

Ticker

6/recent/ticker-posts

3 herramientas para generar bibliotecas de cliente automáticamente desde OEA

 

Para las empresas y los desarrolladores que distribuyen aplicaciones y API empaquetadas, proporcionar bibliotecas cliente se ha vuelto casi esencial. Una API, pública o privada, no es útil si los usuarios tienen dificultades para utilizarla. En consecuencia, estas bibliotecas proporcionan código que promueve el uso de API e impulsa proyectos. Como hemos destacado anteriormente , las bibliotecas cliente son un elemento central de la experiencia general del desarrollador. Para resumir algunos puntos clave, las bibliotecas cliente de API hacen lo siguiente:

  • Acelere el desarrollo y la integración de API.
  • Proporcionar codificación de procesos API por lenguajes de programación específicos.
  • Proporcione formato automático de tipos de datos para adaptarse a escenarios específicos.
  • Reduzca la probabilidad de que ocurran errores durante el uso.

Las herramientas de terceros son la clave para que esto suceda. Durante algún tiempo, OpenAPI Generator ha estado al frente y al centro en la mente de la mayoría de los desarrolladores. Sin embargo, quienes buscan alternativas tienen opciones en el mercado. ¿Está buscando generar automáticamente bibliotecas de cliente para sus propias API? Hemos reunido algunas herramientas notables que podrían hacer su vida de desarrollo mucho más fácil.

Generador de código de cliente de API REST

Encontrado en Visual Studio Marketplace , el generador de clientes de Christian Resma Helle se alinea bien con los archivos de especificación de OpenAPI y Swagger. Principalmente, permite la creación de bibliotecas de clientes y la generación de clientes utilizando herramientas como AutoRest, NSwag, Swagger Codegen y OpenAPI Generator. La herramienta también hace el trabajo pesado con actualizaciones: empuja automáticamente los cambios de código a los archivos generados, cuando cambian los archivos YAML o JSON existentes.

Client Code Generator incluye una colección de capacidades de generación de código para el lenguaje C #; funciona a la perfección con Visual Studio, un incondicional en el ámbito de IDE. Es una especie de herramienta de compilación, que combina múltiples funcionalidades del generador de bibliotecas en una sola pieza de software que lo abarca todo.

Además, el generador de código de cliente REST API incluye estas cuatro herramientas principales:

  • AutoRestCodeGenerator : crea un cliente de API REST de un solo archivo en C # a través de AutoRest, reflejando lo que es posible a través de la herramienta CLI de AutoRest.
  • NSwagCodeGenerator : aprovecha el NSwag.CodeGeneration.CSharppaquete NuGet para crear un cliente de API REST de C # de un solo archivo.
  • SwaggerCodeGenerator : Realiza lo anterior a través de Swagger Codegen CLI v3.0.14. El archivo resultante surge de la combinación de todos los archivos generados mediante la CLI de Swagger Codegen.
  • OpenapiCodeGenerator : Realiza lo anterior a través de OpenAPI Generator v5.10, también como resultado de fusiones de archivos.

Tenga en cuenta que algunas dependencias son necesarias para utilizar esta herramienta. Dependiendo de su herramienta o lenguaje preferido, puede ser necesario instalar NPM y Java Runtime Environment. Las implementaciones alternativas de Java SDK se combinan bien aquí. RestSharp, Jsonsubtypes, Newtonsoft.Json o Microsoft.Rest.Client.Runtime son necesarios para ejecutar herramientas personalizadas específicas dentro de. La herramienta hace algunas suposiciones, pero el menú Configuración le permite sumergirse y configurar según sea necesario para extraer más de Client Code Generator. Por ejemplo, puede dictar cómo se manejan los paquetes NuGet o cómo se generan los archivos .nswag a partir de varios criterios.

El generador de código de cliente REST API es razonablemente popular en Marketplace. También recibe las mejores calificaciones, aunque a partir de un pequeño conjunto de reseñas. Si ya tiene experiencia con otras herramientas pero desea un cambio en el flujo de trabajo, esta herramienta podría ser la solución perfecta para usted.

Azure AutoRest

Imagen cortesía de Esteban Villegas, vía Stack Overflow .

Creado por Microsoft y mantenido por más de 120 colaboradores de GitHub, Azure AutoRest se anuncia a sí mismo como un generador de código OpenAPI . Básicamente, el programa sobresale en la generación automática de SDK de cliente en numerosos lenguajes, incluidos C #, PowerShell, Go, Java, Node.js, TypeScript, Python y Ruby. Eso cubre una franja masiva de desarrolladores, lo que convierte a AutoRest en una de las herramientas más agnósticas disponibles actualmente. AutoRest también es de código abierto, lo que significa que puede aprovechar y contribuir a su desarrollo. Goza de un respaldo significativo, lo que significa que no se abandonará pronto.

Acceder a los servicios REST es fácil desde una biblioteca generada por AutoRest. La herramienta se rige por el formato de especificación oficial de OpenAPI, que generalmente acelera el desarrollo al tiempo que hace que el proceso (y el producto final) sea altamente accesible. Como resume David Justice , AutoRest está destinado a evitar que los desarrolladores TENGAN que crear varias llamadas API y estructuras asociadas. Es una tediosa fuente de frustración que AutoRest contrarresta. La herramienta puede generar Swagger "genérico" según la especificación o generar bibliotecas de Azure Swagger más obstinadas. Esto último se aplica más a las propias API de Microsoft.

AutoRest funciona con archivos JSON dentro de Visual Studio, y las anotaciones se recogen a través de AutoRest según sea necesario. La regeneración del código del cliente es posible mediante la automatización. La herramienta es excelente para crear funciones de producción y probar componentes, lo que brinda a los desarrolladores múltiples formas de simplificar sus API para los usuarios finales. Es fácil especificar espacios de nombres, agrupaciones, recursos e incluso extensiones. Un grupo de operaciones orientado lógicamente se convierte rápidamente en una biblioteca cliente con una jerarquía clara.

Swagger Codegen

Imagen cortesía de Swagger .

Como colaborador directo de la especificación OpenAPI, SmartBear mantiene su propio generador de biblioteca cliente llamado Swagger Codegen . Mientras que algo como OpenAPI Generator es mantenido por la comunidad de desarrolladores, Swagger Codegen está respaldado por SmartBear, pero sigue siendo de código abierto. Si bien la herramienta genera rápidamente bibliotecas cliente en 40 idiomas diferentes, también se integra con SwaggerHub. Esto facilita la colaboración a través de la interfaz en la nube de la herramienta. Como beneficio adicional, puede generar código repetitivo del servidor en más de 20 idiomas diferentes (si le gusta eso), extendiendo la funcionalidad aún más.

Swagger Codegen promete impulsar el consumo de API sin dejar de estar continuamente actualizado. La herramienta es compatible con la especificación OpenAPI (OAS) 3.0 y superior, por lo que evoluciona a la par. Codegen todavía se mantiene, aunque no es el proyecto más activo que existe. La última iteración, la versión 3.0.25, se lanzó el 4 de marzo de 2021; su predecesor en la rama 3.0 debutó en diciembre de 2020. Querrá asegurarse de que cualquier problema existente no obstaculice notablemente su flujo de trabajo durante la generación de la biblioteca cliente.

Los usuarios deben tener instalado un tiempo de ejecución de Java 8+. Los usuarios de Windows deben instalar wgetcomo requisito previo o invocar una solicitud web de PowerShell para utilizar Codegen. SmartBear señala que se requiere Apache Maven 3.3.3+ $PATHpara comenzar. Las compilaciones de proyectos son posibles usando Homebrew o Docker. Al igual que otros generadores de bibliotecas, puede aprovechar el archivo Swagger Petstore para crear bibliotecas de muestra y tener una idea real de cómo funciona Codegen. Es fácil alterar la sintaxis y la compatibilidad con el idioma en Swagger Codegen. Simplemente toque el jmustachemotor para usar las plantillas de bigote, ya sea en stock o personalizadas a su gusto. También puede personalizar el generador y los formatos de archivo.

¿Quiere construir una biblioteca usando Javascript? El swagger-js-codegencomponente externo puede generar código fuente de nodo y angular desde la OEA.

Publicar un comentario

0 Comentarios