Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÁìÓòÄ£ÐÍÇý¶¯Éè¼Æ£¨Domain Driven Design£©ÈëßÅÊö
 

×÷Õß johnstrive£¬»ðÁú¹ûÈí¼þ ·¢²¼ÓÚ£º2014-09-03

  14341  次浏览      30
 

Èí¼þ¿ª·¢Òª¸Éʲô£º

1.·´Ó³ÕæÊµÊÀ½çÒª×Ô¶¯»¯µÄÒµÎñÁ÷³Ì

2.½â¾öÏÖʵÎÊÌâ

ÁìÓòDomain

1.DomainÌØÖ¸Èí¼þ¹Ø×¢µÄÁìÓò

2.ÔÚ²»Äܳä·ÖÁ˽âÒµÎñÁìÓòµÄÇé¿öÏÂÊDz»¿ÉÄÜ×ö³öÒ»¸öºÃµÄÈí¼þ

ÁìÓò½¨Ä£

ÁìÓòÄ£ÐÍÇý¶¯Éè¼Æ

1.·Ö²ã¼Ü¹¹

2.ʵÌå

3.Öµ¶ÔÏó

4.·þÎñ

5.Ä£¿é

6.¾ÛºÏ

7.¹¤³§

8.×ÊÔ´¿â

·Ö²ã¼Ü¹¹£º

1.½«ÁìÓòÄ£ÐÍÏà¹ØµÄ´úÂ뼯Öе½Ò»¸ö²ãÖУ¬°ÑËü´ÓÓû§½çÃæ¡¢Ó¦Óúͻù´¡ÉèÊ©´úÂëÖзָô¿ªÀ´

2.ÊÍ·ÅÁìÓò¶ÔÏóµÄÏÔʾ×Ô¼º¡¢±£´æ×Ô¼º¡¢¹ÜÀíÓ¦ÓÃÈÎÎñµÈÖ°Ôð£¬ÈÃËüרעÓÚÕ¹ÏÖÁìÓòÄ£ÐÍ

3.¸´ÔӵijÌÐòÇзֳɲã

4.²ãÖвÉÓÃÄÚ¾ÛµÄÉè¼Æ

5.²ã½öÒÀÀµÓÚËüµ×ϵÄÄDzã

ʵÌåentity£º

ÓÐÒ»Àà¶ÔÏóÓµÓÐΨһ±êʶ·û

1.Äܹ»¿çԽϵͳµÄÉúÃüÖÜÆÚÉõÖÁÄܳ¬Ô½Èí¼þϵͳµÄһϵÁеÄÑÓÐøÐԺͱêʶ·û

2.ÕâÑùµÄ¶ÔÏó³ÆÎªÊµÌå¡£

Öµ¶ÔÏó-value Object

1.¶Ôij¸ö¶ÔÏóÊÇʲô²»¸ÐÐËȤ£¬Ö»¹ØÐÄËüÓµÓеÄÊôÐÔ

2.ÓÃÀ´ÃèÊöÁìÓòµÄÌØÊâ·½Ãæ¡¢ÇÒûÓбêʶ·ûµÄÒ»¸ö¶ÔÏ󣬽Ð×öÖµ¶ÔÏó

3.Äܱ»¼òµ¥µÄ´´½¨ºÍ¶ªÆú£¬ÉúÃüÖÜÆÚÖв»»á±»³Ö¾Ã»¯

4.Öµ¶ÔÏó¿ÉÒÔ±»¹²Ïí£¬Öµ¶ÔÏóÓ¦¸Ã²»¿É±ä

·þÎñ-service£¨±Èwebservice¸üϸÁ£¶È·þÎñÃèÊö£©

1.ÁìÓòÖеÄһЩ¶¯´Ê£¬´ú±íÁËÁìÓòÖеÄÒ»¸öÖØÒªµÄÐÐΪ£¬È´²»ÊôÓÚÈκζÔÏó

1)·þÎñÖ´ÐеIJÙ×÷Éæ¼°Ò»¸öÁìÓò¸ÅÄÕâ¸öÁìÓò¸ÅÄîͨ³£²»ÊôÓÚÒ»¸öʵÌå»òÕßÖµ¶ÔÏó

2)±»Ö´ÐеIJÙ×÷Éæ¼°µ½ÁìÓòÖÐµÄÆäËûµÄ¶ÔÏó

3)²Ù×÷ÊÇÎÞ״̬µÄ

2.·þÎñ¶ÔÏó²»ÔÙÓµÓÐÄÚÖõÄ״̬

3.·þÎñ¶ÔÏóµ£µ±ÖØÒªµÄЭµ÷¹¦ÄÜ

4.¿ª·¢Í¨ÓÃÓïÑÔʱ£¬ÁìÓòÖеÄÖ÷Òª¸ÅÄî±»ÒýÈëµ½ÓïÑÔÖУ¬ÓïÑÔÖеÄÃû´ÊºÜÈÝÒ×±»Ó³Éä³É¶ÔÏó¡£

