Flask (framework web)

Flask é um pequeno framework web escrito em Python. É classificado como um microframework porque não requer ferramentas ou bibliotecas particulares, mantendo um núcleo simples, porém, extensível.[2] Não possui camada de abstração de banco de dados, validação de formulário ou quaisquer outros componentes onde bibliotecas de terceiros preexistentes fornecem funções comuns. No entanto, o Flask oferece suporte a extensões que podem adicionar recursos do aplicativo como se fossem implementados no próprio Flask. Existem extensões para mapeadores objeto-relacional, validação de formulário, manipulação de upload, várias tecnologias de autenticação aberta e várias ferramentas comuns relacionadas ao framework.[3]

Flask
Desenvolvedor Armin Ronacher
Modelo do desenvolvimento Software Livre
Lançamento 1 de abril de 2010 (14 anos)
Versão estável 2.0.1 (21 de maio de 2021; há 3 anos[1])
Escrito em Python
Sistema operacional Multiplataforma
Gênero(s) Framework web
Licença BSD
Estado do desenvolvimento Ativo
Página oficial flask.pocoo.org
Repositório github.com/pallets/flask

Aplicações que utilizam o framework Flask incluem a própria página da comunidade de desenvolvedores,[4] o Pinterest e o LinkedIn.[5][6]

Componentes

editar

O microframework Flask é baseado nos projetos Pocoo, Werkzeug e Jinja2.

Werkzeug

Werkzeug é uma biblioteca de utilitários para a linguagem de programação Python, em outras palavras, um kit de ferramentas para aplicativos Web Server Gateway Interface (WSGI), e é licenciada sob uma Licença BSD. Werkzeug pode realizar objetos de software para funções de solicitação, resposta e utilidade. Ele pode ser usado para construir um framework de software customizado em cima dele e suporta Python 2.7, 3.5 e posteriores.[7][8]

Jinja
 Ver artigo principal: Jinja (mecanismo de template)

Jinja, também da Ronacher, é um mecanismo de template para a linguagem de programação Python e está licenciado sob uma Licença BSD. Semelhante ao framework web Django, ele lida com modelos em uma sandbox.

Exemplo

editar

O código abaixo mostra uma aplicação web simples que imprime na tela do navegador "Olá mundo!":

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Olá mundo!"

if __name__ == "__main__":
    app.run()

Ver também

editar

Referências

  1. https://flask.palletsprojects.com/en/2.0.x/changes/
  2. «Flask Foreword». Arquivado do original em 17 de novembro de 2017 
  3. «Flask Extensions». Arquivado do original em 17 de maio de 2018 
  4. Página da comunidade Flask
  5. What challenges has Pinterest encountered with Flask?
  6. Rachel Sanders: Developing Flask Extensions - PyCon 2014
  7. Ronacher, Armin. «Werkzeug The Python WSGI Utility Library». palletsprojects.com. Consultado em 27 de maio de 2018 
  8. Ronacher, Armin. «Installation, Python Version». palletsprojects.com. Consultado em 20 de abril de 2020