Skip to content

Instantly share code, notes, and snippets.

@devitfro
Created March 16, 2025 23:17
Show Gist options
  • Save devitfro/3a34e287eccde5ae6a7218be5545d8c3 to your computer and use it in GitHub Desktop.
Save devitfro/3a34e287eccde5ae6a7218be5545d8c3 to your computer and use it in GitHub Desktop.
1.Принцип единственной ответственности (Single Responsibility Principle, SRP)
В проекте реализован принцип SRP при использовании класса DataBase.
Этот класс отвечает только за работу с подключением к базе данных и не содержит логики, связанной с другими аспектами приложения.
Он инкапсулирует операции открытия и закрытия соединения, предоставляя методы OpenConnection() и CloseConnection(),
которые используются в других частях приложения. Это способствует разделению ответственности и облегчает сопровождение кода.
2. Нарушение принципа SOLID
Принцип открытости/закрытости (Open/Closed Principle, OCP) в методе SaveTaskToDatabase() класса AppForm.
Этот метод напрямую взаимодействует с базой данных, создавая команду SqlCommand и выполняя запросы.
Если в будущем потребуется изменить способ хранения данных (например, использовать другую базу данных),
необходимо будет изменять код метода.
Как исправить:
Использовать паттерн "Абстрактная фабрика" или "Репозиторий", чтобы абстрагировать детали хранения данных от основной логики приложения.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment