![]() ![]() ![]() I would model each payment processor integration as a module within a single Payment Processing BC. Is Payment Processing, a BC and different folders beneath it as Nothing about DDD itself would prevent extensibility. When an application has DDD, how easy it can be extendable? A module is like a lightweight BCs and also belongs in the ubiquitous language. I recommend Implementing Domain-Driven Design by Vaughn Vernon for more on this.ĭo Bounded Contexts contain modules or modules contain the BoundedīCs contain modules. Yes, I agree that module and BC structure don't get sufficient coverage in the book. He alsoĭoes not talk about the relation of the structure of modules to Or do we need sub-BC inside another BC?Įric in his book touches the subject of Modules very little. How can we handle this extensibility problem with DDD? Is Payment Processing, a BC and different folders beneath it as modules, one for Paypal etc. If we structure the application with modules inside a Bounded Context and the Bounded Context as a assembly (dll), the modules can reside in the BC as folders and not assemblies (you can think of it as a C# library created in Visual Studio). (The BC created for Paypal and the BC for the Payflow). If I created it as a BC, we have two BCs for Payment Processing. The challenge here is, the dll created for the PayFlow payment processing is a module, not a Bounded Context (BC). I can drop that dll in the application, and the MEF will auto discover it. To integrate Payflow, I can have a assembly (a dll) that implements the interface of the Payment Processing. Currently I have only Paypal, and few months later I want to integrate Payflow. The Payment Processing can be abstract, so I can later extend the app with more Payment Processors like Paypal or Payflow. ![]() In an e-commerce application, we can have a bounded context for Payment Processing. The Microsoft MEF framework can auto-discover modules/components from a dll. The structure of the application is very important when we design Extensible applications. Do Bounded Contexts contain modules or modules contain the Bounded Contexts? When an application has DDD, how easy it can be extendable? He also does not talk about the relation of the structure of modules to bounded contexts with examples. Eric in his book touches the subject of Modules very little. ![]()
0 Comments
Leave a Reply. |