Escolar Documentos
Profissional Documentos
Cultura Documentos
Desenvolvimento de Software
Baseado em Framewoks
Bacharelado em Sistemas de Informação
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