Frameworks e REST: Conceitos Essenciais de Arquitetura
Classificado em Computação
Escrito em em
português com um tamanho de 3,08 KB
O que são Frameworks?
Um framework é tipicamente formado por um conjunto de bibliotecas estruturadas para executar uma operação maior. Ele captura a funcionalidade comum a várias aplicações que pertencem a um mesmo domínio de problema, exigindo que essas aplicações compartilhem algo razoavelmente grande em comum.
Características Essenciais dos Frameworks
- Reutilizável: Um framework deve ser reusável.
- Extensível:
- O framework contém funcionalidade abstrata (sem implementação) que deve ser completada pelo desenvolvedor.
- Uso Seguro:
- O desenvolvedor de aplicações não pode destruir a estrutura fundamental do framework.
- Eficiente:
- Devido ao seu uso em muitas situações, algumas das quais poderão necessitar de alta performance.
- Completo:
- Deve endereçar o domínio do problema pretendido de forma abrangente.
Vantagens e Desvantagens
Vantagens
- Melhor consistência e compatibilidade entre aplicações.
- Padronização.
- Velocidade no desenvolvimento.
- Redução de custos.
Desvantagens
- Construir um framework é complexo.
- O reuso não é automático: deve ser planejado.
- Requer modificar o processo de desenvolvimento e criar novos incentivos.
Tipos de Frameworks
Framework de Aplicação (Horizontal)
- Também chamado de framework horizontal.
- Encapsula conhecimento (expertise) aplicável a uma vasta gama de aplicações.
- Resolve apenas uma fatia do problema da aplicação.
- Exemplo: Framework para construção de UI (User Interface).
Framework de Domínio (Vertical)
- Também chamado de framework vertical.
- Encapsula conhecimento (expertise) aplicável a aplicações pertencentes a um domínio particular de problema.
- Resolve boa parte da aplicação.
- Exemplo: Framework para construir aplicações de finanças.
REST (Representational State Transfer)
REST, sigla para Representational State Transfer, é um padrão arquitetural para a construção de Web Services que utilizam unicamente o protocolo HTTP para a comunicação.
- Utiliza URLs (Uniform Resource Locators) como meio de comunicação.
- A representação dos dados é feita tipicamente através de arquivos XML ou JSON, sendo o JSON o formato mais comum.
- Não utiliza um descritor de serviços, como ocorre com o WSDL no SOAP.
- Os serviços/recursos são representados por URLs.
- O padrão REST utiliza os verbos do protocolo HTTP (GET, POST, PUT, DELETE, etc.) para representar operações de dados (CRUD).
Restify
Restify é um módulo Node.js construído especificamente para permitir a construção eficiente de serviços Web RESTful.