Skip to main content

Para aqueles que estão começando sua carreira como desenvolvedor, provavelmente devem se perguntar sobre o que é Flask.

De forma rápida, Flask é um framework modularizado que possui uma estrutura inicial mais simples e que utiliza Python como linguagem web.

Sua principal característica de mercado é que sua estrutura permite desenvolver aplicativos webs de forma mais fácil.

Esse micro framework além de ser multiplataforma, é bastante utilizado para a criação de APIs RESTful.

Mas se ainda parece confuso para você, vamos simplificar mais ainda.

O que é Flask

Flask, é um micro framework multiplataforma em Python que possui uma estrutura simplificada, permitindo que o processo de desenvolvimento de aplicações seja mais rápido.

Justamente por ser um micro framework que sua estrutura é mais simples, tornando essa simplicidade uma de suas maiores vantagens.

Também é bastante utilizado no desenvolvimento de pequenas aplicações e em integrações de aplicações e organização das chamadas e resposta de uma API RESTful.

O uso do Flaks depende também da instalação de duas bibliotecas:
– Modelo Jinja;
– Kit de ferramentas Werkzeug WSGI.

É uma excelente ferramenta para quem gosta de programar em Python, e possui como principal concorrente o Django.

Quais são as Principais Diferenças entre Flask e Django?

Só para entendermos melhor as diferenças entre as duas ferramentas, é necessário entender o que é o Django.

Como podem imaginar, o Django é um framework convencional escrito em Python que utiliza um padrão de projeto próprio chamado de MTV (model – template – view) que separa a aplicação em camadas, facilitando a leitura do código sua organização.

O Django é voltado para a premissa DRY (Don´t repit yourself), que é voltada para a não repetição do código.

Ou seja, o framework permite o reaproveitamento do código armazenado em outros módulos da aplicação com o intuito de evitar um retrabalho.

Podemos dizer que, enquanto o Django é voltado para o reaproveitamento de código, o Flask é voltado para a rapidez do desenvolvimento e da aplicação em si.

Em todo caso, é recomendável a utilização do Django ao invés do Flask quando o projeto a ser desenvolvido é mais complexo e exige um amplo conjunto de ferramentas.

Agora se o projeto for mais simples e que tenha a opção de implementação à grosso modo, como se estivesse montando peças de lego, então se recomenda o uso do Flask.

Vale lembrar que sua simplicidade não limita a criação de aplicações mais complexas, uma vez que ela possui condições de implementações de novas bibliotecas e funções.

Agora vejamos suas principais vantagens e desvantagens.

Principais vantagens

Podemos resumir suas principais vantagens em quatro características: simplicidade, rapidez, voltado para pequenos projetos e para aplicações robustas.

Simplicidade

Já batemos muito nessa tecla dentro deste artigo, mas relembremos novamente.

Por possuir uma estrutura simples, o Flask permite um rápido desenvolvimento de pequenas aplicações quando comparado a outros frameworks.

Isso se deve por conta de que a ferramenta possui apenas os arquivos necessários para o desenvolvimento dessas aplicações.

Mas isso não impede que você como desenvolvedor importe outros arquivos que necessite para dentro do micro framework.

Deixarei o link da documentação em inglês neste botão para tirar dúvidas sobre a instalação da ferramenta. Lembre-se de configurar corretamente as bibliotecas Jinja e Werkzeug.

Rapidez

Estamos dizendo sobre a rapidez do desenvolvimento da aplicação.

É possível ter uma maior rapidez pois o programador precisa se preocupar apenas em desenvolver o necessário para o projeto.

Isso descarta a configuração de diversas funções que, por muitas vezes, não seriam utilizadas.

Voltado para Pequenos Projetos

Por possuir uma arquitetura muito simples (um único arquivo inicial) os projetos escritos em Flask tendem a ser menores e mais leves se comparados a frameworks maiores.

Fazendo com que a ferramenta seja ideal para pequenos projetos, pois contém apenas os arquivos necessários.

Aplicações Robustas

Você deve estar se perguntando como a ferramenta é voltada para aplicações robustas se ela é voltada para pequenos projetos.

Na verdade a resposta é simples.

Apesar de ser um micro-framework, o Flask permite a criação de aplicações robustas, já que é totalmente personalizável, permitindo, caso necessário, a criação de uma arquitetura mais definida.

Eu sei, a ferramenta parece perfeita. Mas ela também tem seus pontos fracos que lhe auxiliam em saber quando não utilizá-la.

banner-conteige

Principais desvantagens

Apesar do micro framework ser “concorrente” direto do Django, já explicamos anteriormente quando utilizar um ou o outro e suas principais diferença.

Agora, diremos de forma direta as desvantagens do Flask.

Dependendo do seu projeto, a falta de ferramentas nativas se torna um problema, assim como novos desenvolvedores que pegam projetos grandes antigos em Flask podem ter bastante dificuldade de adaptação.

Sua versatilidade também pode fazer com que os custos da ferramenta sejam altos.

Falta de ferramentas

Apesar de sua estrutura permitir a importação de novos arquivos, para grandes projetos isso gera um grande trabalho.

O motivo é bem simples. Os desenvolvedores do Flask terão que adicionar as extensões e bibliotecas manualmente, o que pode ser uma tarefa complexa em projetos maiores.

Além disso, um grande número de módulos pode começar a desacelerar o aplicativo em determinados casos e não pode processar todas as solicitações corretamente, e isso é um grande problema.

Difícil entendimento

Em grandes projetos, a dificuldade de entendimento se torna maior. O motivo é a importação de arquivos e ferramentas necessárias para o funcionamento desses projetos.

Como a importação dessas ferramentas podem ser variadas, para um desenvolvedor que pega o projeto no meio do caminho, pode ser de extrema dificuldade o entendimento.

Ocasionando uma demora maior e, consequentemente, maiores gastos em desenvolvimento.

Custos de manutenção

Essa versatilidade da ferramenta para grandes projetos podem aumentar consideravelmente o custo, precisando se adaptar para suportar as funcionalidades extras.

Além disso, se um componente na pilha de tecnologia se tornar obsoleto, é difícil encontrar e implementar um substituto rapidamente, o que pode levar a tempos de inatividade prolongados e custos de manutenção mais altos.

Como podemos ver diversas vezes neste artigo, as vantagens e desvantagens nos apontam que o uso de Flask é indicado para pequenos projetos.

Mesmo que sua versatilidade seja muito boa, ela também ocasiona maiores custos e adaptabilidade dos desenvolvedores, o que pode gerar bastante dor de cabeaç.

No entanto, é uma excelente ferramenta caso esteja planejando pequenas aplicações ou desenvolvimento de APIs RESTful.

Quais empresas se utilizam do Flask?

Várias Startups ao redor do mundo utilizam e apoiam a utilização do Flask . Empresas grandes e famosas como o Trivago, Reddit, Zillow e a Patreon utilizam Flask Framework no no backend de suas plataformas.

Assim, percebemos como esse framework atrai desenvolvedores que buscam processos bem otimizados.

Se você já programa em Flask ou está aprendendo a programar, conheça nossa Hospedagem Elástica em Flask, com apenas 01 clique você provisiona um ambiente de alta performance para rodar sua Aplicação. Simples, fácil e muiiito rápido!

Gostou do artigo? Veja outros artigos de nosso Blog ou entenda melhor como o Conteige pode lhe auxiliar no uso do Flask e outras plataformas.