Size: a a a

Software Design/Architecture/Zen

2021 June 05

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
смотря для чего тебе нужно это определение
источник

AN

Allan Nettzan in Software Design/Architecture/Zen
Да диплом пишу и нужно про модульность и Предмет ориент про (DDD) рассказать.
Я про все пояснил теперь некий вывод о модуле и ddd и как это сочетается

Хочется передать мысль о том что модуль это граница ограниченного контекста
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
модуль это просто юнит, просто штука. На разных масштабах модули значат немного разное в зависимости от контекста, но в целом у них четко определенная функциональность, явные границы и вот это вот все.
источник

AN

Allan Nettzan in Software Design/Architecture/Zen
Спасибо
источник

SP

Sergey Protko in Software Design/Architecture/Zen
модуль это слишком абстрактная и общая вещь. Ну то есть можно сказать что "вот этот компонент который мэпится на этот контекст он же модуль" но внутри могут быть другие модули которые уже меньше чем контекст.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
если оч хочется про "границы" лучше пытаться связать bounded context тогда с information hiding.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
оттуда уже и про возможность разными людьми решения принимать о том че как внутри автономность команд и тд. Это если водички хочется в диплом
источник

AN

Allan Nettzan in Software Design/Architecture/Zen
Принято.
Благодарю.
Про автономность в случае того что если рассматривать модуль как границу ограниченного контекста
я уже написал
источник

AN

Allan Nettzan in Software Design/Architecture/Zen
"Благодаря предметно-ориентированной архитектуре если рассматривать модуль, как ограниченный контекст, то отделен от фреймворков и инфраструктуры."
источник

SP

Sergey Protko in Software Design/Architecture/Zen
leaking abstraction. Это когда у тебя есть зависимость например и твой код учитывает особенности работы этой зависимости. То есть "знание о том как оно там работает" вытекает наружу и влияет на клиентский код (тот который зависимостью пользуется).

Мне оч нравится тут пример - есть у тебя скажем mysql с автоинкрементами, значения которых ты получаешь уже после вставки, и всякие postgresql с секвенсами где значение идентификатора можно получить до вставки. При попытке "закрыть" это какой-то абстракцией клиентскому коду придется учитывать как это все работает.

Проблема текущих абстракций - если абстракция не закрывает собой знание о том как чего работает то вместо упрощения мы часто можем получить усложнение системы. Цель абстракции все же "скрывать" от нас детали реализации, если они скрываются не полностью это увеличивает сложность и как следствие может приводить к проблемам.

При этом "протечки" абстракций могут происходит и с соблюдением инверсии зависимостей и т.д.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
воу воу, нет таких понятий как "предметно-ориентированных архитектур"
источник

DP

Dimitry Polonskiy in Software Design/Architecture/Zen
Может быть "Благодаря принципам предметно ориентированного дизайна/проектирования?"
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ограниченный контекст не про "отделение от фреймворка". У тебя в пределах реализации одного контекста может быть все что угодно.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
То есть я могу придумать кейс где "ограниченный контекст" реализовать проще удобнее и т.д. если это будет просто условный тонкий клиент для БД и вся логика будет в этой самой БД.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
bounded context это больше про семантику, про терминологию, про бизнес десижены.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
если хочется технической фигни то замени все что "DDD" на какую-нибудь "Ports/adapters architecture"
источник

DP

Dimitry Polonskiy in Software Design/Architecture/Zen
Как же сложно...
источник

DP

Dimitry Polonskiy in Software Design/Architecture/Zen
источник

SP

Sergey Protko in Software Design/Architecture/Zen
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ну то есть это куда больше про "модули изоляцию инфраструктуры зависимости и т.д."
источник