-
Название: Code Coloring
-
Студенты-участники:
- Завьялов Артём Борисович РИ-390013
- Мазырина Алёна Юрьевна РИ-390013
- Соколов Олег Андреевич РИ-390013
- Чебыкина Юлия Владимировна РИ-390013
-
Проблема, которую решает проект:
- Разработчик хочет, чтобы его код был более читабельным, но при этом он не хочет скачивать тяжеловестные IDE, для этого наше приложение настраивает ему подсветку кода.
-
Описание основных компонентов, из которых состоит проект:
-
Компонент, отвечающий за преобразование аргументов из вызова программы в аргументы, которые используют сущности внутри кода для использования внутри программы.
-
Компонент, определяющий смысловые единицы языка из текста (переменные, функции, ключевые слова и их группы).
- Определяет по каждому слову его принадлежность к смысловой единице. Для каждого языка свой собственный набор слов-смысловых единиц, но типы у всех общие.
- Принимает на вход текст - выдаёт массив из (слово; тип смысловой единицы)
-
Компонент, отвечающий за определение цвета для каждой смысловой единицы языка.
- Принимает вывод из предыдущего компонента - выдаёт массив из (слово; цвет в RGB или HEX)
-
Компонент, отвечающий за вывод сформерованной раскраски в определённый формат
- Принимает вывод из предыдущего компонента - вывод текст-структуру целевого формата для записи в файл
-
-
Краткое описание точек расширения:
- Новые парсеры аргументов - IArgDecoder
- Новые языки программирования - IProgrammingLanguage
- Новые цветовые палитры - ColorPalette
- Новые форматы выходных данных - IOutputFormat
- Создание архитектуры
- Соколов Олег - главный архитектор
- Чебыкина Юля
- До 14.11.2021
- Написание простых тестов для всех компонентов для правильного понимания необходимого функционала
- Соколов Олег - составитель тестов
- До 18.11.2021
- Соколов Олег - составитель тестов
- Написание компонентов
- Завьялов Артём - компонент цветов смысловой группы
- Чебыкина Юля
- Мазырина Алёна - компонент, отвечающий за вывод
- Соколов Олег - компонент разбора аргументов из консоли
- До 28.11.2021
- Написание более сложных тестов для существующего функционала и улучшение текущих компонентов
- Соколов Олег - главный тестировщик
- Завьялов Артём
- Чебыкина Юля
- Мазырина Алёна
- До 07.12.2021
- Демонстрация MVP - До 07.12.2021
Завьялов Артём
- Цветовые палитры
- Раскрашивание
- DI-Контейнеры
- Рефакторинг
Соколов Олег
- Архитектура
- Unit тесты для большинства модулей
- Добавление метрик покрытия кода и мутационного тестирования
- Парсер аргументов командной строки
- Рефакторинг
Мазырина Алёна
- HTML
- Behaviour-driven development тесты
- Рефакторинг
Чебыкина Юля
- Компонент языков программирования и их языковых единиц
- Python
- DI-Контейнеры
- Рефакторинг