spring-modulith icon indicating copy to clipboard operation
spring-modulith copied to clipboard

Improved Documentation in Fundamentals - The "Core" Module Concept

Open Crain-32 opened this issue 2 years ago • 0 comments
trafficstars

Torn between a Discussion and an Issue on this, but it would change the Documentation, which is in the codebase, so I went with an Issue. Similar Topic to this Discussion, however I hope I can provide a solid reason for Spring to provide more concrete references within the Documentation of this Project.

At Spring One (Highly Recommend attending 2024's or finding the Sessions), I talked with @odrotbohm and asked for an easy way to handle "Global" Configuration. This might be something like your Endpoint Security, Global Caching Mechanism, Message Broker, Etc. I believe we talked about using a configuration property, and moved along.

After spending multiple hours thinking about this. I was actually describing the purpose of a core/common Module. Which @Modulith already supports with sharedModules property. This realization came after several hours of pondering though, and when a framework is enforcing an Opinionate View, it should also help those coming from other views to adjust. Although an entire mental model shift is impossible to put into Documentation, I believe there is a strong value for Developers who are new to DDD to have something within the Project itself to reference on how they can transition their current Applications.

For that reason I think adding a "Core" Module Concept Section in the Fundamentals portion of the Documentation would be a high value. It would also be more documentation for understanding why/when to use sharedModules in @Modulithic.

Requested Change

  • Include a Section on an Application's "Core" Module in Fundamentals.

Would be really nice Change

  • Include an Example Repository of a Layer -> Modulith App transition.

Crain-32 avatar Aug 25 '23 18:08 Crain-32