- Познакомиться c распределенной системой контроля версий кода Git и ее функциями;
- Познакомиться с понятиями «непрерывная интеграция» (CI) и «непрерывное развертывание» (CD), определить их место в современной разработке программного обеспечения;
- Получить навыки разработки ООП-программ и написания модульных тестов к ним на современных языках программирования;
- Получить навыки работы с системой Git для хранения и управления версиями ПО;
- Получить навыки управления автоматизированным тестированием программного обеспечения, расположенного в системе Git, с помощью инструмента GitHub Actions.
- Выберите для Вашего проекта тип лицензии и добавьте файл с лицензией в проект.
- Добавьте в проект файл .gitignore и сформируйте его содержимое.
- Добавьте в проект еще один класс – наследник класса DataReader, который должен обрабатывать входной файл определенного формата (согласно индивидуальному варианту, см. таблицу). Составьте модульные тесты для методов этого класса, постарайтесь покрыть тестами максимально возможный объем кода. Для работы с этим заданием создайте новую ветку кода на основе главной и фиксируйте в нее весь программный код в процессе разработки. Добейтесь выполнения всех тестов проекта, после чего объедините текущую ветку кода с главной.
- Добавьте в проект класс, реализующий расчет определенных характеристик студентов (согласно индивидуальному варианту, см. таблицу). Составьте модульные тесты для методов этого класса, постарайтесь покрыть тестами максимально возможный объем кода. Для работы с этим заданием создайте новую ветку кода на основе главной и фиксируйте в нее весь программный код в процессе разработки. Добейтесь выполнения всех тестов проекта, после чего объедините текущую ветку кода с главной.
- Составьте UML-диаграмму классов итогового проекта.
- Проанализируйте полученные результаты и сделайте выводы.
Данный проект посвящен разработке программы, способной анализировать студенческие оценки и вычислять рейтинги. В ходе работы был реализован класс, который обрабатывает данные о студентах в формате YAML и выводит информацию о студентах, имеющих минимальные оценки 76 баллов по как минимум 3 дисциплинам. В случае отсутствия таких студентов, программа уведомляет об этом.
- Язык программирования: Python 3.10
- Библиотеки: pycodestyle, pytest, argparse, sys, yaml
- Используемые технологии: Git, GitHub Actions
- YAML
- Определить и вывести на экран студента, имеющего 76 баллов минимум по трем дисциплинам. Если таких студентов несколько, нужно вывести любого из них. Если таких студентов нет, необходимо вывести сообщение об их отсутствии.
В процессе работы были рассмотрены ключевые инструменты для разработки программного обеспечения, включая систему управления версиями Git, методы непрерывной интеграции и развертывания, объектно-ориентированное программирование (ООП) и модульное тестирование. Изучено применение GitHub Actions для автоматизации тестирования программного обеспечения. В результате была создана система, которая анализирует студенческие оценки, вычисляет рейтинги и определяет студентов с выдающимися результатами.


