Please use this identifier to cite or link to this item: http://hdl.handle.net/10216/83505
Author(s): Filipe Perdigão de Sousa
Title: Criação de Framework REST/HATEOAS Open Source para desenvolvimento de APIs em NodeJS
Issue Date: 2015-07-20
Abstract: The appearing of the REST, Representational State Transfer, an architectural pattern, came to improve the development context of web services with an alternative for implementation of computer distributed systems, attempting that, through a simple way, it was possible to develop an API, Application Programming Interface, for communication between the system's components, particularly between the server and the different available clients.Allied to this fact, there were so many implementations, compatible with various programming languages, like Java, Python, Ruby, Scala, JavaScript, and others, in order to provide developers a easy way to implement their services, attending this architecture. Nowadays Node.js technology is highly used for web applications development, in particular for the implementation of this type of services. The theme of this dissertation appears in this context, the development of a Node.js framework which allows to offer creators of this kind of service a way to create REST APIs following the best practices and technology trends of language and community involved, thus offering a technologically competitive solution.As one of the main objectives and innovation points, the framework intends to give developers the ability to follow the standards and recommended restrictions for such services from an almost transparent way, allowing that easily and automatically some concepts are instilled providing the services development as correctly as possible. Despite the features that are automatically instilled in services, the framework also aims to offer to programmers some technological freedom, allowing them to make their own decisions about some components required for the service.Another main objective is the capability of services implementation that allows the integration with applications developed in a NoBackend approach, in which the backend tasks are abstracted in the development of respective clients. This feature also allows the automatically generation of client code that can be included in their clients.Moreover, this dissertation also has as an objective, the development of a framework that offers data serialization mechanisms in JSON format, automatic API documentation, logging, analytic and also the automatic generation of web forms for API test.
Description: O aparecimento do estilo de arquitetura REST, Representational State Transfer, veio dotar a área dos serviços Web de mais uma alternativa para a implementação de sistemas de computação distribuída, tentando que, de um modo mais simples, fosse possível fazer a construção de uma API, Application Programming Interface, para a comunicação entre os diferentes componentes de um sistema, nomeadamente, entre o servidor e os diferentes clientes.Com isto, surgiram então inúmeras implementações, compatíveis com as mais variadas linguagens de programação, tal como Java, Python, Ruby, Scala, JavaScript, entre outras, de modo a proporcionar aos programadores uma forma acessível dos mesmos implementarem os seus serviços com base nesta arquitetura. Atualmente a tecnologia Node.js é fortemente utilizada para o desenvolvimento de aplicações Web, nomeadamente para a implementação deste tipo de serviços.É neste sentido que surgiu este tema de dissertação, o desenvolvimento de uma framework para Node.js, que permita oferecer aos criadores de APIs REST uma forma de criarem os seus serviços Web seguindo as boas práticas e as tendências tecnológicas da linguagem e da comunidade envolvida, permitindo assim oferecer uma solução tecnologicamente competitiva.Como um dos principais objetivos e pontos de inovação, a framework desenvolvida pretende dar a capacidade de os programadores poderem seguir as boas práticas e restrições aconselhadas para serviços deste tipo de um forma praticamente transparente, permitindo que de um modo simples e praticamente automático, determinados conceitos lhe sejam incutidos propiciando o desenvolvimento de serviços da forma mais correta possível. Apesar dos aspetos que são automaticamente incutidos nos serviços, a framework também pretende oferecer ao programador alguma liberdade tecnológica, permitindo-lhes tomar decisões ao nível de alguns componentes necessários ao serviço.Outro grande foco é a capacidade de desenvolvimento de serviços REST que sejam capazes de integrar com aplicações desenvolvidas através da abordagem NoBackend, nas quais as tarefas relativas ao backend são abstraídas no desenvolvimento dos respetivos clientes. Através desta funcionalidade é esperada ainda a possibilidade do próprio serviço gerar automaticamente código de cliente que possa ser integrado nas aplicações em questão.Além disso, esta dissertação tem ainda como objetivo o desenvolvimento de uma framework que tenha ao seu alcance mecanismos de serialização de dados em formato JSON, documentação automática de recursos, logging, analytics e ainda a geração automática de formulários web para testes da API.
Subject: Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
TID identifier : 201303299
URI: http://hdl.handle.net/10216/83505
Document Type: Dissertação
Rights: openAccess
License: https://creativecommons.org/licenses/by-nc/4.0/
Appears in Collections:FEUP - Dissertação

Files in This Item:
File Description SizeFormat 
35403.pdfCriação de framework REST/HATEOAS Open Source para desenvolvimento de APIs em Node.js1.01 MBAdobe PDFThumbnail
View/Open


This item is licensed under a Creative Commons License Creative Commons