Comments 18
Зачем писать зависимости в readme, если для этого есть requirements.txt, lock-файлы etc.?
Спасибо за комментарий) Я там указал что речь идет не о pip зависимостях и т.д., а об окружении, которое необходимо для запуска проекта. Конечно перечислять используемые библиотеки\пакеты скорее всего будет лишним. Так же этот пункт опционален, и каждый сам должен определить о чем необходимо написать, чтобы не было проблем с запуском.
А где же solid и ddd?
Я бы обязательно еще упомянул про менеджер версий питона - какой нибудь pyenv, чтобы в случае чего можно было быстро и легко переключаться между версиями. Про какой нибудь Pipenv для быстрой настройки виртуального окружения и установки зависимостей (с помощью Pipfile).
Ну и насчет индексов - индексировать как раз нужно столбцы, участвующие в фильтрах (условиях where ... ), просто про них обычно и забывают. А уникальные поля и так будут проиндексированы по умолчанию.
А где в структуре должна располагаться папка с ресурсами?
Уточни пожалуйста о каких ресурсах речь? Если исходный код, то в примере структуры папка src находится в корне проекта.
Могу предложить, что комментатор ввиду, например, картинки/видео и др. В python backend реально почти не сталкивался с этим) но из опыта разработки на Java и php могу сказать, что папка res/ обычно располагается в корне проекта, а ресурсы в ней разделены либо по типам (res/documents, res/images), либо по тематике (например, res/pages/contact, res/uploads/hdjdjehhd.pdf) в зависимости от приложения. Если это игра, то проще разделять по типам. Если проект большой - по тематике. Это из личного опыта, если кто не согласен, или в питоне другие правила - пишите, самому интересно
enams
- это enums
имеются в виду, видимо? )
Орфографию, всё же желательно проверять перед публикацией.
Советы дельные, пригодятся не только для тестовых, но и для пет проектов и рабочих проектов.
С силидом я бы был осторожен, его все понимают по разному. Если фреймворки использовать то не всегда они с силидом совместимы.
Кроме линтера ещё стоит прикрутить форматер и статический анализ. ruff и mypy хорошо работают вместе. Для пет проектов лучше настройки в максимум выкрутить, потратите время, но многому научитесь.
Благодарю за статью. Особенно за пример структуры с описанием папок. Взял, как пример для основы проекта.
Как правильно делать тестовые задания на Python (flask, fastapi)