pub struct SubdomainConfig {
pub core: Vec<String>,
pub supporting: Vec<String>,
pub generic: Vec<String>,
}Expand description
DDD subdomain classification for volatility assessment
Based on Khononov’s Balanced Coupling model: volatility should be determined by business domain classification, not just git history.
- Core subdomains = High volatility (competitive advantage, constantly optimized)
- Supporting subdomains = Low volatility (boring CRUD/ETL, rarely changes)
- Generic subdomains = Low volatility (solved problems, stable implementations)
Fields§
§core: Vec<String>Core subdomain modules (high volatility - competitive advantage)
supporting: Vec<String>Supporting subdomain modules (low volatility - stable business logic)
generic: Vec<String>Generic subdomain modules (low volatility - solved problems)
Trait Implementations§
Source§impl Clone for SubdomainConfig
impl Clone for SubdomainConfig
Source§fn clone(&self) -> SubdomainConfig
fn clone(&self) -> SubdomainConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SubdomainConfig
impl Debug for SubdomainConfig
Source§impl Default for SubdomainConfig
impl Default for SubdomainConfig
Source§fn default() -> SubdomainConfig
fn default() -> SubdomainConfig
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SubdomainConfig
impl<'de> Deserialize<'de> for SubdomainConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for SubdomainConfig
impl RefUnwindSafe for SubdomainConfig
impl Send for SubdomainConfig
impl Sync for SubdomainConfig
impl Unpin for SubdomainConfig
impl UnsafeUnpin for SubdomainConfig
impl UnwindSafe for SubdomainConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more