Skip to content

Лабораторные работы по дисциплине «Объектно-ориентированное программирование», УУНиТ, 6 семестр 2025

Notifications You must be signed in to change notification settings

Repin-Daniil/oop-labs

Repository files navigation

Самодельная реализация vector

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

img

About

Лабораторные работы по дисциплине «Объектно-ориентированное программирование», УУНиТ, 6 семестр 2025

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published