DDD Microservices

В Python идентификатор объекта сравнивается с помощью оператора is (который, в отличие от ==, не может быть перегружен). Если не реализовано идиотом, == не будет сравнивать идентичность, а скорее равенство (если это возможно и реализуется, конечно). И в случае встроенного строкового класса это, конечно, не так.

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

1
задан Cristian Batista 18 January 2019 в 11:46
поделиться

1 ответ

Руководство существует следующим образом:

  1. Ваш домен не зависит от общих библиотек. Это будет препятствовать развитию (и изменениям) в одном домене, потому что это нарушит поведение другого домена.
  2. Помогает нам убедиться, что мы не дублируем деловое поведение в разных доменах. Это очень важно.
  3. Ваш домен не зависит от инфраструктуры. У меня есть сильное подозрение, что это было гораздо важнее в то время, когда люди привыкли помещать логику домена в хранимые процедуры, но это все еще весьма актуально сегодня, потому что она обеспечивает изоляцию логики и ее независимость от хранилищ, хранилищ и т. Д. легко тестируемый.

Учитывая вышеизложенное, можно понять, что некоторый обмен идеален. Действительно, вы уже делитесь некоторыми вещами: базовыми структурами языка и библиотеками базовых классов. Совместное использование некоторых вспомогательных библиотек абсолютно нормально, а в некоторых случаях это очень помогает. При этом вам следует быть очень осторожным:

  1. Совместное использование бизнес-логики в форме разделяемых вспомогательных библиотек нарушает первое правило, изложенное выше, поскольку бизнес-логика может меняться по мере изменения нашего понимания нашего домена.
  2. Совместное использование предметно-ориентированных структур данных нарушает первое и второе правило сверху. Специфичные для домена структуры данных могут изменяться по мере того, как меняется наше понимание домена, и наличие нескольких доменов в зависимости от них будет препятствовать этому процессу Это также нарушает второе правило, потому что специфичные для предметной области структуры данных неявно ведут себя с ними.

Конкретно в вашей ситуации это действительно зависит от того, что представляет собой шаблон ошибки:

  • Является ли он похожим на некоторую структуру данных, которая гарантирует, что исключения содержат некоторый базовый набор информации, который полезен в отладке и не включает какие-либо доменные структуры данных? Если так, то, вероятно, все в порядке.
  • Принимает ли он доменные структуры данных? Тогда я бы сказал, что это не хорошо
  • Содержит ли оно какое-либо доменное поведение для интерпретации некоторых доменных данных и заполнения шаблона? Тогда снова нет.
0
ответ дан SKleanthous 18 January 2019 в 11:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: