Самодельная реализация vector
- Вся логика работы с памятью вынесена в базовый класс
vector_base(RAII‑обертка над массивом) — это гарантирует удаление даже при вылете исключения в конструкторе - Строгая гарантия безопасности исключений, обеспеченная через
vector_baseи идиомуcopy‑and‑swap - Для
trivially copyableтипов применяетсяstd::memcpy, что повышает производительность. - Проверка собираемости и тестирование с санитайзерами в CI на различных платформах.
- Приложение реализовано в соответствии с принципами MVC (model-view-controller)
- Модель потокобезопасна, инвариант защищается мьютексом
- GUI составляющая реализована с помощью фреймворка Qt
- Механизм подписки реализован с помощью паттерна «Наблюдатель»
- Паттерн команда
- Паттерн посетитель
- Архитектура в стиле MVC, модель не зависит от инфраструктуры (PyQt6)
- Абстрактная фабрика
- Паттерн стратегия для модификации поведения выбора элементов
