IT в Феодосии

Почему Django

Django — это веб-фреймворк для языка Python, позволяющий быстро разрабатывать динамические веб-приложения. Один из основных принципов звучит как «Don't Repeat Youself» это означает, что единожды написанный код не должен повторяться в другом месте проекта.

ORM

ORM — технология отображения объектов в базу данных. Позволяет абстрагироваться от SQL запросов при написании проекта и использовать объекты для доступа к БД. Это не избавляет от необходимости писать SQL-запросы, но в большинстве случаев вам не придеться делать этого. Описание объектов доступа к БД в Django, называется моделями. В описании модели указываются тип поля, ограничения накладываемые на содержимое, реляционные связи с другими сущностями. Позволяет добавлять, искать, извлекать и удалять записи из базы данных в объектно-ориентированном стиле.

Разделение логики и представления

Django является полноценным MVC фреймворком, т.е. это такая архитектура программного обеспечения, в которой модель данных приложения, пользовательский интерфейс и управляющая логика разделены на три отдельных компонента, так, что модификация одного из компонентов оказывает минимальное воздействие на другие компоненты.

Диспетчер URL 

Обработка URL с помощью регулярных выражений. Файл привязки URL можно рассматривать как таблицу с содержанием вашего сайта. Проще говоря, этот файл определяет соответствие между URL и функциями представления, которые должны быть вызваны для этих URL.

Формы

Создание, обработка форм и проверка правильности введенных данных на основе моделей.

Шаблонизатор

Хорошая система шаблонов, которая позволяет даже не зная программирования писать HTML код и смешивать его с данными, генерируемыми управляющей логикой. Возможность расширения шаблонизатора своими фильтрами и тегами для увеличения функциональности шаблонов своего проекта.

Интерфейс администратора

Админка — это автоматически генерируемое средство для управления моделями приложения. Она обладает большими возможностями по настройке под нужды конкретного приложения. Административный интерфейс в Django не только является инструментом разработчика, но и полностью готово для использования при эксплуатации сайтов.

Аутентификация и авторизация

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

Работа с сессиям, HTTP-запросами и cookie.

Кэширование

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

Удобная интернационализация проектов

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

С точки зрения разработчика, вам потребуется добавить минимальное количество обработчиков в ваш исходный код и в шаблоны. Такие обработчики называются строками перевода. Они указывают Django, что «Этот текст нужно переводить на язык пользователя, если перевод этого текста доступен для данного языка.»

Django принимает во внимание эти обработчики при переводе приложений на лету, с учётом пользовательских настроек.

Работа с электронной почтой

Встроенный функционал по созданию и отправке сообщений по электронной почте, возможность разделять получателей сообщений на различные группы.

Большое сообщество разработчиков и доступная документация.

«Резиновые» сетки
Сообщения для всех

Комментарии

1   klunker_roox,   07 Апрель 2010, 11:34 
хм... копипаст с сайта, а где твои личные мысли и причины использования ?
2   cyrill,   07 Апрель 2010, 12:02 
Это не копипаста, а компиляция различных публикаций, в основном с официального сайта Django, а также блогов и руководств.