| idec.talks | HOME |
| >> Особенно что касается стиля, так как хороший стиль чужими патчами не выработаешь =) Difrex> Ок, по стилю :) Difrex> Общие рекомендации: Difrex> * Код должен быть по PEP8. Уже переделал этот момент. Difrex> * Хорошо бы иметь краткий докстринг в каждой функции -- это полезно, для того, чтобы Difrex> сразу понимать, что эта функция делает, для показа доков в Емаксе и для автогенерации Difrex> документации на код в том же Sphynx. У меня, например, настроена CI так, что ПР, где Difrex> нет докстрингов, не принимаются. Это у меня в TODO было давно =) Difrex> * Никогда не импортировать * из модулей. Да. Я уже усвоил это. Если импортировать только нужное, то получается гораздо нагляднее и безопаснее. Difrex> * Не переопределять имена функций в переменные. Что я имею в виду: Difrex> В файле points.py(а возможно и в других, не копал еще сильно) есть функция `hsh()', Difrex> которая генерирует authstring. Так вот в нескольких других местах ты создаешь строковые Difrex> переменные с таким же именем. Это может привести к неочевидным последствиям. Этот момент я ещё не проработал, но ошибка весьма очевидна, если подумать. Спасибо =) Difrex> * Использование python-black по желанию -- это бескомпромиссный форматировщик кода. Difrex> Работает четко и круто. Пока я просто прогнал все файлы через pep8 и исправил все замечания. Ну и форматирование исправил с оператора форматирование на метод форматирования. Правда пока не тестировал чего я там наделал, зато исправил пару критичных багов попутно =) Difrex> Как облегчить себе жизнь и ваще не париться по поводу стиля: Difrex> Ставишь из своих репов autopep8, flake8, python-black, pip. Difrex> Настраиваешь Емакс: https://paste.lessmore.pw/hojecuqece.lisp Difrex> Теперь всю работу по форматированию кода, а так же комплиту, прыжкам в методы, и.т.д будет делать Difrex> за тебя GNU Emacs :) Как раз собирался гуглить как это сделать. GNU Emacs это сила =) Спасибо за полезные советы и рекомендации. Давно пора было мне упорядочить свой стиль и перестать разводить бардак в коде. |