Советы при выборе Python фреймворка

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

Время разработки сайта поможет сократить выбор Python-фреймворка. Само понятие "фреймворк" хорошо известно PHP-программистам, т.к. именно на этом языке программирования написано их большое количество (Zend Framework, Yii, Symfony, Kohana, CodeIgniter и т.д.).

В этой статье мы рассмотрим нескольких популярных фреймворков Python и укажем на их особенности.

Django

Является, пожалуй, самым популярным веб-фреймворком на Python. Django был разработан осенью 2003 года веб-программистами газеты Lawrence Journal-World при создании ее сайта. Был выпущен под лицензией BSD в июле 2005 года. Свое название получил в честь гитариста Джанго Рейнхардта.

Отличительной чертой Django являются использование шаблона проектирования MVC, ORM, API доступа к БД с поддержкой транзакций, встроенная в фреймворк панель администрирования, механизмы аутентификации, кэширования, валидации форм и модульное тестирование (unit testing).

Django позволяет быстро создавать веб-сайты, которые требуют постоянного обновления контента (например, новостные сайты). Примером такого сайта является netgadget.ru. Также при разработке можно использовать большой выбор компонентов, которые также называются приложениями.

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

Flask

Flask является одним из представителей микрофреймворков на Python. В отличие от Django, Flask больше подходит для разработки простых сайтов, которым не требуется сложный функционал. Создать небольшой сайт с помощью Flask можно несколькими строками кода.

В нем используется стиль построения архитектуры распределенного приложения REST. Для маршрутизации используются декораторы route(). Когда сервер получает запрос, он отправляет запрос на метод, который был указан в декораторе. Если вы знакомы с миром Ruby, то Flask очень похож на программный каркас Sinatra, в то время Django на Rails.

TurboGears

Предшественником Django был фреймворк TurboGears, который до сих пор используется многими Python-разработчиками. Он может быть использован для создания сайтов и веб-приложений, которым требуется база данных.

Для этих целей служит объектно-реляционная библиотека SQLAlchemy. Разработчики могут использовать несколько баз данных и выполнять их разделение (секционирование). Также имеется поддержка AJAX как на стороне клиента, так и на стороне сервера.

Мини охлаждающая подставка для ноутбука Леомебель.