Two Scoops of Django / Двойное мороженное из Django: Введение
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Наша цель при написании этой книги в том, чтобы записать все неписаные советы, приемы и общепринятую практику, которой мы научились за все годы работы с Django. lirikne 21.06.13 в 21:10 |
|
|
Когда писалась книга, мы думали о себе как о писателях, представляя как люди воспринимают обычные знания и записывали их с помощью простых примеров. lirikne 22.06.13 в 07:36 |
||
|
Слово о наших рекомендациях. lirikne 22.06.13 в 07:37 |
||
|
Как и в официальной документации Django, в этой книге рассказывается, как сделать что-то в Django, показаны различные сценарии и примеры кода. lirikne 22.06.13 в 07:41 |
||
|
Но в отличие от документации Django, эта книга рекомендует определенный стиль кода, паттерны проектирования и выбор библиотек. Хотя разработчики ядра Django могут согласиться с некоторыми или многими из этих вариантов, имейте в виду, что наши рекомендации являются лишь личным мнением, сформированным годами работы с Django. lirikne 22.06.13 в 07:52 |
||
|
На протяжении этой книги мы пропагандируем определенные методы и подходы, которые мы считаем лучшими. Мы также выражаем наши личные предпочтения к определенным инструментам и библиотекам. lirikne 22.06.13 в 09:59 |
||
|
Иногда мы отклоняемся от общей практики, если считаем считаем что-то не оптимальным (антипатерном). В большинстве случаев, когда такое случается, мы стараемся быть вежливым и уважать труд авторов.Но есть немногие случаи, когда это нам не удается Все это сделано в интересах того, чтобы помочь вам избежать опасных подводных камней. lirikne 22.06.13 в 10:10 |
||
|
Мы приложили все усилия, чтобы дать продуманные рекомендации и убедиться в том, что наши методы качественные. Мы подвергли себя суровой и нервной критике разработчиков ядра Django, которых мы очень уважаем. Эту книгу проверили больше рецензентов чем обычную среднестатистическую книгу, потратив бесчисленное количество часов. Но, как говорится, всегда есть возможность ошибки или неточности. Также существует возможность того, что возникнут лучшие практики, чем те, что описаны здесь. lirikne 22.06.13 в 09:39 |
||
|
Мы полны решимости развивать и улучшать эту книгу. Если вы видите какой-либо прием, с которым вы не согласны или что-нибудь, что можно сделать лучше, мы смиренно просим вас выслать нам ваши предложения, как сделать это лучше. lirikne 22.06.13 в 10:35 |
||
|
Пожалуйста, не стесняйтесь сообщить нам, что можно улучшить. Мы примем ваши отзывы конструктивно. Если это не критично, мы будем посылать сообщения об опечатках или обновленную версию читателям как можно скорее и без затрат. lirikne 22.06.13 в 10:37 |
||
|
Почему Двойное мороженное из Django? lirikne 22.06.13 в 10:38 |
||
|
Как и большинство людей, мы, авторы этой книги, любим мороженое. Каждым субботним вечером мы забываем о правильном питании и балуем себя мороженым. Никому не говорите, но иногда это случается не в субботние вечера lirikne 22.06.13 в 10:44 |
||
|
Нам нравится пробовать новые вкусы и сравнивать их с нашими любимыми. Отслеживание этого вкусового прогресса и, возможно, создание клуба вокруг него, является отличной метафорой проекта Django. lirikne 22.06.13 в 10:47 |
||
|
Когда нам действительно нравится вкус, это вызывает улыбку на лице, как когда мы находим большой лакомые куски кода или рекомендаций в технической книге. Одной из задач этой книги - написать такую техническую книгу, которая заставит улыбнуться читателя, словно он ест мороженное. lirikne 22.06.13 в 10:54 |
||
|
Круче всего, что используя аналогию c мороженным, это позволило нам прийти к еще более ярким примерам кода. Мы получили много удовольствия, работая над книгой. А если вы увидите, что мы переусердствовали с мороженым и здесь и там, пожалуйста, прости нас. lirikne 22.06.13 в 10:58 |
||
|
Перед тем, как начать lirikne 22.06.13 в 10:58 |
||
|
Если вы новичок в Django, эта книга будет полезна, но и большая часть будет сложной для вас. Для использования этой книги в полной мере, вы должны иметь представление о языке программирования Python и, как минимум, пройти через 5 стр. Django учебника: https://docs.djangoproject.com/en/1.5/intro/tutorial01/. lirikne 22.06.13 в 11:09 |
||
|
Книга предназначена для Django 1.5 и Python 2.7.x lirikne 22.06.13 в 11:09 |
||
|
Также эта книга должна быть актуально для Django 1.4 версии, и в меньшей степени для Django 1.3, и так далее. Хотя мы не даем никаких обещаний в отношении функциональной совместимости, но по крайней мере, общие подходы из примеров этой книги подойдут для каждой версии Django выше 1.0. lirikne 22.06.13 в 11:11 |
||
|
Что касается версии Python, эта книга опирается на Python 2.7.x. Мы надеемся выпустить обновленную редакцию еще раз, как только Django сообщество начинает двигаться в сторону Python 3.3 (или выше). lirikne 22.06.13 в 11:12 |
||
|
Ничто в этой книге, включая нашу практику, примеры кода и библиотек не относятся к Google App Engine (GAE). Если вы пытаетесь использовать эту книгу как справочник для разработки в GAE, вы, возможно, столкнетесь с проблемами. lirikne 22.06.13 в 11:13 |
||
|
Каждая глава не связанна с другими lirikne 22.06.13 в 11:26 |
||
|
В отличие от учебников и практичных книг, где каждая глава основывается на предыдущей главе проекта, мы написали эту книгу таким образом, что каждая глава намеренно стоит особняком. lirikne 22.06.13 в 11:26 |
||
|
Мы сделали это для того, чтобы было просто открыть главу, посвященную конкретной теме при необходимости, когда вы работаете над проектом. lirikne 22.06.13 в 11:27 |
||
|
Примеры, приведенные в каждой главе, являются полностью независимыми. Они не должны быть объединены в один проект. Считаются полезными изолированные фрагменты, которые иллюстрируют и помогают при различных сценариях написания кода. lirikne 22.06.13 в 11:31 |
||
|
Условные обозначения, используемые в этой книге. lirikne 22.06.13 в 11:31 |
||
|
Блоки кода, как в следующий, используются на протяжении всей книги: lirikne 22.06.13 в 11:31 |
||
|
Exemple 0.1 lirikne 22.06.13 в 11:32 |
||
|
Чтобы сохранить компактность этих фрагментов, мы иногда нарушают соглашение PEP8 о комментариях и межстрочный интервал. lirikne 22.06.13 в 11:33 |
||
|
Специальные “НЕ ДЕЛАЙ ТАК!” блоки кода, как указывают следующие примеры плохой код, который вы должны избегать: lirikne 22.06.13 в 11:43 |
||
|
Bad Exemple 0.1 lirikne 22.06.13 в 11:46 |
||
|
Мы будем использовать следующие условные обозначения на протяжении всей книги: lirikne 22.06.13 в 11:50 |
||
|
Блок, содержащий заметки, предупреждения, советы и небольшие анекдоты, которые тоже содержатся в этой книге lirikne 22.06.13 в 12:15 |
||
|
ВНИМАНИЕ: Какие-то опасные подводные камни lirikne 22.06.13 в 12:16 |
||
|
СОВЕТ О ПАКЕТАХ: Некоторые Полезные Рекоомендации о Пакетах Django lirikne 22.06.13 в 12:51 |
||
|
#Тут не возможно отредактировать это таблицей, поэтому не знаю что #делать. даже не буду редактировать написанное. lirikne 22.06.13 в 13:26 |
||
|
Основные Понятия lirikne 22.06.13 в 13:28 |
||
|
Келли Джонсон, один из самых известных и результативных конструкторов самолетов в истории авиации, сказал это примерно 50 лет назад. Столетиями ранее, Леонардо да Винчи имел в виду то же самое, когда он сказал : “Простота-это предел совершенства.” lirikne 22.06.13 в 13:30 |
||
|
При построении программных проектов, каждый кусок ненужной сложности затрудняет процесс добавления новых функций и сохранения старых. Пробуйте найти самое простое решение, но позаботьтесь о том, чтобы не осуществлять чрезмерно простых решений, в результате неверные предположений. lirikne 22.06.13 в 13:33 |
||
|
Толстые Модели, Вспомогательные Модули, Тонкие Отображение, Тупые Шаблоны. lirikne 22.06.13 в 13:34 |
||
|
Когда решаете куда вставить кусок кода, мы следуем подходу "Толстые Модели, Вспомогательные Модули, Тонкие Отображение, Тупые Шаблоны." lirikne 22.06.13 в 13:40 |
||
|
Мы рекомендуем, чтобы ваши ошибки были в чем угодно, но только не в представлениях и шаблонах. Результаты радуют. Код становится более ясной, самодокументируемый, менее дублирующийся, и позволяет использовать его в разных проектах. lirikne 22.06.13 в 13:45 |
||
|
Что касается шаблонных тегов и фильтров, они должны содержать так мало логики как только возможно. Мы рассмотрим это более подробно в главе 13, "Шаблоные Теги и Фильтры’. lirikne 22.06.13 в 15:23 |
||
|
Стандартное начало с Django lirikne 22.06.13 в 16:02 |
||
|
Прежде чем мы рассмотрим альтернативы для таких основных Django компонентов, как система шаблоны, различные ORM, или нереляционные базы данные, мы сначала попробуем писать с помощью Django, используя стандартные компоненты. Если мы сталкиваемся с препятствиями, мы исследуем все возможности, прежде чем менять компоненты ядра Django. lirikne 22.06.13 в 16:09 |
||
|
См. главу 14, ‘Компромиссы замены компонентов ядра" для более подробной информации. lirikne 22.06.13 в 16:09 |
||
|
Стоя на плечах гигантов lirikne 22.06.13 в 16:10 |
||
|
Хотя мы берем всю ответственность за нашу работу, мы не смеем утверждать, что практики, описанные в книге наши собственные. lirikne 02.07.13 в 18:40 |
||
|
Без всех талантливых, творческих и щедрых разработчиков, которые создают Django на Python, и лидеров open-source сообщества, эта книга не могла бы существовать. Мы очень признательны людям, которые выступали в роли наших наставников и источников информации, и мы сделали все возможное, чтобы передать ее вам. (ТУТ Я НЕ ПОНЯЛ ВООБЩЕ) lirikne 02.07.13 в 18:58 |
