но появилась проблема, у меня все операции(create, read, update, delete) находятся в одном классе CrudOperations, мне не нравится такой подход т.к. при добавлении нового функционала нужно модифицировать CrudOperations(нарушает принцип OCP). Пока что я додумался только до того чтобы сделать это стратегией(костыльной), ваши идеи как это можно исправить?
Вот репа: github.com/PanDurko/CRUD
Разбей на 4 класа и один статический с общей для всех херней
А может добавлять новый функционал через extension'ы?
Но не нужно?
Хотя, если меняются поля в базе данных, то запросы на CRU будут по любому меняться все по этому и разбивать не особо вижу смысла. Да OCP хорошо, но тут скорее всего надо бить не по типу записи или редактирования, а по назначению. Пример CRUD_Order CRUD_Product
Ибо изменение полей в заказе, никак не влияет на изменение полей в товарах
Не совсем понял что ты имеешь ввиду
Обсуждают сегодня