Объект не существует, и существует только сценарий использования в SNS в соответствии с Чистой архитектурой?
Я прочитал книгу "Чистая архитектура: руководство мастера по структуре и дизайну программного обеспечения" (Роберт К. Мартин).
Прежде всего, я только прочитал переведенную версию на свой родной язык, так что слова для идей из книги могут не совсем соответствовать тому, что написано в английской версии, но как я мог объяснить достаточно, чтобы люди здесь поняли то, о чем я пишу.
Объяснение книги
В разделе "Бизнес-правило" книги приводятся пояснения к
- Самое важное бизнес-правило
- сущность
- Случай использования
Согласно книге...
"Самое важное бизнес-правило" существует независимо от того, автоматизирована система или нет. Например, банк устанавливает процентную ставку N% для загрузки.
"Сущность" представляет "Важнейшее бизнес-правило"
"Вариант использования" представляет бизнес-правило конкретного приложения, которое существует, только если оно автоматизировано системой.
Мой вопрос
Базовое веб-приложение, такое как SNS, может существовать только в том случае, если существует система, отличная от банка, занимающегося кредитованием, что, возможно, может быть осуществлено без системы. Если я применяю то, что написано в книге "Чистая архитектура", приложение SNS не имеет сущности, и все бизнес-логики являются вариантами использования.
Правильно ли мое понимание?
1 ответ
В своей статье ( https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html) и своей книге дядя Боб объясняет, что
"Объекты инкапсулируют корпоративные бизнес-правила"
а также
"Если у вас нет предприятия, и вы просто пишете одно приложение, то эти сущности являются бизнес-объектами приложения. Они инкапсулируют самые общие и высокоуровневые правила. Они наименее вероятно изменятся, когда что-то внешнее изменения ".
Поэтому, если у вас есть предприятие с кучей приложений, "сущности" могут находиться в центральной библиотеке или службе, а если у вас всего одно приложение, "сущности" инкапсулируют ваши приложения в наиболее важных / центральных бизнес-правилах. Это зависит от контекста ваших приложений.