Цель лекции: Узнать о новейших достижениях веб-разработки; узнать о том, что представляет собой Django; узнать о стандартных возможностях Django; узнать о поддерживаемых базах данных; ознакомиться с планом на следующие лекции
Ключевые термины: Django, веб, шаблон, MVC, SQLite, окружение, разработка, ORM, система, база, фреймворк, open source, сервис, данные,
Добро пожаловать в разработку на Django!
Django – это фреймворк для веб-разработки, а веб-разработка - это навык. Чтобы прокачать какой-либо навык, можно следовать известному правилу "10000 часов", согласно которому, если вы потратили определенное время на отработку какого-либо навыка, то непременно станете экспертом.
Но даже при наличии времени без четкого плана все может пойти не так. Совсем не так.
Итак, как же лучше достигнуть своей цели? Разбить основную задачу на подзадачи, и оттачивать до мастерства навык в каждой из них. (Программисты называют это правило "разделяй и властвуй". Вам нужно выделить промежуточные навыки, чтобы затем научиться им. Чем более обращаться мысленно к промежуточным навыкам, тем более важно стать мастером.
Так как вы решили выучить новый навык, я как автор этой книги должен сделать замечание, что вы уткнетесь в книгу в те первые часы, когда Вами овладеет подавленность. Подавленность случится, когда вы выучите новую вещь., и поверьте мне: когда вы чувствуете, что все настолько просто, вы делаете все правильно.
Веб-сайт создает первое впечатление о компании или продукте непосредственно в глазах аудитории. Каждый стартап теперь имеет свой сайт, который помогает донести свою идею до потенциальных клиентов или инвесторов.
Все теперь в сети; вместо того, чтобы сидеть и созерцать изменения, не лучше ли присоединиться и научиться писать код для них? Изучение веб-разработки – одна из самых ценных инвестиций, которые вы можете сделать с помощью своего времени. Это не только поможет найти лучшую работу, но и даст способности воплотить вашу идею в прототип в простой и прямолинейной манере.
Необходимые ингредиенты для веб-разработки включают пользовательский интерфейс и пользовательский опыт, но к несчастью наша книга не об этом.
Веб-разработка совершила большой прогресс за последние годы. Вот некоторые из достижений:
В этом курсе вы научитесь использовать модель-представление-контроллер (MVC) веб-феймворка Django, написанного на Python, мощном и популярном языке программирования.
MVC работает на идее разделенного представления. Идея, стоящая за разделенной презентацией – это создание четкого разделения между объектами домена, которые моделируют наше представление реального мира, и объектами представления, являющимися элементами пользовательского интерфейса(UI), которые мы видим на экране. Объекты домена должны полностью работать без отсылки к представлению или логике привязки данных(контроллер). Они должны быть также способны поддерживать множество представлений, возможно случайных.
Преимущества этого шаблона очевидны. С ним дизайнеры могут работать над интерфейсом, не беспокоясь о хранении данных или управлении ими. А разработчики способны программировать логику привязки данных, не вдаваясь в детали представления. Как результат, шаблон MVC быстро нашел свой путь среди веб-языков, и серьезные веб-разработчики стали использовать его поверх старых техник.
Эта книга сосредоточена на использовании Django и Python для создания микроблогингового Веб 2.0 веб-приложения со множеством обычных для сегодняшнего дня особенностей, которые можно найти на сайтах, созданных по методике Веб 2.0. Эта книга следует обучающим стилем, когда представляет концепции и объясняет решение проблем. Это не означает, что это справочник ссылок на Python и Django. Книга лишь аккумулирует знания о стандартах веб-технологий (HTML и CSS) и языке программирования Python для дальнейшей работы. Django, с другой стороны, объясняет, как мы создаем особенности, по главам, для достижения конечной цели – работающего приложения Веб 2.0.
Django поддерживает многоязыковые веб-сайты через собственную встроенную систему локализации. Это может быть очень ценно для тех, кто работает с веб-сайтами на более чем одном языке. Система делает перевод интерфейса очень простым занятием.
С тех пор, как MVC шаблон получил широкое распространение в веб-разработке, непохожий на большинство других языков Python с удовольствием выбрали, когда он только появился в веб-фреймворках. Хотя такой выбор одного из многих может на первый взгляд смутить, некоторые фреймворки могут стать хорошим подспорьем для сообщества Python.
Django один из доступных фреймворков для Python, и только один вопрос: что он в себе содержит такого, что он стал темой этой книги?
Во-первых, Django содержит набор тесно связанных компонентов. Все эти компоненты были разработаны самой командой разработки Django. Django изначально был фреймворком "для себя" и предназначался для управления серией ориентированных на новости сайтов. Позже его код был опубликован в Интернете, и команда Django стала развивать его по модели Open Source. Из-за этого его происхождения, компоненты Django были спроектированы для интеграции, многократного использования, и скорости с самого начала.
Компонент базы данных Django, объектно-реляционное отображение(ORM), перекидывает мостик между моделью данных и движком базы данных. Он поддерживает огромное количество систем баз данных, и переключение от одного движка базы данных к другому представляет собой изменение конфигурационного файла. Это дает огромную гибкость в случае, если решение состоит в переключении с одного движка базы данных на другой. Если у вас возникли проблемы, то вы можете скачать драйвер (в виде бинарного пакета Python) здесь: http://www.lfd.uci.edu/~gohlke/pythonlibs.
Вдобавок к этому, Django предоставляет сеть окружения разработки. Она представляет легковесный сервер для разработки и тестирования. Когда включен режим отладки, то Django предоставляет тщательные и очень подробные сообщения об ошибках с большим количеством отладочной информации. Все это делает процесс изоляции и устранения багов очень легким.
Django поддерживает многоязыковые веб-сайты через собственную встроенную систему локализации. Это может быть очень ценно для тех, кто работает с веб-сайтами на более чем одном языке. Система делает перевод интерфейса очень простым занятием.
Все стандартные возможности, которые традиционно содержит веб-фреймворк, доступны в Django. Они включают в себя:
И в заключение, Django предоставляет набор интегрированных и готовых к работе компонентов с превосходной документацией, за это спасибо огромному сообществу разработчиков и пользователей. Нет ничего лучше, чем начать изучать веб-разработку, когда доступен Django!
Мы подразумеваем, что есть несколько важных причин, почему мы используем Django для лучшей веб-разработки. Некоторые из этих важных особенностей будут объяснены в следующих подразделах.
Многие компании прямо используют Django в своем производстве и с постоянными пожертвованиями от разработчиков по всему миру. Самые известные сайты включают в себя Pinterest и Quora. Это дает с полным правом считать этот веб-фреймворк идеальным.
Django следует философии языка Python "Батареи в комплекте", которая подразумевает, что Django поставляется со множеством дополнительных опций и возможностей, которые важны при решении проблем стоящих перед лицом веб-разработчика.
Django очень гибкий в вопросах его интеграции с частями модуля.
Шансы на то, что существующий популярный проект, у которого есть интерфейс прикладного программирования(API) или завершенный плагин для Django, очень малы.
Одна из самых важных частей проекта Django. Компонент базы данных Django, объектно-реляционное отображение(ORM), перекидывает мостик между моделью данных и движком базы данных. ORM-слой предоставляет такие особенности, как инкапсуляция, переносимость, безопасность и выраженность в Модальном Классе Django, который отображается на выбранную в конфигурационном файле базу данных.
В Django очень мощная и гибкая URL-система. Она позволяет определить шаблоны для URL в вашем приложении и определить Python-функции применимо к каждому шаблону.
Django поставляется с интерфейсом администрирования, который уже готов к использованию. Этот интерфейс делает управление данными вашего приложения быстрее.
Вдобавок к этому, Django предоставляет сеть окружения разработки. Она представляет легковесный сервер для разработки и тестирования. Когда включен режим отладки, то Django предоставляет тщательные и очень подробные сообщения об ошибках с большим количеством отладочной информации. Все это делает процесс изоляции и устранения багов очень легким.
В последнем релизе, версия 1.6, Django получило большие изменения, и вот некоторые из них:
Вы можете прочитать о новых добавленных особенностях в подробностях здесь: https://docs.djangoproject.com/en/1.7/releases/1.7/.
Django с большим уважением и силой относится к данным. Моделируйте данные корректно, и оставшаяся часть сайта ровнехонько займет свое место. Согласившись с тем, что Django был разработан для реляционных баз данных, так же существует и неофициальная NoSQL имплементация для Django. Вот список поддерживаемых Django реляционных баз данных:
MySQL и PostgreSQL – две основных базы данных, используемых в сообществе Django, а самой популярной в сообществе Django является PostgreSQL
В этом курсе мы будем в основном иметь дело с тремя базами данных из вышеперечисленного списка, но имплементация других может быть практически идентична с минимальными изменениями в конфигурации.
Есть много известных сайтов, базирующихся на Django. Вот некоторые из них:
Этот курс нацелен на построение веб-приложения микроблога и добавления к нему стандартных особенностей Веб 2.0. Вот некоторые из этих особенностей:
Вместо сосредоточения на обучении различным особенностям Django, этот курс использует обучающий стиль, чтобы научить вас, как имплементировать эти особенности, используя Django. Кроме этого, этот курс работает как полномасштабный ресурс для официальной документации по Django, которая находится в свободном доступе в сети.
Интересно? Отлично! Приготовьтесь к поездке, и я гарантирую, что это будет весело и интересно одновременно.
Контрольные вопросы
Упражнения
Упражнение 1.
Составьте сводную таблицу с характеристиками баз данных, поддерживаемых Django
Упражнение 2.
Используя интернет-источники, составьте список особенностей Django, не перечисленных в данной лекции
Упражнение 3.
Пользуясь ресурсами сети Интернет, составьте сравнительную таблицу веб-фреймворков, альтернативных Django
Упражнение 4.
Найдите примеры сервисов, основанных на Django, не описанных в данной главе
Список тем рефератов
Краткие итоги
Цель лекции: Узнать о новейших достижениях веб-разработки; узнать о том, что представляет собой Django; узнать о стандартных возможностях Django; узнать о поддерживаемых базах данных; ознакомиться с планом на следующие лекции
Ключевые термины: Django, веб, шаблон, MVC, SQLite, окружение, разработка, ORM, система, база, фреймворк, open source, сервис, данные,
Добро пожаловать в разработку на Django!
Django – это фреймворк для веб-разработки, а веб-разработка - это навык. Чтобы прокачать какой-либо навык, можно следовать известному правилу "10000 часов", согласно которому, если вы потратили определенное время на отработку какого-либо навыка, то непременно станете экспертом.
Но даже при наличии времени без четкого плана все может пойти не так. Совсем не так.
Итак, как же лучше достигнуть своей цели? Разбить основную задачу на подзадачи, и оттачивать до мастерства навык в каждой из них. (Программисты называют это правило "разделяй и властвуй". Вам нужно выделить промежуточные навыки, чтобы затем научиться им. Чем более обращаться мысленно к промежуточным навыкам, тем более важно стать мастером.
Так как вы решили выучить новый навык, я как автор этой книги должен сделать замечание, что вы уткнетесь в книгу в те первые часы, когда Вами овладеет подавленность. Подавленность случится, когда вы выучите новую вещь., и поверьте мне: когда вы чувствуете, что все настолько просто, вы делаете все правильно.
Веб-сайт создает первое впечатление о компании или продукте непосредственно в глазах аудитории. Каждый стартап теперь имеет свой сайт, который помогает донести свою идею до потенциальных клиентов или инвесторов.
Все теперь в сети; вместо того, чтобы сидеть и созерцать изменения, не лучше ли присоединиться и научиться писать код для них? Изучение веб-разработки – одна из самых ценных инвестиций, которые вы можете сделать с помощью своего времени. Это не только поможет найти лучшую работу, но и даст способности воплотить вашу идею в прототип в простой и прямолинейной манере.
Необходимые ингредиенты для веб-разработки включают пользовательский интерфейс и пользовательский опыт, но к несчастью наша книга не об этом.
Веб-разработка совершила большой прогресс за последние годы. Вот некоторые из достижений:
В этом курсе вы научитесь использовать модель-представление-контроллер (MVC) веб-феймворка Django, написанного на Python, мощном и популярном языке программирования.
MVC работает на идее разделенного представления. Идея, стоящая за разделенной презентацией – это создание четкого разделения между объектами домена, которые моделируют наше представление реального мира, и объектами представления, являющимися элементами пользовательского интерфейса(UI), которые мы видим на экране. Объекты домена должны полностью работать без отсылки к представлению или логике привязки данных(контроллер). Они должны быть также способны поддерживать множество представлений, возможно случайных.
Преимущества этого шаблона очевидны. С ним дизайнеры могут работать над интерфейсом, не беспокоясь о хранении данных или управлении ими. А разработчики способны программировать логику привязки данных, не вдаваясь в детали представления. Как результат, шаблон MVC быстро нашел свой путь среди веб-языков, и серьезные веб-разработчики стали использовать его поверх старых техник.
Эта книга сосредоточена на использовании Django и Python для создания микроблогингового Веб 2.0 веб-приложения со множеством обычных для сегодняшнего дня особенностей, которые можно найти на сайтах, созданных по методике Веб 2.0. Эта книга следует обучающим стилем, когда представляет концепции и объясняет решение проблем. Это не означает, что это справочник ссылок на Python и Django. Книга лишь аккумулирует знания о стандартах веб-технологий (HTML и CSS) и языке программирования Python для дальнейшей работы. Django, с другой стороны, объясняет, как мы создаем особенности, по главам, для достижения конечной цели – работающего приложения Веб 2.0.
Django поддерживает многоязыковые веб-сайты через собственную встроенную систему локализации. Это может быть очень ценно для тех, кто работает с веб-сайтами на более чем одном языке. Система делает перевод интерфейса очень простым занятием.
С тех пор, как MVC шаблон получил широкое распространение в веб-разработке, непохожий на большинство других языков Python с удовольствием выбрали, когда он только появился в веб-фреймворках. Хотя такой выбор одного из многих может на первый взгляд смутить, некоторые фреймворки могут стать хорошим подспорьем для сообщества Python.
Django один из доступных фреймворков для Python, и только один вопрос: что он в себе содержит такого, что он стал темой этой книги?
Во-первых, Django содержит набор тесно связанных компонентов. Все эти компоненты были разработаны самой командой разработки Django. Django изначально был фреймворком "для себя" и предназначался для управления серией ориентированных на новости сайтов. Позже его код был опубликован в Интернете, и команда Django стала развивать его по модели Open Source. Из-за этого его происхождения, компоненты Django были спроектированы для интеграции, многократного использования, и скорости с самого начала.
Компонент базы данных Django, объектно-реляционное отображение(ORM), перекидывает мостик между моделью данных и движком базы данных. Он поддерживает огромное количество систем баз данных, и переключение от одного движка базы данных к другому представляет собой изменение конфигурационного файла. Это дает огромную гибкость в случае, если решение состоит в переключении с одного движка базы данных на другой. Если у вас возникли проблемы, то вы можете скачать драйвер (в виде бинарного пакета Python) здесь: http://www.lfd.uci.edu/~gohlke/pythonlibs.
Вдобавок к этому, Django предоставляет сеть окружения разработки. Она представляет легковесный сервер для разработки и тестирования. Когда включен режим отладки, то Django предоставляет тщательные и очень подробные сообщения об ошибках с большим количеством отладочной информации. Все это делает процесс изоляции и устранения багов очень легким.
Django поддерживает многоязыковые веб-сайты через собственную встроенную систему локализации. Это может быть очень ценно для тех, кто работает с веб-сайтами на более чем одном языке. Система делает перевод интерфейса очень простым занятием.
Все стандартные возможности, которые традиционно содержит веб-фреймворк, доступны в Django. Они включают в себя:
И в заключение, Django предоставляет набор интегрированных и готовых к работе компонентов с превосходной документацией, за это спасибо огромному сообществу разработчиков и пользователей. Нет ничего лучше, чем начать изучать веб-разработку, когда доступен Django!
Мы подразумеваем, что есть несколько важных причин, почему мы используем Django для лучшей веб-разработки. Некоторые из этих важных особенностей будут объяснены в следующих подразделах.
Многие компании прямо используют Django в своем производстве и с постоянными пожертвованиями от разработчиков по всему миру. Самые известные сайты включают в себя Pinterest и Quora. Это дает с полным правом считать этот веб-фреймворк идеальным.
Django следует философии языка Python "Батареи в комплекте", которая подразумевает, что Django поставляется со множеством дополнительных опций и возможностей, которые важны при решении проблем стоящих перед лицом веб-разработчика.
Django очень гибкий в вопросах его интеграции с частями модуля.
Шансы на то, что существующий популярный проект, у которого есть интерфейс прикладного программирования(API) или завершенный плагин для Django, очень малы.
Одна из самых важных частей проекта Django. Компонент базы данных Django, объектно-реляционное отображение(ORM), перекидывает мостик между моделью данных и движком базы данных. ORM-слой предоставляет такие особенности, как инкапсуляция, переносимость, безопасность и выраженность в Модальном Классе Django, который отображается на выбранную в конфигурационном файле базу данных.
В Django очень мощная и гибкая URL-система. Она позволяет определить шаблоны для URL в вашем приложении и определить Python-функции применимо к каждому шаблону.
Django поставляется с интерфейсом администрирования, который уже готов к использованию. Этот интерфейс делает управление данными вашего приложения быстрее.
Вдобавок к этому, Django предоставляет сеть окружения разработки. Она представляет легковесный сервер для разработки и тестирования. Когда включен режим отладки, то Django предоставляет тщательные и очень подробные сообщения об ошибках с большим количеством отладочной информации. Все это делает процесс изоляции и устранения багов очень легким.
В последнем релизе, версия 1.6, Django получило большие изменения, и вот некоторые из них:
Вы можете прочитать о новых добавленных особенностях в подробностях здесь: https://docs.djangoproject.com/en/1.7/releases/1.7/.
Django с большим уважением и силой относится к данным. Моделируйте данные корректно, и оставшаяся часть сайта ровнехонько займет свое место. Согласившись с тем, что Django был разработан для реляционных баз данных, так же существует и неофициальная NoSQL имплементация для Django. Вот список поддерживаемых Django реляционных баз данных:
MySQL и PostgreSQL – две основных базы данных, используемых в сообществе Django, а самой популярной в сообществе Django является PostgreSQL
В этом курсе мы будем в основном иметь дело с тремя базами данных из вышеперечисленного списка, но имплементация других может быть практически идентична с минимальными изменениями в конфигурации.
Есть много известных сайтов, базирующихся на Django. Вот некоторые из них:
Этот курс нацелен на построение веб-приложения микроблога и добавления к нему стандартных особенностей Веб 2.0. Вот некоторые из этих особенностей:
Вместо сосредоточения на обучении различным особенностям Django, этот курс использует обучающий стиль, чтобы научить вас, как имплементировать эти особенности, используя Django. Кроме этого, этот курс работает как полномасштабный ресурс для официальной документации по Django, которая находится в свободном доступе в сети.
Интересно? Отлично! Приготовьтесь к поездке, и я гарантирую, что это будет весело и интересно одновременно.
Контрольные вопросы
Упражнения
Упражнение 1.
Составьте сводную таблицу с характеристиками баз данных, поддерживаемых Django
Упражнение 2.
Используя интернет-источники, составьте список особенностей Django, не перечисленных в данной лекции
Упражнение 3.
Пользуясь ресурсами сети Интернет, составьте сравнительную таблицу веб-фреймворков, альтернативных Django
Упражнение 4.
Найдите примеры сервисов, основанных на Django, не описанных в данной главе
Список тем рефератов
Краткие итоги
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.