'

Django: инструкция по применению

Понравилась презентация – покажи это...





Слайд 0

Django: инструкция по применению KharkivPy #1 23 ноября 2011 Колодяжный Иван 1 из 21


Слайд 1

Django: инструкция по не применению KharkivPy #1 23 ноября 2011 Колодяжный Иван 2 из 21


Слайд 2

Существует 2 способа использовать Django KharkivPy #1 3 из 22


Слайд 3

Алгоритм работы с Django Пункт #1. Берем Django Пункт #2. Берем напильник KharkivPy #1 4 из 22


Слайд 4

Алгоритм работы с Django Пункт #1. Берем Django Пункт #2. Берем напильник Пункт #n. Пользуемcя и радуемся жизни KharkivPy #1 3 из 22


Слайд 5

Алгоритм работы с Django (ver.2) Пункт #1. Берем Django Пункт #2. Берем напильник … KharkivPy #1 4 из 22


Слайд 6

Алгоритм работы с Django (ver.2) Пункт #1. Берем Django Пункт #2. Берем напильник … Пункт #n. Выбрасываем Django. KharkivPy #1 4 из 22


Слайд 7

Алгоритм работы с Django (ver.2) Пункт #1. Берем Django Пункт #2. Берем напильник … Пункт #n. Выбрасываем Django. … Пункт #m-1. Находим подходящее решение Пункт #m. Пользуемcя и радуемся жизни KharkivPy #1 4 из 22


Слайд 8

Алгоритм работы с Django (ver.2.1) Пункт #1. Помним о Django Пункт #2. Понимаем что он нам не подходит Пункт #3. Находим подходящее решение Пункт #3. Пользуемcя и радуемся жизни KharkivPy #1 5 из 22


Слайд 9

Когда нам подходит Django Нужен опыт с Django Нужно быстро сделать сайт с админкой Есть хорошее готовое приложение/модуль для Django Стандартного ORM вполне достаточно Какие-то из модулей Django очень хорошо подходят для текущей задачи Нужно сделать что-то очень быстро и нет опыта с другими фреймворками. KharkivPy #1 6 из 22


Слайд 10

Когда нам подходит Django Создание CMS Создать приложение на основе готового KharkivPy #1 7 из 22


Слайд 11

Создание CMS Admin site Authentication Comments E-mail Flat pages Pagination Redirects Site map Static files Syndication feeds Validators KharkivPy #1 8 из 22


Слайд 12

Когда нам не подходит Django Нет взаимодействия с базой данных Отсутствует presentation layer Замена большей части стандартных компонентов Использование NoSQL, GAE KharkivPy #1 9 из 22


Слайд 13

Веб приложение без доступа к БД KharkivPy #1 10 из 22


Слайд 14

Веб приложение без доступа к БД Удаляем models.py Реализовываем доступ к данным (REST, чтение из файлов и т.д) Забываем про ModelForms KharkivPy #1 10 из 22


Слайд 15

Веб приложение без доступа к БД Стандартная аутентификация/авторизация не подходит Вслед за этим пишем свою админку KharkivPy #1 11 из 22


Слайд 16

Веб приложение без доступа к БД Стандартная аутентификация/авторизация не подходит Вслед за этим пишем свою админку KharkivPy #1 11 из 22


Слайд 17

Веб приложение без доступа к БД Выбрасываем django Берем небольшой веб-фреймворк (например, flask) Пишем нужную нам логику Не думаем о том, что что-либо в используемом фреймворке нам нельзя использовать KharkivPy #1 12 из 22


Слайд 18

Веб приложение без доступа к БД Нет ненужно когда Размер приложение, как правило, становится меньше KharkivPy #1 13 из 22


Слайд 19

Веб приложение без доступа к БД Нет ненужно когда Размер приложение, как правило, становится меньше KharkivPy #1 13 из 22


Слайд 20

Отсутствует GUI (REST-сервис, COMET-сервер) Шаблоны не нужны «Тяжелые» запросы плохо подходят для COMET Многопоточность «из коробки» - использование threading Non-blocking I/O? KharkivPy #1 14 из 22


Слайд 21

Отсутствует GUI (REST-сервис, COMET-сервер) Использование инструментов, предназначенных для таких задач KharkivPy #1 15 из 22


Слайд 22

Отсутствует GUI (REST-сервис, COMET-сервер) Использование инструментов, предназначенных для таких задач KharkivPy #1 15 из 22


Слайд 23

Замена большей части стандартных компонентов Выбросить стандартный ORM Использовать другой template engine Попытаться это все интегрировать и родную инфраструктуры (form views, admin site) KharkivPy #1 16 из 22


Слайд 24

Замена большей части стандартных компонентов Выбросить стандартный ORM Использовать другой template engine Попытаться это все интегрировать и родную инфраструктуры (form views, admin site) KharkivPy #1 16 из 22


Слайд 25

Принцип Парето 20/80 80% времени переписывается стандартный функционал Замена большей части стандартных компонентов KharkivPy #1 17 из 22


Слайд 26

Замена большей части стандартных компонентов Принцип Парето 20/80 80% времени переписывается стандартный функционал KharkivPy #1 17 из 22


Слайд 27

Замена большей части стандартных компонентов Принцип Парето 20/80 80% времени переписывается стандартный функционал Еще 80% времени - исправление багов KharkivPy #1 17 из 22


Слайд 28

Замена большей части стандартных компонентов Принцип Парето 20/80 80% пишем сами 20% есть в Django KharkivPy #1 18 из 22


Слайд 29

Замена большей части стандартных компонентов Принцип Парето 20/80 80% пишем сами 20% есть в Django Зачем нам Django? KharkivPy #1 18 из 22


Слайд 30

Использование NoSQL Используем стандартный API для ORM Используем django nonrel Используем почти всю django инфраструктуру но: - помним про join - готовимся делать патчи для django nonrel KharkivPy #1 19 из 22


Слайд 31

Использование NoSQL Используем модуль для работы с нужной NoSQL БД Отказываемся от всей Django инфраструктуры Задумываемся о целесообразности использования Django KharkivPy #1 20 из 22


Слайд 32

KharkivPy #1 21 из 22


Слайд 33

Спасибо Skype: e0ne-user Blog: http://blog.e0ne.info/ KharkivPy #1 22 из 22 E-mail: e0ne@e0ne.info Twitter: @e0ne


×

HTML:





Ссылка: