Você está na página 1de 11

Instituto Federal Goiano – Campus Ceres

Desenvolvimento de Software
Baseado em Framewoks
Bacharelado em Sistemas de Informação

Prof. Dr. Rafael D. F. Feitosa


rafael.feitosa@ifgoiano.edu.br
AULA
01 Conteúdo

O que são frameworks?

Vantagens e desvantagens

Exemplos

2
© Rafael Feitosa
O que são frameworks?

Conjuntos estruturados de ferramentas, bibliotecas,
convenções e padrões que fornecem uma estrutura abstrata
para o desenvolvimento de software:
– Projetados para facilitar e agilizar o processo de desenvolvimento:

Fornece uma base organizada e reutilizável para a construção de aplicativos.

Os frameworks são comumente usados para diferentes tipos de
desenvolvimento, incluindo desenvolvimento web,
desenvolvimento móvel, desenvolvimento de aplicativos
desktop, entre outros.
3
© Rafael Feitosa
Vantagens vs. desvantagens
1)Organização
2)Convenções e padrões
3)Facilidade de desenvolvimento
4)Bibliotecas integradas
5)Agilidade
6)Abstração da complexidade
7)Reusabilidade
4
© Rafael Feitosa
Spring Boot

Java:
– Extensão do framework Spring que simplifica significativamente o
desenvolvimento de aplicativos Java.
– Vantagem:

Segue a abordagem de "opinião sobre configuração", o que significa que
muitas configurações padrão são assumidas, eliminando a necessidade de
configuração manual extensiva.
– Desvantagem:

Em projetos muito simples, o Spring Boot pode ser percebido como
excessivo, fornecendo funcionalidades que podem não ser necessárias.
5
© Rafael Feitosa
Express.js

JavaScript:
– Framework web leve e flexível para Node.js, projetado para facilitar
a construção de aplicativos web e APIs RESTful de maneira simples e
eficiente.
– Vantagem:

Estende funções do Node.js com uma abordagem minimalista que favorece a
flexibilidade.
– Desvantagem:

Fornece uma quantidade mínima de recursos integrados em comparação
com alguns outros frameworks mais abrangentes.
6
© Rafael Feitosa
Django REST framework

Python:
– Extensão do framework web Django para Python, projetada
especificamente para facilitar o desenvolvimento de APIs RESTful.
– Vantagem:

Integração com o Django e a facilidade de desenvolvimento
proporcionada pela estrutura baseada em modelos.
– Desvantagem:

Em cenários de alta escala, algumas camadas de abstração adicionadas
pelo DRF podem causar pequenos aumentos no overhead.
7
© Rafael Feitosa
Flask

Python:
– Framework web leve para Python que facilita a construção de
aplicativos web e APIs de forma simples e modular.
– Vantagem:

Fornece apenas o essencial, deixando a maior parte das decisões nas mãos
do desenvolvedor. Isso permite a criação de aplicativosm ais aderentes ao
projeto, sem restrições significativas.
– Desvantagem:

Falta de recursos integrados em comparação com alguns outros
frameworks mais abrangentes.
8
© Rafael Feitosa
FastAPI

Python:
– Framework web moderno e rápido para a construção de APIs
com Python 3.7+ baseado em padrões de tipagem Python.
– Vantagem:

Utiliza a tipagem estática do Python para gerar automaticamente
documentação interativa (Swagger).
– Desvantagem:

Base de usuários e comunidade menores.
9
© Rafael Feitosa
Laravel

PHP:
– Framework de desenvolvimento web PHP moderno e elegante que visa
simplificar o processo de construção de aplicativos robustos e
eficientes.
– Vantagem:

Utiliza o paradigma de desenvolvimento MVC (Model-View-Controller) e
fornece uma API clara e expressiva, o que torna o código fácil de ler e escrever.
– Desvantagem:

Em projetos simples ou pequenos, alguns desenvolvedores podem perceber o
Laravel como um conjunto de recursos excessivo
10
© Rafael Feitosa
Slim

PHP:
– Microframework para PHP, projetado para ser leve e oferecer o mínimo
necessário para construir aplicações web eficientes.
– Vantagem:

Minimalista, oferecendo apenas o essencial para o desenvolvimento web. Isso o
torna uma escolha adequada para projetos menores, microservices ou situações
em que a simplicidade é prioritária.
– Desvantagem:

Em projetos que exigem funcionalidades mais avançadas, como autenticação,
autorização ou ORM integrado, os desenvolvedores podem precisar integrar
bibliotecas adicionais.
11
© Rafael Feitosa

Você também pode gostar