Подборка @pythonetc, март 2019

Это десятая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки.
0_0
0_0 — полностью корректное выражение на Python.Пользователь

0_0 — полностью корректное выражение на Python.
0_0 is a totally valid Python expression.









Это четвёртая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:



Привет. Я веду авторский канал @pythonetc с советами про Python в частности и про программирование в целом. С этого месяца мы запускаем серию подборок с лучшими постами за месяц в переводе на русский.

© Клип "Gangnam Style"
С ростом этажности наших городов всё больше людей ежедневно пользуется лифтами. Но мало кто из нас задумывается о том, как всё это лифтовое поголовье умудряется более-менее эффективно развозить в течение дня уйму людей, особенно в часы пик. Существует ряд алгоритмов движения лифтов, которые исходят из разных условий — например минимизации времени ожидания лифта. Но давайте подумаем, как можно разработать лифтовый алгоритм.
Все мы не раз слышали о test-first — философии разработки, которая призывает писать тесты раньше кода. Уверен, что любой, кто пытался применять этот метод на практике, сталкивался с тем, что у него просто не получается написать тест до функции (обычно в этом случае просто игнорируют эту проблему и локально нарушают test-first). Я считаю, что причина подобных провалов фундаментальна, и попытаюсь показать почему.