ÓïÑÔÖжÔÓ¦ÄÇЩÃû´ÊµÄ¶¯´Ê±ä³ÉÄÇЩ¶ÔÏóµÄÐÐΪ¡£µ«ÊÇÓÐЩÁìÓòÖе͝×÷£¬ËüÃÇÊÇһЩ¶¯´Ê£¬¿´ÉÏȥȴ²»ÊôÓÚÈκζÔÏó¡£ËüÃÇ´ú±íÁËÁìÓòÖеÄÒ»¸öÖØÒªµÄÐÐΪ£¬ËùÒÔ²»ÄܺöÂÔËüÃÇ»òÕß¼òµ¥µÄ°ÑËüÃǺϲ¢µ½Ä³¸öʵÌå»òÕßÖµ¶ÔÏóÖС£¸øÒ»¸ö¶ÔÏóÔö¼ÓÕâÑùµÄÐÐΪ»áÆÆ»µÕâ¸ö¶ÔÏó£¬ÈÃËü¿´ÉÏÈ¥ÓµÓÐÁ˱¾¸ÃÊôÓÚËüµÄ¹¦ÄÜ¡£

Ä£¿é

1.½«Ïà¹ØÁìÓòÄ£ÐÍÌáÁ¶·ÖÀ࣬·Ö¶øÖÎÖ®

2.½«¸ß¹ØÁª¶ÈµÄÄ£ÐÍ·Ö×éµ½Ò»¸öÄ£¿éÒÔÌṩ¾¡¿ÉÄÜ´óµÄÄÚ¾Û£¨ÒÔÄÜÍêÕûÍê³ÉÈÎÎñΪ׼£©

3.·Ö²ãÊÇˮƽ»®·Ö

4.Ä£¿éÊÇ´¹Ö±»®·Ö(DomainÄÚ²¿)

²Î¿¼¼Ü¹¹¸ÅÊö

1.ÁìÓòÇý¶¯Éè¼Æ(DomainDriven Design)ÓÐÒ»¸ö¹Ù·½µÄsample¹¤³Ì£¬ÃûΪDDDSample

2.¹ÙÍø£ºhttp://dddsample.sourceforge.net/

3.¸Ã¹¤³Ì¸ø³öÁËÒ»ÖÖʵ¼ùÁìÓòÇý¶¯Éè¼ÆµÄ²Î¿¼¼Ü¹¹

¼Ü¹¹¸ÅÊö

Ïêϸ¼Ü¹¹

¼Ü¹¹Ïê½â:Interfaces-½Ó¿Ú²ã

1.¸Ã²ã°üº¬ÓëÆäËûϵͳ½øÐн»»¥µÄ½Ó¿ÚÓëͨÐÅÉèÊ©£¬ÔÚ¶àÊýÓ¦ÓÃÀï

2.¿ÉÄÜÌṩ°üÀ¨WebServices¡¢RMI»òRestµÈÔÚÄÚµÄÒ»ÖÖ»ò¶àÖÖͨÐŽӿÚ

3.¸Ã²ãÖ÷ÒªÓÉFacade¡¢DTOºÍAssemblerÈýÀà×é¼þ¹¹³É£¬ÈýÀà×é¼þ¾ùÊǵäÐ͵ÄJ2EEģʽ

DTO

1.DTO- DataTransfer Object£¨Êý¾Ý´«Êä¶ÔÏ󣩣¬Ò²³£±»³Æ×÷VO-ValueObject(Öµ¶ÔÏó)

2.DTOÉè¼ÆÖ®³õÊÇΪÁ˽«Ï¸Á£¶ÈµÄÁìÓò¶ÔÏó°üװΪ´ÖÁ£¶ÈµÄÊý¾Ý½á¹¹£¬¼õÉÙÍøÂçͨÐŲ¢¼ò»¯µ÷ÓýӿÚ

DTO ×÷ÓÃ

1.¼õÉÙÍøÂçÁ÷Á¿

2.¼ò»¯Ô¶³Ì¶ÔÏóºÍÔ¶³Ì½Ó¿Ú

3.´«Êä¸ü¶àµÄÊý¾Ý¼õÉÙÔ¶³Ìµ÷ÓôÎÊý

4.±ÜÃ⽫ÁìÓò״̬¿ç²ã´Î´«µÝ

5.ÓÉÓÚͬ²½ºÍ°æ±¾¿ØÖÆÔö¼ÓÁ˸´ÔÓÐÔ

DTO Ó¦ÓÃʱÐòͼ

Assembler

1.DTOÓëÁìÓò¶ÔÏóÖ®¼äµÄÏ໥ת»»¹¤×÷¶àÓÉAssembler³Ðµ£

2.Òò´ËAssembler¼¸ºõ×ÜÊÇͬDTOÒ»Æð³öÏÖ¡£

Assembler ʵÏÖ·½°¸

Fa?ade

