Geração Automática de APIs REST a Partir de um Modelo Aberto de Descrição de Serviços

  • Bruno Cesar Batista UENP
  • Wellington Aparecido Della Mura UENP

Resumo


Em virtude da necessidade de interoperabilidade entre um ecossistema de tecnologias, o uso de Interface de Programação de Aplicações (API) se tornou muito estimado entre os desenvolvedores. Estas interfaces, na grande maioria, utilizam de funcionalidades comuns no desenvolvimento que ocupam tempo dos desenvolvedores com retrabalho. Este trabalho implementa uma ferramenta, capaz de gerar código baseado nos princípios da arquitetura limpa. A partir de uma documentação interativa, que faz referência aos atributos e recursos necessários para o problema em questão, um interpretador pode gerar código com uma grande parte da base do sistema implementada (declaração de atributos e funcionalidades comuns). O código tem como objetivo otimizar o tempo de desenvolvimento auxiliando as equipes desenvolvimento, além de fornecer um código baseado em arquitetura limpa que permite uma enorme robustez e facilidade de manutenção. O código gerado é implementado em conformidade com os critérios imposto pelo padrão REST.

Palavras-chave: Arquitetura limpa, REST API, Geração de código

Referências

D. e. a. JACOBSON, APIs: A Strategy Guide. O'Reilly Media Inc, 2012.

B. e. a. JIN, Designing Web APIs: BUILDING APIS THAT DEVELOPERS LOVE. O'Reilly Media Inc, 2018.

S. PATNI, Pro RESTful APIs: Design, Build and Integrate with REST, JSON, XML and JAX-RS. Apress, 2017.

M. MASSÉ, REST API Design Rulebook: Designing Consistent RESTful Web Service Interfaces. O'Reilly Media Inc, 2011.

R. S. PRESSMAN, Engenharia de Software: Uma Abordagem Profissional. AMGH Editora Ltda, 2011.

R. C. MARTIN, Arquitetura Limpa: O Guia do Artesão para Estrutura e Design de Software. Alta Books, 2019.

S. Bhartiya. (2022, sep) How netflix built spinnaker, a high-velocity continuous delivery platform. [Online]. Available: [link].

A. LAURET, The Design of Web APIs. Manning Publications Co, 2019.

I. SOMMERVILLE, Engenharia de Software. PEARSON, 2011.

G. e. a. BOOCH, UML: Guia do Usuário. Elsevier Editora Ltda, 2012.

L. e. a. BASS, Software Architecture in Practice. PEARSON, 2013.

F. J. e. a. BUDINSKY, "Automatic code generation from design patterns," 1996.

Z. HEMEL, Code Generation by Model Transformation: A Case Study in Transformation Modularity. ICMT, 2008.

V.-H. et al, Automatic Code Generation from a UML model to IEC 61131- 3 and system configuration tools. ICCA, 2005.

S. TIOBE, "Tiobe, the software quality company," TIOBE, Tech. Rep., Setembro 2021. [Online]. Available: https://www.tiobe.com/tiobe-index/

R. SEBESTA, Conceitos de Linguagens de Programação. Bookman, 2011.

S. SCHWICHTENBERG, From Open API to Semantic Specifications and Code Adapters. IEEE 24th International Conference on Web Services, 2017.

L. LAZZARIN, Uma Visão Geral de Frameworks PHP Populares para Programação Web. Ciências Exatas e da Terra e a Dimensão Adquirida através da Evolução Tecnológica, 2019.
Publicado
02/11/2022
BATISTA, Bruno Cesar; DELLA MURA, Wellington Aparecido. Geração Automática de APIs REST a Partir de um Modelo Aberto de Descrição de Serviços. In: CONGRESSO LATINO-AMERICANO DE SOFTWARE LIVRE E TECNOLOGIAS ABERTAS (LATINOWARE), 19. , 2022, Evento Híbrido. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2022 . p. 69-78. DOI: https://doi.org/10.5753/latinoware.2022.228057.