Документация - Amrax232/sadykovnurgeldiev GitHub Wiki
Краткое описание проекта и его назначения.
-
Основная ветка:
main
(илиmaster
) - содержит стабильную версию. -
Ветки разработки:
develop
- для разработки новых функций,feature/*
- для отдельных фич,bugfix/*
- для исправления ошибок. -
Ветки релиза:
release/*
- для подготовки к релизу.
- Язык: C++17
- Фреймворк: Qt 6
- База данных: SQLite
- Инструменты: Docker, Doxygen, QTest
Задача | Статус |
---|---|
Обработка запросов (parse + заглушки) | Выполнено |
БД в синглтоне | Выполнено |
Поддержка нескольких клиентов | Выполнено |
Подключение БД | Выполнено |
Авторизация и регистрация | Выполнено |
Заглушки функционала | Выполнено |
Задача | Статус |
---|---|
Оконный интерфейс | Выполнено |
Клиент в синглтоне | Выполнено |
Готовый клиент | Выполнено |
- Авторизация и регистрация пользователей
- Получение заданий
- Проверка решений заданий
- Просмотр статистики (индивидуальной и общей)
- (Добавь другие ключевые функции)
- Стратегия: (Опиши кратко стратегию тестирования. Например, unit-тесты, интеграционные тесты, ручное тестирование)
- Тест-план и чек-лист: Ссылка на файл Test-plan.xls
- Test Cases и дефекты: Ссылка на файл Test-Cases.xls
- Unit Tests: (Опиши, какие модули протестированы unit-тестами)
-
Triple DES (3DES): Используется для шифрования конфиденциальных данных, таких как пароли или ключи API, перед их сохранением в базе данных или передачей по сети. Реализация Triple DES в Qt может быть выполнена с использованием класса
QCryptographicHash
в сочетании с ручной обработкой блоков данных для соответствия стандарту 3DES. (Укажи, какие именно данные ты шифруешь) -
MD5: Применяется для хеширования паролей пользователей при регистрации и аутентификации. Вместо хранения паролей в открытом виде, в базе данных сохраняется их MD5-хеш. Это повышает безопасность, так как даже при утечке базы данных злоумышленники не смогут сразу получить доступ к паролям. Для генерации MD5-хеша используется класс
QCryptographicHash
в Qt:QString password = ui->passwordLineEdit->text(); QByteArray passwordHash = QCryptographicHash::hash(password.toUtf8(), QCryptographicHash::Md5); QString passwordHashString = passwordHash.toHex();
-
Метод секущих: Используется для приближенного решения уравнений при расчете оптимальных параметров в алгоритмах машинного обучения, используемых для автоматической генерации или оценки сложности заданий. Метод секущих реализован в функции
secantMethod(double initialGuess, double tolerance)
и применяется для поиска корня производной функции ошибки. (если ты где-то его используешь, укажи где именно). -
Проверка цикла графа (гамильтонова цикла): Реализован алгоритм для проверки, содержит ли заданный граф гамильтонов цикл. Алгоритм использует поиск в глубину (DFS) с возвратом (backtracking) для перебора всех возможных путей в графе. Функция
hamiltonianCycleCheck(QVector<QVector<int>>& graph, QVector<int>& path, QVector<bool>& visited, int startNode)
проверяет, является ли текущий путь гамильтоновым циклом.
(Инструкции по сборке и запуску приложения с помощью Docker. Пример Dockerfile)
(Укажите, где находится сгенерированная документация Doxygen, и как ее просмотреть.)
(Опишите шаги по сборке проекта, например:
- Установите Qt Creator
- Откройте файл .pro
- Выполните сборку проекта )
Cадыков Амрах Элхан оглы Нургелдиев Овез
(Укажи лицензию, например, MIT)