Artigos de Tecnologia e Negócios > Programação

Django ou Flask: Características, semelhanças e diferenças

Guilherme Lima
Guilherme Lima

Django e Flask são dois frameworks escritos em Python, com foco no desenvolvimento web. Neste artigo vou mostrar as características e semelhanças entre eles.

Django

Segundo a documentação oficial, o Django é uma estrutura escrita em Python busca o desenvolvimento rápido, design limpo e pragmático. Com código aberto e gratuito, a principal proposta é ajudar o desenvolvedor ou desenvolvedora a pensar na aplicação.

Sua principal convenção é o DRY (Don't Repeat Yourself, em tradução livre: não seja repetitivo), que visa o máximo de proveito do código criado evitando código duplicado.

O Django utiliza um padrão similar ao MVC (model-view-controller), porém aqui chamado de MTV (model-template-view), onde dividimos a aplicação em camadas ou partes, tornando o código mais organizado e legível.

tabela

Porque não chamar de MVC?

Para quem desenvolve utilizando o Django, o controller é o próprio framework, já que quando uma url é acessada, a própria engine do Django faz o redirecionamento para a view correta, conforme definição nas configurações de url, executando assim o papel do controller.

Flask

O Flask é baseado na biblioteca WSGI e têm como característica a simplicidade e uma velocidade de criação superior ao Django. É considerado por muitos um pequeno framework, mas ser pequeno não significa que ele faz menos do que outras estruturas.

O Flask foi projetado como uma estrutura extensível desde o início, fornecendo tudo que é necessário para realizar as funcionalidades mais básicos, enquanto as extensões fornecem o restante.

Segundo o criador do framework Armin Ronacher, o Flask possui três dependências principais: as rotas, debugging e Web Server Gateway Interface WSGI.

Comparando o Django e o Flask

tabela de comparação

Exemplo de sites desenvolvidos

Observe que não existe um framework melhor que o outro e sim objetivos diferentes. Por exemplo, caso queira criar uma aplicação que possua um Admin, ORM para diferentes bancos é recomendado o Django (não significa que o Flask não seja capaz, apenas uma recomendação). Porém, se meu objetivo for velocidade no desenvolvimento de APIs e microsserviços, é recomendado o Flask (não significa que o Django não seja capaz, apenas uma recomendação).

Gostou deste artigo? Aqui na Alura temos cursos e formações de Python para quem quer aprender sobre esta linguagem para programas web que cresce a cada dia.

Artigos de Tecnologia e Negócios > Programação

Cursos profissionais de Programação é na Alura, comece agora!

  • 1184 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

Premium

  • 1184 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$75
à vista R$900
Matricule-se

Premium Plus

  • 1184 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$100
à vista R$1.200
Matricule-se

Max

  • 1184 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$120
à vista R$1.440
Matricule-se
Procurando planos para empresas?
Acesso por 1 ano
Estude 24h/dia onde e quando quiser
Novos cursos toda semana