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

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

Что такое веб-фреймворк?

Конечно, прежде чем мы представим Django, нам нужно сначала узнать, что такое веб-фреймворки, учитывая их важность в современных веб-приложениях. Чтобы понять веб-фреймворки, давайте посмотрим, как кодирует Python-приложение, когда вы не используете фреймворк. Самый простой способ сделать это с помощью Common Gateway Interface (CGI). Вам просто нужно создать скрипт с выводом HTML, а затем сохранить скрипт с помощью. расширение cgi для веб-сервера. Для простых страниц лучше всего подходит запись с нуля. Код проще для понимания, и нет другого кода для чтения. Это также проще для развертывания.

Несмотря на свою простоту, этот подход сопряжен с рядом проблем. Например, что бы вы сделали, если бы вам понадобилось несколько частей вашего приложения для подключения к базе данных? Если вы используете описанный выше метод, вам придется дублировать код подключения к базе данных в каждом сценарии CGI. Это может быть не только громоздким, но и увеличить вероятность появления человеческих ошибок. Однако более простым способом было бы поместить этот код в общую функцию. Когда код повторно используется в различных средах с отдельным паролем и базой данных, вам придется настраивать код для каждой конкретной среды.

Кроме того, если у вас нет большого опыта работы с Python, вы с большей вероятностью допустите небольшие ошибки, которые могут привести к сбою приложения. Логика страницы в идеале должна отделяться от элементов отображения HTML, поэтому редактор может редактировать каждый элемент, не затрагивая другой.

Веб-платформа решает эти проблемы путем формирования инфраструктуры для программирования приложений. Это поможет вам сосредоточиться на написании более понятного и понятного кода. Это также то, что делает Джанго.

Model-View-Controller

Django внимательно следит за паттерном Model-View-Controller (MVC), настолько, что он может быть почти классифицирован как структура MVC. Этот шаблон разделяет моделирование предметной области, презентации и действия на основе пользовательского ввода на три уникальных класса. Чтобы лучше это понять, просто взгляните на скрипт Python CGI.

Стандартный скрипт CGI будет включать в себя некоторые вводные элементы HTML для внешнего интерфейса, а затем соединение с базой данных. Вот пример кода соединения с базой данных в Python CGI:

connection = MySQLdb.connect (user = 'ABC', passwd = 'xxxxxxxx', db = 'my_db')

После этого у вас есть команда выполнения для запуска запроса. Затем у вас есть HTML-код для отображения результатов запроса в интерфейсе. Наконец, вы закрываете соединение простой строкой:

connection.close ()

Теперь, с Django, у вас есть три файла Python, идентифицированные с их. суффикс py Первым будут таблицы базы данных models.py. Второй будет содержать логику приложения, views.py. И третий будет иметь конфигурацию URL, urls.py. Наконец, у вас будет несколько HTML-элементов для представления результатов во внешнем интерфейсе. Разделение на различные файлы Python является ключевым моментом здесь; вам не нужно беспокоиться о синтаксисе.

Файл models.py содержит описание таблицы базы данных. Используя этот класс Python, вы можете создавать, удалять, извлекать и обновлять записи, используя простой код Python вместо повторяющихся операторов SQL. Файл views.py имеет бизнес-логику, а функция latest_books () - это представление. Файл urls.py указывает, какое представление вызывается для данного URL. Например, вы можете кодировать представление, которое будет вызываться в случае, если браузер загружает URL-адрес домена / example /. Это означает, что если ваш домен abc.com, посещение URL abc.com/example/ вызовет эту функцию.

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

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

Рекомендуемые курсы

  • Программа на Windows 10
  • Курс по профессиональному тестированию программного обеспечения
  • Пакет обучения программированию на Python
  • Завершите обучение Джанго

Краткая история Джанго

Теперь, когда вы немного знаете о веб-фреймворках, пришло время немного углубиться в историю Django. Знание того, откуда взялся Django, поможет вам лучше понять, как он работает и как использовать его ярлыки. Если вы создавали веб-приложения, вы, вероятно, уже знаете проблемы, связанные с CGI. Классический путь веб-разработки выглядит так:

  1. Вы пишете веб-приложение с нуля
  2. Вы пишете вторую заявку
  3. Вы понимаете, что между двумя приложениями есть несколько общих элементов
  4. Вы реорганизуете код так, чтобы приложение 1 имело тот же код, что и второе
  5. Вы повторяете 2-4 несколько раз
  6. Вы понимаете, что создали основу

Так Джанго тоже был создан. Он был сформирован из реальных приложений, написанных командой веб-разработчиков в Канзасе. Он был создан в 2003 году, когда веб-программисты Адриан Головатый и Саймон Уиллисон начали использовать Python для создания приложений.

