Skip to content

Latest commit

 

History

History
13 lines (12 loc) · 5.17 KB

README_DEV.md

File metadata and controls

13 lines (12 loc) · 5.17 KB

При внесении дополнений/изменений в код, просьба придерживаться общей нотации проекта: Название классов с большой буквы. Название переменных и функций – с маленькой, с использованием _.

Приветствуются следующие виды контрибуции:

  1. Перевод. Как перевод комментариев и документации на другие языки, так и перевод названий количественных характеристик и UI. Комментарии можно дублировать прямо в коде. Для добавления перевода названий количественных характеристик используйте класс Names в модуле Analyse. (https://github.com/AI-group-72/FAEyeTON/blob/main/EyeTrackFatigue/Analise/Names.py). Продублируйте функцию eng_to_eng, переименуйте для соответствия выбранному языку перевода, и укажите корректные названия для указанных метрик. Для перевода UI можете создать аналогичный пакет, либо откопировать файлы EvalApp и DataGather для создания отдельной версии приложения.
  2. Документирование/Ревью. Выполняя ревью кода при его изучении/использовании, не стесняйтесь делиться вашими записями в коммитах. Это позволит дополнить документацию и сопровождение кода комментариями.
  3. Баги/ошибки. При возникновении багов во время работы с программой, пожалуйста, подробно опишите ситуацию, в которой он возник. При нахождении решения самостоятельно, выполните соответствующий коммит, сопровождаемый описанием бага и решения. Если решить проблему не получается, внесите описание бага в файл (https://github.com/AI-group-72/FAEyeTON/blob/main/Meta/issues.txt). Там же можно посмотреть текущие баги и их описание, при желании попробовать разрешить их.
  4. Оптимизация. Если вы находите узкое место, либо просто неэффективно реализуемый функционал, и знаете, как выполнить его эффективнее – пожалуйста, сделайте это. При этом сопроводите ваш коммит операционной или временной оценкой старой и новой версии алгоритма.
  5. Тестирование. Основной функционал отдельных модулей тестируется в файлах init.py соответствующего модуля. Отдельные тесты системы в целом выведены в папку Мета (https://github.com/AI-group-72/FAEyeTON/tree/main/Meta). Вы можете воспользоваться этими тестами, для проверки работоспособности библиотеки на вашем оборудовании/в вашей системе. Написание дополнительных тестов приветствуется, их можно также располагать либо в соответствующих модулей, либо в папке Мета.
  6. Добавление Классификаторов. Библиотека поддерживает возможность реализации дополнительных классификаторов. Таковые следует реализовывать в отдельных файлах в модуле Evaluate (https://github.com/AI-group-72/FAEyeTON/tree/main/EyeTrackFatigue/Evaluate), с наследованием класса Evaluator и переопределением его метода evaluate, классифицирующего отрезок данных по наличию/отсутствию усталости.
  7. Добавление Данных. Библиотека может работать с различными данными. Возможно добавление новых метрик от тех же данных, путём их вычисления в классе ParsedData (https://github.com/AI-group-72/FAEyeTON/blob/main/EyeTrackFatigue/Analise/ParsedData.py). Ввод и предварительная обработка данных выполняется в модуле Input. Для адаптации библиотеки к другим форматам данных необходимо внести изменения в модули Input и DeviceManager.