Чистая независимая архитектура - PullRequest
0 голосов
/ 23 октября 2018

Я прочитал в книге дяди Боба clean architecture, глава 21, что хорошая архитектура должна быть независимой от системы доставки, в которой она будет работать, будь то веб-приложение, консольное приложение или приложение для толстых клиентов.

Теперь, предположительно, я хочу разработать ядро ​​своего программного обеспечения на c #, как это возможно, чтобы я мог доставить его как приложение веб-клиента?и наоборот, если я выберу Typescript, который я выбрал в качестве языка, как я могу доставить свое приложение в качестве настольного приложения?

Мой вопрос - погода, я неправильно понимаю концепцию, указанную в книге, или нет?каким-то образом я мог бы написать универсальное программное обеспечение на одном языке, не полагаясь на какие-то рамки?

1 Ответ

0 голосов
/ 24 октября 2018

Если вы пишете ядро ​​своего приложения на C #, у вас есть несколько вариантов его доставки в виде веб-приложения: ASP.net, веб-API и другие фреймворки.Идея состоит в том, что внутренние уровни вашего приложения (варианты использования, сущности и т. Д. Не зависят от этого механизма доставки.

То же самое, если вы сделали это в Typescript, если вы хотите повторно развернуть его, используя что-то вроде Электрон Вы, конечно, могли бы. Еще раз, это будут внутренние слои вашей архитектуры, а не внешние биты (сервисы и модели).

Если вы зависите от своей структуры пользовательского интерфейса вваши внутренние слои, то вы не используете чистую архитектуру. Она должна быть независимой и изолированной от нее (если вообще ничего, только для тестирования).

...