Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2019-04-08 06:10:28
Size: 1464
Editor: FrBrGeorge
Comment:
Revision 6 as of 2019-05-21 12:57:23
Size: 3376
Editor: FrBrGeorge
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
 * который я могу склонировать и запустить
 * в котором есть более одного участника, и я могу посмотреть статистику участия
 * который я могу ''установить'' (любым предложенным вами ''кроссплатформенным'' способом) и запустить
  * предпочтительно `wheel`
 * в котором есть более одного участника, и я могу посмотреть статистику участия (оба предложенных ниже измерения неидеальны, я это знаю)
  * по количество коммитов
  * по объёму кода
 * в котором `flake8` (или `pylint`) находит не больше 5 ошибок (некоторые требования можно запрещать в config-файле)
Line 5: Line 9:
  * должны быть покрыты модульными тестами все функции и классы, не использующие интерактивные возможности (т. е не GUI, не сетевое взаимодействие и т. п.)
  * таких функций/классов должно быть не менее 5
Line 6: Line 12:
  * программной (с использованием любого фреймворка, годится встроенный питоний, но можно и sphinx)
  * пользовательской (либо sphinx, либо прямо на GH)
  * описание проекта в README.md и постановка задачи на GH
 * в котором есть немножко локализации (с теми же оговорками)
  * описание проекта в README (в случае !GitHub — README.md) и постановка задачи на GH
   * В случае GUI — проект интерфейса
    . не обязательно полностью совпадающий с тем, что получилось
    . достаточно детальный, чтобы было понятно, какой блок виджетов из чего состоит и за что отвечает
    . можно в виде картинки с исходниками из какого-то диаграммера, а можно и просто фоточки нарисованного от руки
  * /!\ (по возможности) программной (с использованием любого фреймворка, годится встроенный питоний, но можно и sphinx)
  * /!\ (по возможности) пользовательской (либо sphinx, либо прямо на GH)
 * в котором есть немножко локализации (с теми же оговорками по части фреймворков)
  * с использованием gettext или babel
  * обратите внимание на то, что, например, -`.mo` файлы надо сгенерировать и положить в дистрибутив вашего проекта (например, в wheel, как в лекциях)

Семестровый проект — это git-репозиторий с кодом на Python3,

  • который я могу установить (любым предложенным вами кроссплатформенным способом) и запустить

    • предпочтительно wheel

  • в котором есть более одного участника, и я могу посмотреть статистику участия (оба предложенных ниже измерения неидеальны, я это знаю)
    • по количество коммитов
    • по объёму кода
  • в котором flake8 (или pylint) находит не больше 5 ошибок (некоторые требования можно запрещать в config-файле)

  • в котором есть немножко тестов (с использованием любого тест-фреймворка, годится встроенный питоний)
    • должны быть покрыты модульными тестами все функции и классы, не использующие интерактивные возможности (т. е не GUI, не сетевое взаимодействие и т. п.)
    • таких функций/классов должно быть не менее 5
  • в котором есть немножко документации
    • описание проекта в README (в случае GitHub — README.md) и постановка задачи на GH

      • В случае GUI — проект интерфейса
        • не обязательно полностью совпадающий с тем, что получилось
        • достаточно детальный, чтобы было понятно, какой блок виджетов из чего состоит и за что отвечает
        • можно в виде картинки с исходниками из какого-то диаграммера, а можно и просто фоточки нарисованного от руки
    • /!\ (по возможности) программной (с использованием любого фреймворка, годится встроенный питоний, но можно и sphinx)

    • /!\ (по возможности) пользовательской (либо sphinx, либо прямо на GH)

  • в котором есть немножко локализации (с теми же оговорками по части фреймворков)
    • с использованием gettext или babel
    • обратите внимание на то, что, например, -.mo файлы надо сгенерировать и положить в дистрибутив вашего проекта (например, в wheel, как в лекциях)

Немножко — это реально немножко, чтобы я видел, что работа проделана. Например, если вы задумали какое-то приложение из реал лайфа, и в нём довольно много логики, обмазать всю её тестами будет долго. Но пяток должен быть.

LecturesCMC/PythonDevelopment2019/GraduateProject (last edited 2019-05-21 12:57:23 by FrBrGeorge)