У меня есть несколько микросервисов, которые повторно используют похожие модели, например
- RepairService
- InventoryService
- AuctionService
An Item (Cars , Bikes, et c) можно найти в каждой из этих служб, и каждый раз, когда я добавляю новые свойства или новый тип элемента, я в конечном итоге дублирую эти модели в трех местах.
Я думал о том, чтобы разместить эти моделей в четвертой библиотеке «ItemService», но поскольку эти модели имеют разные методы в каждой службе, InventoryService сможет восстанавливать элементы и т. д. c
Но что, если бы мой «ItemService» содержал только интерфейсы для этих модели (просто состояние, а не методы), которые затем реализуют другие службы, чтобы вы могли найти ICar в ItemService, упаковать его в RepairService, который затем реализует его и добавляет методы для ремонта автомобиля.
Я могу ' Кажется, я нигде в inte rnet не нашел, что объекты домена реализуют интерфейсы, поэтому я не уверен на 100%
Chee RS