
рдПрдХ рд╕рд╡рд╛рд▓ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддрд╛ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░ рдПрдХ рдЯрди рдЬрд╛рдирдХрд╛рд░реА рд╣реИ: рдХрд┐рддрд╛рдмреЗрдВ, рд▓реЗрдЦ, рд░рд┐рдкреЛрд░реНрдЯред рд▓реЗрдХрд┐рди рд╡рд┐рд╖рдп рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдФрд░ рдмрд╣реБрдореБрдЦреА рдкреНрд░рддрд┐рднрд╛ рддреБрд░рдВрдд рд╕рд╛рд░ рдкрд░ рдХрдмреНрдЬрд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЗрд╕рдореЗрдВ рдореЗрд░реА рдорджрдж рдХрд░реЗрдВрдЧреЗ?
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЬрдЯрд┐рд▓ рд╡рд┐рд╖рдп рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХрдИ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реБрдВрджрд░рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЕрдкрдиреЗ рддрд░реАрдХреЗ рд╕реЗ рдПрдХ рд╣реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЗ рд▓рд┐рдП рдмрд╕ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рддреЛ рдЪрд▓реЛ рдФрд░ рдореИрдВ рд╕рд╛рдорд╛рдиреНрдп рд╕реВрдЪрдирд╛ рд╕реНрдерд╛рди рдореЗрдВ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред рддреЛ рдЖрдкрдХрд╛ рд╕рд╡рд╛рд▓ рдХреНрдпрд╛ рд╣реИ?
Domain Driven Design рдХреНрдпрд╛ рд╣реИ?
рдпрд╣ рдЬрдЯрд┐рд▓ рд╡рд┐рд╖рдп рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред
рддреЛ DDD рдХрд╛ рд▓рдХреНрд╖реНрдп рд╕реНрд╡рдЪрд╛рд▓рди рд╣реИ?
рдирд╣реАрдВ, рдЖрдк рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдбреАрдбреАрдбреА рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЬрдЯрд┐рд▓рддрд╛ рдкреНрд░рдмрдВрдзрди рд╣реИред
рдХреНрдпрд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕реЗ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рд╣реИ?
. , . , , [1]. , , . , тАФ , , . тАФ , , , . , , , .
, . , , -, , . , .
-, , . тАФ , , .
DDD .
. : DDD? , , ?
, тАУ .
, ┬л ┬╗? ?
, . тАУ , . , , -, , -, .
, . ┬л┬╗. ? ?
, . , . , . . , .
. , , , . , , , . . ?
, ?
, .
. ?
.
?
. , .
, , , DDD: .
- тАЬ тАЭ.
, . , . . DDD , , , , [2].
, , ?
. . тАФ , тАЬтАЭ. .
? -, . тАФ .
-, , тАФ , . . -, , , . , ?
, .
. . тАФ ; тАФ . - , , . .
. , -, , . -, . - , , .
, , , .
. , .
. , ?
, . , .
. DDD : . . , . : . , , тАЬтАЭ .
. , , , ? , . , , . : , , . тАФ . [6].
: DDD? . , , , - . ( ), , , , -. - тАЬтАЭ . , , , тАЬ тАЭ, , тАЬ , тАЭ[2]. , DDD.
, . , , , , , .
, , -. .
?
, , . тАФ , - .
: , . , , , [1]. DDD Bounded context.
? : ?
, . . , , , , .
, . ? тАЬ тАЭ - . , тАЬ тАЭ. ?
, . , , , , тАЬambiguity doesn't compileтАЭ[4]
, -. ?
, , . , ? , тАФ , ?
.
, , [7], , , .
, .
. , , : , ? . . . . Bounded context (context) (bound) . , , тАЬ тАЭ. , .
Bounded context ?
. Bounded context. : , , .
, ? DDD .
-, , , .
-, тАФ , . , .
, , .
: , тАФ DDD, ?
-, , , . , , , , - , .
-, . . ? Bounded context, , ? , [3] BC?
.
, , DDD .
, DDD тАФ . : тАЬтАж , , , "[5].
DDD : . . , - . : , . , , - .
- .
- . -
- . Event Storming
- рдПрдбрдо рдбрд╛рдЗрдорд┐рдЯреНрд░реБрдХред рдИрд╡реЗрдВрдЯ рдореЙрдбрд▓рд┐рдВрдЧ: рдпрд╣ рдХреНрдпрд╛ рд╣реИ?
- рд╕рд╛рдЗрдорди рдирд╛рдЗрдЯрд┐рдВрдЧреЗрд▓ред рд╕рднреА рдХреЗ рд▓рд┐рдП рд╢рд┐рдХреНрд╖рд╛рд╢рд╛рд╕реНрддреНрд░ред
- рдлрд▓ рдпрд╛ рд╕рдмреНрдЬреА