Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Python & Enterprise

No description
by

Nikolay Telepenin

on 25 April 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Python & Enterprise

Python & Enterprise
Трудности перевода
Телепенин Николай
Piter Py 2014
Основная задача разработки ПО
Управление сложностью
sentry
Использование слабой связности
сигналы
observer (наблюдатель)
amqp-сообщения
IoC, DI
service bus (интеграционная шина)
Сверхвысокие нагрузки
(с) Стив Макконнел, Совершенный Код
The Zen of Python
Красивое лучше, чем уродливое.
Явное лучше, чем неявное.
Простое лучше, чем сложное.

Ошибки никогда не должны замалчиваться.

Должен существовать один — и, желательно, только один — очевидный способ сделать это.

Тестирование
План обновления
Deployment on production
ftp
ssh/scp
clone repository
fabric
pip-пакеты
deb/rpm/msi-пакеты
docker-контейнеры
salt stack/puppet/chef
UI
(selenium)
Business logic
(Gherkin, behave)
Unit
(nose, unittest)
Интеграционные
(webtest)
Continius Integration
Jenkins
travis-ci
Типичное django приложение
Рост сложности
Увеличение кодовой базы
Увеличение функционала
Увеличение пользователей
Сложная бизнес-логика

Борьба со сложностью
Templates смешивают данные и код
API
Слоистая архитектура
Слабая связность
Разделяй и властвуй (клиент - сервер)
Тесты, тесты, тесты
DjangoGraphviz
Проблемы проектирования СУБД
Пока все в порядке
Что-то пошло не так
Разброд и шатания
Если вы только начинаете
Почти сразу
Еще немного погодя
mod_python
Когда M-V-T не хватает
Уровень экшенов
Уровень сервисов
Уровень репозиториев
JSON API
RESTful
Бизнес-логика
SOAP
Работа с БД
dev server
View
Уровень экшенов
Уровень сервисов
Уровень репозиториев
JSON API
RESTful
Бизнес-логика
SOAP
Работа с БД
View
Это не решит ваших проблем, но поможет их найти
Вопросы?
mailto: telepenin.nikolay@gmail.com
twitter: @_prefer
skype: aka_prefer
опыт в python'e более 4-х лет
опыт в разработке ПО более 7 лет
по совместительству ведущий архитектор в БАРС Груп
Обо мне
Full transcript