Executando verificação de segurança...
7

Framework com baterias inclusas ou minimalista...

Eu particularmente fico impressionado com criatividade dos DEVs para dar nomes para algumas coisas, como o termo baterias inclusas para classificar um framework que tenta entregar tudo que o DEV precisa em uma única caixa.
Sem querer entregar a idade... mas não existia nada mais frustante que ganhar um brinquedo, abrir a caixa louco para brincar e ver que o danado precisava de pilhas... e que tinha uma informação na caixa em negrito: "Baterias não inclusas".

Resumo: "Brinquedo sem pilhas" === "efeite de estante".

Sem querer gerar muita polêmica... esse tema desperta paixões. Já trabalhei com frameworks "bombados" como Django (Python), Laravel (PHP), NextJS (JS) e Angular (JS - Frontend) e outros com propostas mais simples como ExpressJS e o FastAPI.

Eu sou um evangelista de Python e gosto muito do Django e isso pode trazer um viés na minha visão, porém não quero ditar regras ou impor minhas idéias... pelo contrário, não tenho respostas para nada.

Eu gosto muito de um framework mais completo porque acelera o processo de desenvolvimento e temos entregas mais rápidas. É muito bom para validar uma idéia de maneira muito rápida. O lado negativo é o alto acoplamento entre o código que representa as regras de negócio e código de terceiros, qualquer vacilo e logo temos classes e objetos de uma camada se misturando com outras. No longo prazo isso vira um inferno, a cada tarefa dá vontade de reescrever tudo... principalmente na hora de escrever os testes...

Os frameworks minimalistas te dão liberdade para arquitetar a aplicação conforme tua necessidade, entregando muito bem aquilo que ele se propõe e ficando na camada de infra estrutura. Mas isso pode ser a receita do fracasso para quem não sabe muito bem o que está fazendo, principalmente se o dev não possui os fundamentos necessários ou alguém mais senior para tomar as decisões mais críticas sobre o projeto.

Na minha opinião, depende do projeto (resposta pronta para quase toda pergunta na áera de tecnologia =) ), mas a maior parte dos meus projetos atuais são de clientes que não possuem requisitos bem definidos e precisamos validar muitas coisas durante o processo de desenvolvimento, o Django facilita minha vida e a manutenção não vira um inferno com os devidos cuidados. Gostaria de ouvir outras opiniões sobre esse assunto... até a próxima.

Carregando publicação patrocinada...
4

Curioso, nunca tinha pensado nisso. Eu já vi o termo em alguns lugares, mas não tinha visto em frameworks. Pra mim só existem os com pilhas inclusas, caso contrário fica parecendo que não é framework. Mas daria uma boa discussão. Sem as pilhas incluisas ou dando muita liberdade, não parecee ser bem frameowrk, é biblioteca. Mas andam distorcendo tanto certos termos... acho que estão sequestrando para usar como marketing e ficar bonitinho. Tá falntando mais engenharia e menos marketing.

ALguns frameworks servem para diminuir muito o trabalho de algo complexo a ser feito, e evitar erros. Outros servem para entregar pronto algo para as pessoas que não sabem o que etá fazendo. São ferramentas low code.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

2

Tatianno, te entendo perfeitamente! No meu caso gosto muito de Rails.

Já me envolvi em projetos de SPA, por exemplo, que o front tinha que reinventar muita coisa que não seria necessário se tivesse apenas seguido as convenções de um framework fullstack monolito estilo Rails ou Django.

Conheço vários sistemas que o botão voltar do navegador não funciona, por motivos similares.

Cada um faz suas escolhas, não tem um certo ou errado, mas quando coisas óbvias não funcionam ou precisam de um esforço maior pra funcionar, eu prefiro evitar.

1

A resposta é depende

tem coisas que precisqm ser minimas e funcionar com o backend standalone como gatway de pagamentos.

outras coisas prefiro usar django ou laravel

nestjs é um crime. Uma framework com suporte enterprise em um ecosistema que n tem nada de enterprise, btw

1

Algo mais simples em algum momento vai precisar de mais coisas quando o projeto crescer, então é bom começar com algo bem estruturado e pensando nos próximos anos.
Na parte web venho bem animado com a evolução de qualidade e performance do ecossistema Python/Django.
Por exemplo, substituímos o Gunicorn pelo Granian que mostrou um ótimo desempenho em produção. Vale citar ainda a socketify.py, que foi criada por um brasileiro e tem ótimo desempenho também.
Substituímos no frontend/backend boa parte de API baseada em JSON por hypermedia com HTMX, que vejo como um salto gigantesco em produtividade e um up a mais para frameworks que pensam em prototipagem rápida.

-1