scan, split, OCR, prepare for LLM
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

CODE_STYLE.md 1.6KB

Стиль кода

Язык

Python 3.12+


Типизация

Полная типизация обязательна.

Избегать использования Any.


Размер функций

Желательно не более 40 строк.

Максимум около 80 строк.

Если функция становится длиннее — разделить её.


Размер файлов

Желательно до 300 строк.

Максимум около 500 строк.


Именование

Использовать понятные имена.

Хорошо:

load_image()

split_grid()

rotate_image()

add_border()

Плохо:

proc()

run2()

tmp()


Глобальное состояние

Не использовать глобальные переменные.

Не использовать Singleton.


Магические числа

Все значения должны быть вынесены в именованные константы либо параметры функций.


Ошибки

Использовать исключения.

CLI должен завершаться ненулевым кодом возврата.

Сообщения должны быть понятны пользователю.


Логирование

Использовать logging.

Не использовать print() для отладки.


Качество

Следовать PEP8.

Использовать Ruff.

Не оставлять:

  • закомментированный код;
  • неиспользуемый код;
  • TODO без объяснения.