1.ʵ¼ùFacadeµÄ¹ý³ÌÖÐ×îÄѰÑÎÕµÄÎÊÌâ¾ÍÊÇFacadeµÄÁ£¶ÈÎÊÌâ¡£

2.´«Í³µÄService¾ùÒÔʵÌåΪµ¥Î»½øÐÐ×éÖ¯£¬¶øFacadeÓ¦¸Ã¾ßÓиü´ÖÁ£¶ÈµÄ×éÖ¯ÒÀ¾Ý£¬½ÏΪºÏÊʵÄÁ£¶ÈÒÀ¾ÝÓУº

3.Ò»¸ö¸ß¶ÈÄÚ¾ÛµÄÄ£¿éÒ»¸öFacade

4.»òÕßÊÇÒ»¸ö¡°¾ÛºÏ¡±(ÌØÖ¸ÁìÓòÇý¶¯Éè¼Æ)Ò»¸öFacade.

Facade ʵÏÖ·½°¸

Facade Ó¦ÓÃʱÐòͼ

Service

1.Service»áÓë¶àÖÖ×é¼þ½øÐн»»¥

2.ÕâЩ×é¼þ°üÀ¨£º

1)ÆäËûµÄService

2)ÁìÓò¶ÔÏó

3)Repository

4)DAO

Service Ó¦ÓÃʱÐòͼ

Domain-ÁìÓò²ã

1.Domain²ãÊÇÕû¸öϵͳµÄºËÐIJ㣬¸Ã²ãά»¤Ò»¸öʹÓÃÃæÏò¶ÔÏó¼¼ÊõʵÏÖµÄÁìÓòÄ£ÐÍ£¬¼¸ºõÈ«²¿µÄÒµÎñÂß¼­»áÔڸòãʵÏÖ

2.Domain²ã°üº¬:

1)Entity£¨ÊµÌ壩

2)ValueObject(Öµ¶ÔÏó)

3)Domain Event£¨ÁìÓòʼþ£©

4)Repository£¨²Ö´¢£©µÈ

Infrastructure-»ù´¡ÉèÊ©²ã

1.»ù´¡ÉèÊ©²ãnfrastructureΪInterfaces¡¢ApplicationºÍDomainÈý²ãÌṩ֧³Å

2.ËùÓÐÓë¾ßÌåÆ½Ì¨¡¢¿ò¼ÜÏà¹ØµÄʵÏÖ»áÔÚInfrastructureÖÐÌṩ£¬±ÜÃâÈý²ãÌØ±ðÊÇDomain²ã²ôÔÓ½øÕâЩʵÏÖ£¬´Ó¶ø¡°ÎÛȾ¡±ÁìÓòÄ£ÐÍ

3.InfrastructureÖÐ×î³£¼ûµÄÒ»ÀàÉèÊ©ÊǶÔÏó³Ö¾Ã»¯µÄ¾ßÌåʵÏÖ

¡°´«Í³¡±¼Ü¹¹-ƶѪÁìÓòÄ£ÐÍ

DDD && SOA

1.DDD ÁìÓòÄ£ÐÍÇý¶¯Éè¼Æ

2.SOA ÃæÏò·þÎñµÄ¼Ü¹¹


   
14341 ´Îä¯ÀÀ       30
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

ÈçºÎÏòÆÞ×Ó½âÊÍOOD
OOADÓëUML±Ê¼Ç
UMLÀàͼÓëÀàµÄ¹ØÏµÏê½â
UMLͳһ½¨Ä£ÓïÑÔ³õѧ
×ܽáÒ»ÏÂÁìÓòÄ£Ð͵ÄÑéÖ¤
»ùÓÚ UML µÄÒµÎñ½¨Ä£


ÃæÏò¶ÔÏóµÄ·ÖÎöÉè¼Æ
»ùÓÚUMLµÄÃæÏò¶ÔÏó·ÖÎöÉè¼Æ
UML + ǶÈëʽϵͳ·ÖÎöÉè¼Æ
¹ØÏµÊý¾Ý¿âÃæÏòOOADÉè¼Æ
ÒµÎñ½¨Ä£ÓëÒµÎñ¼Ü¹¹
ʹÓÃÓÃÀý½øÐÐÐèÇó¹ÜÀí


ijº½¿ÕIT²¿ÃÅ ÒµÎñ·ÖÎöÓëÒµÎñ½¨Ä£
ÁªÏë ÒµÎñÐèÇó·ÖÎöÓ뽨ģ
±±¾©º½¹Ü¿Æ¼¼ EA¹¤¾ßÓë¼Ü¹¹Éè¼Æ
ʹÓÃEAºÍUML½øÐÐǶÈëʽϵͳ·ÖÎö
È«Çò×î´óµÄ²èÒµ¼¯ÍÅ UMLϵͳ·ÖÎö
»ªÎª »ùÓÚEAµÄǶÈëʽϵͳ½¨Ä£
Ë®×ÊÔ´·þÎñÉÌ »ùÓÚEA½øÐÐUML½¨Ä£