限界上下文的物化是什么? (C# / .NET)
What is the materialization of Bounded Context? (C# / .NET)
我有点难以理解限界上下文是如何在 c# / .net 核心中具体化的?是上面的项目(程序集)、文件夹、class还是none?
我在微服务架构中看到一些人提倡将限界上下文对应于一个微服务,这对我来说很有意义。
另一方面,我很难在微服务世界之外获得它。
那么,在典型的单体中 - 它具体化成什么?
有界上下文它只是关于词汇边界。即使在微服务中,一个限界上下文也可以包含多个微服务(但反之则不行)。所以这取决于你。例如。在整体中它可能只是一个项目,但它可能是一个文件夹中的多个项目。
So the most flexible answer would be several projects in one folder
如果您没有特殊的部署要求,我会说所有允许您限制可见性的内容。在 java 世界中,这可能是一个包(如果不是 Java9+ 模块)。这样你就可以确保没有任何“内部”泄漏 BC 并且 public 设计用于其他地方的实现可以这样标记。
如果您有特殊的部署要求(如果没有向后破坏,BC x 应该可以独立于其他部署)您可以考虑模块化以使每个 BC 对应一个工件(.jar 或 .dll 或其他)。这是一种微服务方法,但在整体开发环境中。
我有点难以理解限界上下文是如何在 c# / .net 核心中具体化的?是上面的项目(程序集)、文件夹、class还是none?
我在微服务架构中看到一些人提倡将限界上下文对应于一个微服务,这对我来说很有意义。 另一方面,我很难在微服务世界之外获得它。
那么,在典型的单体中 - 它具体化成什么?
有界上下文它只是关于词汇边界。即使在微服务中,一个限界上下文也可以包含多个微服务(但反之则不行)。所以这取决于你。例如。在整体中它可能只是一个项目,但它可能是一个文件夹中的多个项目。
So the most flexible answer would be several projects in one folder
如果您没有特殊的部署要求,我会说所有允许您限制可见性的内容。在 java 世界中,这可能是一个包(如果不是 Java9+ 模块)。这样你就可以确保没有任何“内部”泄漏 BC 并且 public 设计用于其他地方的实现可以这样标记。
如果您有特殊的部署要求(如果没有向后破坏,BC x 应该可以独立于其他部署)您可以考虑模块化以使每个 BC 对应一个工件(.jar 或 .dll 或其他)。这是一种微服务方法,但在整体开发环境中。