Flask

Flask — это микрофреймворк для создания простого и быстрого проекта на языке программирования Python с возможностью масштабирования до сложных приложений. Понятие «микрофреймворк» означает, что в комплекте нет набора инструментов и библиотек, программист может сам установить их в зависимости от задач.

Логотип Flask

Кому и когда нужен Flask

Flask используют веб-разработчики на Python. Микрофреймворк подходит для новичков. Позволяет быстро создать веб-приложение, используя только один файл Python. Flask можно использовать при разработке как тренировочных проектов или небольших сайтов, которым не нужен сложный бэкенд, так и API и сложных проектов для электронной коммерции. Ядро фреймворка можно масштабировать под разные задачи. Разработчик должен сам выбрать библиотеки и инструменты, которые хочет использовать. Для этого нужно подключить пакеты-расширения.

Пример веб-приложения, которое показывает «Hello World!»:

from flask import Flask

app = Flask(__name__)

@app.route("/")

def hello():

return "Hello World!"

if __name__ == "__main__":

app.run()

Как работает Flask

Flask Framework использует Jinja2 — приложение для обработки шаблонов — и Werkzeug — инструмент для работы с WSGI (стандартом взаимодействия между Python-программой, которая выполняется на стороне сервера, и самим веб-сервером). Для создания изолированной среды в Python используется модуль Virtualenv.

Веб-фреймворк Flask поддерживает:

  • модульное тестирование — проверку на корректность отдельных модулей исходного кода программы;
  • Google App Engine — мощную платформу для создания и запуска приложения в инфраструктуре Google;
  • RESTfull-архитектуру — соответствующий набор архитектурных принципов для создания гибкой и масштабируемой сети.

Flask защищен от XSS-атак, когда злоумышленник внедряет на страницу вредоносный скрипт, и работает с безопасными cookie. В инструменте Werkzeug предусмотрен простой веб-сервер.

Читайте также: Что выбрать: PHP или Python?

Преимущества и недостатки Flask

Преимущества

  • Считается лучшим веб-фреймворком для создания небольших статических сайтов и легковесных веб-приложений.
  • Можно редактировать большую часть инструментов под задачи.
  • Имеет интуитивно понятный синтаксис и простую структуру.
  • Есть инструменты для отладки и тестирования — unit-тесты, встроенный сервер разработки, обработчик запросов и отладчик.
  • Много подробной документации на русском языке.
  • С новой версии 2.0. поддерживает асинхронность — технологию, которая помогает выполнять процессы без блокирования потока программы. Это повышает производительность и скорость работы.

Недостатки

  • Для подключения к базе данных, проверки данных форм, загрузки файлов нужно использовать расширения. 

Другие термины на букву «F»

FTP
FYI

Все термины

Освойте новую профессию

(рейтинг: 5, голосов: 2)
Добавить комментарий