Команда World Online, ответственная за поддержку и создание нескольких местных новостных сайтов, увидела огромные преимущества в среде веб-разработки, которая была продиктована крайними сроками журналистики. Для сайтов журналисты и руководство хотели, чтобы функции добавлялись, а приложения создавались в короткие сроки, с уведомлением всего за несколько дней или часов. Затем два разработчика сформировали среду веб-разработки для экономии времени и создания поддерживаемых приложений в установленные сроки.

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

Но почему мы даже обсуждаем историю Джанго? Ну, по двум причинам. Во-первых, это помогает идентифицировать и объяснить «сладкое пятно» программного обеспечения. Django вышел из новостной среды и поэтому полон функций, которые лучше всего подходят для сайтов, ориентированных на контент, таких как Washington Post, Amazon и Craigslist, предлагающих динамическую информацию на основе базы данных. Тем не менее, Django также хорош для любого динамического сайта. Вторая причина в том, что история Django помогает вам понять, как формировалась культура его сообщества.

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

Установка Джанго

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

Django - это в основном код Python, поэтому он работает везде, где работает Python, включая некоторые мобильные телефоны. Предположим, вы устанавливаете его на настольный компьютер, ноутбук или сервер. Поскольку Django написан на Python, вам сначала нужно установить Python. Базовые фреймворки Django с любой версией Python начиная с 2.5. Если вы не уверены, что выбрать, выберите последнюю версию Python, поскольку она имеет языковые функции и улучшения производительности, которые могут оказаться полезными.

Если вы используете Mac или Linux, у вас, вероятно, уже есть Python на вашем компьютере. Вы можете убедиться в этом, перейдя в командную строку и введя «python» в командной строке. Вы должны увидеть что-то вроде этого:

Python 3.5.1 (версия 3.5.1: 37a07cee5969, 6 декабря 2015, 01:54:25)

(MSC v.1900 64 бит (AMD64)) на win32

Введите «помощь», «авторское право», «кредиты» или «лицензия» для получения дополнительной информации.

>>>

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

Для начала лучше всего пойти на официальный релиз. Вы можете найти последнюю версию на веб-сайте Django Project. Если у вас есть дистрибутив Linux с пакетом Django, перейдите на версию дистрибьютора, чтобы вы также получали обновления безопасности.

Настройка базы данных

Единственным условием Django является наличие работающей установки Python. Как только вы это настроите, вы можете сразу же начать писать веб-приложение. Однако, как упоминалось ранее, Django был разработан с упором на контент-ориентированные веб-приложения на основе баз данных. Таким образом, есть вероятность, что вы разработаете веб-сайт, управляемый базой данных. В этом случае вам необходимо настроить сервер базы данных.

Django поддерживает четыре механизма базы данных: MySQL, Oracle, SQLite 3 и PostgreSQL. Все двигатели работают одинаково хорошо по большей части с основной структурой. PostgreSQL рекомендуется, если у вас нет связей с унаследованной системой и вы можете выбрать серверную часть базы данных.

Чтобы настроить базу данных, вам необходимо установить и настроить сам сервер. Каждая база данных, которую вы выбираете, имеет свой собственный способ настройки, поэтому вам нужно обратиться к этому. Во-вторых, вы должны установить библиотеку Python для этой конкретной базы данных. Это сторонний код Python для взаимодействия с базой данных.

SQLite рекомендуется, если вы просто экспериментируете с Django и не хотите устанавливать сервер. Не требует установки; он может просто читать и записывать данные в один файл в вашей системе, и он поддерживается Python 2.5 и выше. Windows немного затрудняет получение двоичных файлов драйвера базы данных.

Если вы выбираете MySQL, вам нужен MySQL 4.0 или выше, так как более старые версии не поддерживают функции Django. Вам также необходимо установить пакет MySQLdb со страницы проекта Django. Если вы используете Linux, система управления пакетами вашего дистрибутива может иметь пакет под названием «mysql-python», «python-mysqldb» или «python-mysql».

Django работает с версией 9i или выше Oracle Database Server. Вам также необходимо установить библиотеку cx_Oracle с веб-сайта cx-Oracle. В качестве альтернативы, вы можете использовать Django без базы данных полностью, если вы хотите использовать ее только для обслуживания динамических страниц без ссылки на базу данных. С учетом вышесказанного, некоторые инструменты в Django требуют базы данных, и ее отсутствие приведет к тому, что вы упустите их.

Рекомендуемые статьи

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

  1. Python против JavaScript - узнайте 11 полезных отличий
  2. 10 лучших вопросов для веб-разработчиков, которые вы должны знать
  3. 10 типов программирования на Python
  4. Python против Ruby Performance и их полезные преимущества
  5. Ключевые отличия Python от JavaScript
  6. Python против Go