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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÁìÓòÇý¶¯Éè¼Æ¼Ü¹¹
 
  1941  次浏览      34
 2019-8-28
 
±à¼­ÍƼö:
±¾ÎÄÀ´×ÔÓÚcsdn,±¾ÎÄÖ÷Òª½éÉÜÁìÓòÇý¶¯Éè¼Æ·ç¸ñµÄ¼Ü¹¹ÒÔ¼°¸÷¸ö²ãµÄÏê½âÒÔÏÂÊǶÔÈýÀà×é¼þµÄ¾ßÌå½éÉÜ¡£

Ò»¡¢ÁìÓòÇý¶¯Éè¼Æ¼Ü¹¹

ÁìÓòÇý¶¯Éè¼Æ¼Ü¹¹·Ö³É½Ó¿Ú²ã(interfaces)¡¢Ó¦Óòã(Applications)¡¢ÁìÓò²ã(Domain)ÒÔ¼°»ù´¡ÉèÊ©²ã(Infrastructure)¡£ÏÂͼÃèÊöÕâËÄÕߵļòÂÔͼ£º

ͼһ£ºÁìÓòÇý¶¯Éè¼Æ·ç¸ñµÄ¼Ü¹¹²Ýͼ

ËÄÕßµÄÏêϸ¼Ü¹¹Í¼£º

ͼ¶þ£ºÁìÓòÇý¶¯Éè¼Æ²Î¿¼¼Ü¹¹

´«Í³µÄÈý²ã¹¹Í¼£º

ͼÈý£º´«Í³Èý²ã¼Ü¹¹Í¼

˵Ã÷£º

×÷Ϊ²ÎÕÕ£¬ÏÂͼչʾÁË´«Í³TransactionScript·ç¸ñµÄ¼Ü¹¹£¬¿ÉÒÔ¿´³ö£¬Á½ÕߵIJîÒì²¢²»ÊÇÌ«´ó£¨¶ÔÓÚFacadeÀ´Ëµ£¬ËüÊÇÒ»ÖÖ¿ÉÑ¡ÉèÊ©£¬Èç¹ûϵͳ¼Ü¹¹ÖÐÊ¡ÂÔFacade£¬ÔòDTOÓëÁìÓò¶ÔÏóµÄ»¥»»¹¤×÷¿ÉÔÚserviceÖнøÐУ©£¬ÕâÒ²´Ó²àÃæËµÃ÷ÍÆÐÐÁìÓòÇý¶¯Éè¼ÆµÄ¹Ø¼ü²¢²»Ôڼܹ¹ ÉÏ£¬¶øÔÚÓÚÕû¸öÍŶÓÔÚ·ÖÎö¡¢Éè¼ÆºÍ¿ª·¢ÉÏûÓÐ×ÔʼÖÁÖÕµØÒÔÁìÓòÄ£ÐÍΪºËÐÄ¿ªÕ¹¹¤×÷£¬ÒÔÃæÏò¶ÔÏóµÄ˼Ïë½øÐÐÉè¼ÆºÍ±à³Ì¡£

Transaction Script·ç¸ñµÄ¼Ü¹¹¾ßÓÐÃ÷ÏԵġ°Êý¾Ý¡±Óë¡°²Ù×÷¡±·ÖÀëµÄÌØÕ÷£¬ÆäºÍÁìÓòÇý¶¯Éè¼Æ·ç¸ñµÄ¼Ü¹¹ÔÚÁ½¸öÀà×é¼þÉÏÓÐÖʵÄÇø±ð£¬Ò»¸öÊÇÁìÓò¶ÔÏó£¬Ò»¸öÊÇ Service¡£ÁìÓòÇý¶¯Éè¼ÆµÄ¼Ü¹¹ºËÐÄÄ¿±êÊÇÒª´´½¨Ò»¸ö¸»ÁìÓòÄ£ÐÍ£¬ÆäµäÐÍÌØÕ÷ÊÇËüµÄÁìÓò¶ÔÏó¾ßÓзḻµÄÒµÎñ·½·¨ÓÃÒÔ´¦ÀíÒµÎñÂß¼­£¬¶ø Transaction Script·ç¸ñµÄÁìÓò¶ÔÏóÔò½ö½öÊÇÊý¾ÝµÄÔØÌ壬ûÓÐÒµÎñ·½·¨£¬ÕâÖÖÁìÓòÒ²±»³Æ×÷¡°Æ¶ÑªµÄÁìÓò¶ÔÏó¡±(Anemic Domain Objects)¡£ÔÚService·½Ã棬ÁìÓòÇý¶¯Éè¼ÆµÄ¼Ü¹¹ÀïServiceÊǷdz£¡°±¡¡°µÄÒ»²ã£¬Æä²¢²»¸ºÔð´¦ÀíÒµÎñÂß¼­£¬¶øÔÚ Transaction Script·ç¸ñµÄ¼Ü¹¹ÀServiceÊÇ´¦ÀíÒµÎñÂß¼­µÄÖ÷Òª³¡Ëù£¬Òò¶øÍùÍù·Ç³£ºñÖØ¡£

¶þ¡¢¸÷²ãÏê½â

1.Interfaces-½Ó¿Ú²ã

ÁìÓòÇý¶¯Éè¼Æ¶ÔInterfacesµÄ¶¨Î»ÊÇ:

¸Ã²ã°üº¬ÓëÆäËûϵͳ½øÐн»»¥µÄ½Ó¿ÚÓëͨÐÅÉèÊ©£¬ÔÚ¶àÊýÓ¦ÓÃÀ¸Ã²ã¿ÉÄÜÌṩ°üÀ¨Web Services¡¢RMI»òRestµÈÔÚÄÚµÄÒ»ÖÖ»ò¶àÖÖͨÐŽӿڡ£¸Ã²ãÖ÷ÒªÓÉFacade¡¢DTOºÍAssemblerÈýÀà×é¼þ¹¹³É£¬ÈýÀà×é¼þ¾ùÊǵäÐ굀 J2EEģʽ¡£

ÒÔÏÂÊǶÔÈýÀà×é¼þµÄ¾ßÌå½éÉÜ£º

1.1.DTO

DTO- DataTransfer Object£¨Êý¾Ý´«Êä¶ÔÏ󣩣¬Ò²³£±»³Æ×÷VO-Value Object(Öµ¶ÔÏó)¡£»ùÓÚÃæÏò¶ÔÏó¼¼ÊõÉè¼ÆµÄÁìÓò¶ÔÏ󣨼´Í¨³£Ëù˵µÄ¡°ÊµÌ塱£©¶¼ÊÇϸÁ£¶ÈµÄ£¬½«Ï¸Á£¶ÈµÄÁìÓò¶ÔÏóÖ±½Ó´«µÝµ½Ô¶³Ìµ÷ÓöËÐèÒª½øÐжà´ÎÍø ÂçͨÐÅ£¬DTOÔÚÉè¼ÆÖ®³õµÄÖ÷Òª¿¼Á¿ÊÇÒÔ´ÖÁ£¶ÈµÄÊý¾Ý½á¹¹¼õÉÙÍøÂçͨÐŲ¢¼ò»¯µ÷Óýӿڡ£ÒÔÏÂÂÞÁÐÁËDTOµÄ¶àÏî×÷Óãº

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

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

ÔÚ¸üÉÙµÄÔ¶³Ìµ÷ÓÃÖд«Êä¸ü¶àµÄÊý¾Ý

¼õÉÙ´úÂëÖØ¸´

˵Ã÷³Â¾ÉµÄ´«Êä¶ÔÏó

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

1.2.Assembler

ÔÚÒýÈëDTOºó£¬DTOÓëÁìÓò¶ÔÏóÖ®¼äµÄÏ໥ת»»¹¤×÷¶àÓÉAssembler³Ðµ££¬Òò´ËAssembler¼¸ºõ×ÜÊÇͬDTOÒ»Æð³öÏÖ¡£Ò²ÓÐһЩϵͳʹÓ÷´Éä»úÖÆ×Ô¶¯ÊµÏÖDTOÓëÁìÓò¶ÔÏóÖ®¼äµÄÏ໥ת»»¡£

1.3.Facade

×÷ΪһÖÖÉè¼ÆÄ£Ê½Í¬Ê±Ò²ÊÇInterfaces²ãÄÚµÄÒ»Àà×é¼þ£¬FacadeµÄÓÃÒâÔÚÓÚΪԶ³Ì¿Í»§¶ËÌṩ´ÖÁ£¶ÈµÄµ÷Óýӿڡ£Facade±¾Éí²» ´¦ÀíÈκεÄÒµÎñÂß¼­£¬ËüµÄÖ÷Òª¹¤×÷¾ÍÊǽ«Ò»¸öÓû§ÇëÇóίÅɸøÒ»¸ö»ò¶à¸öService½øÐд¦Àí£¬Í¬Ê±½èÖúAssembler½«Service´«Èë»ò´«³öµÄ ÁìÓò¶ÔÏóת»¯ÎªDTO½øÐд«Êä¡£ÒÔÏÂÂÞÁÐÁËFacadeµÄ¶àÏî×÷Óãº

½éÉÜÒ»ÖÖΪԶ³Ì¿Í»§¶ËÌṩ·þÎñµÄ²ã

¹«¿ªÒ»¸öͳһµÄ´ÖÁ£¶È½Ó¿Ú

¼õÉÙ²ãÖ®¼äµÄñîºÏ

´Ù½ø·Ö²ã£¬Ôö¼ÓÁé»îÐԺͿÉά»¤ÐÔ

½µµÍ¸´ÔÓÐÔ

¸Ä½øÐÔÄÜ£¬¼õÉÙϸÁ£¶ÈµÄÔ¶³Ì·½·¨

¼¯Öа²È«¹ÜÀí

¼¯ÖÐʹÓÃÊÂÎñ¿ØÖÆ

Ïò¿Í»§»ú¹«¿ª¸üÉÙµÄÔ¶³Ì½Ó¿Ú

2.Application-Ó¦Óòã

ÁìÓòÇý¶¯Éè¼Æ¶ÔApplicationµÄ¶¨Î»ÊÇ:

Application²ãÖÐÖ÷Òª×é¼þ¾ÍÊÇService,ÔÚÁìÓòÇý¶¯Éè¼ÆµÄ¼Ü¹¹ÀServiceµÄ×éÖ¯Á£¶ÈºÍ½Ó¿ÚÉè¼ÆÒÀ¾ÝÓ봫ͳTransaction Script·ç¸ñµÄServiceÊÇÒ»Öµģ¬µ«ÊÇÁ½ÕßµÄʵÏÖÈ´ÓÐ×ÅÖʵÄÇø±ð¡£Transaction Script·ç¸ñµÄServiceÊÇʵÏÖÒµÎñÂß¼­µÄÖ÷Òª³¡Ëù£¬Òò´ËÍùÍù·Ç³£ºñÖØ¡£¶øÔÚÁìÓòÇý¶¯Éè¼ÆµÄ¼Ü¹¹ÀApplicationÊǷdz£¡°±¡¡±µÄÒ»²ã£¬ËùÓеÄServiceÖ»¸ºÔðЭµ÷²¢Î¯ÅÉÒµÎñÂß¼­¸øÁìÓò¶ÔÏó½øÐд¦Àí£¬Æä±¾Éí²¢ÕæÕýʵÏÖÒµÎñÂß¼­£¬¾ø´ó²¿·ÖµÄÒµÎñÂß¼­¶¼ÓÉÁìÓò¶ÔÏó³ÐÔØºÍʵÏÖÁË£¬ÕâÊÇÇø±ðϵͳÊÇTransaction Script¼Ü¹¹»¹ÊÇDomain Model¼Ü¹¹µÄÖØÒª±êÖ¾¡£²»¹ÜÊÇTransaction Script·ç¸ñ»¹ÊÇDomain Model·ç¸ñ£¬Service¶¼»áÓë¶àÖÖ×é¼þ½øÐн»»¥£¬ÕâЩ×é¼þ°üÀ¨£ºÆäËûµÄService¡¢ÁìÓò¶ÔÏóºÍRepository »ò DAO¡£

3. Domain-ÁìÓò²ã

ÁìÓòÇý¶¯Éè¼Æ¶ÔDomainµÄ¶¨Î»ÊÇ:

Domain²ãÊÇÕû¸öϵͳµÄºËÐIJ㣬¸Ã²ãά»¤Ò»¸öʹÓÃÃæÏò¶ÔÏó¼¼ÊõʵÏÖµÄÁìÓòÄ£ÐÍ£¬¼¸ºõÈ«²¿µÄÒµÎñÂß¼­»áÔڸòãʵÏÖ¡£Domain²ã°üº¬ Entity£¨ÊµÌ壩¡¢ValueObject(Öµ¶ÔÏó)¡¢Domain Event£¨ÁìÓòʼþ£©ºÍRepository£¨²Ö´¢£©µÈ¶àÖÖÖØÒªµÄÁìÓò×é¼þ¡£²Ö´¢ÊÇÔÚÁìÓò²ã¶¨Ò壬ÔÚ»ù´¡ÉèÊ©²ãʵÏÖ

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

ÁìÓòÇý¶¯Éè¼Æ¶ÔInfrastructureµÄ¶¨Î»ÊÇ:

×÷Ϊ»ù´¡ÉèÊ©²ã£¬InfrastructureΪInterfaces¡¢ApplicationºÍDomainÈý²ãÌṩ֧³Å¡£ËùÓÐÓë¾ßÌåÆ½Ì¨¡¢ ¿ò¼ÜÏà¹ØµÄʵÏÖ»áÔÚInfrastructureÖÐÌṩ£¬±ÜÃâÈý²ãÌØ±ðÊÇDomain²ã²ôÔÓ½øÕâЩʵÏÖ£¬´Ó¶ø¡°ÎÛȾ¡±ÁìÓòÄ£ÐÍ¡£ InfrastructureÖÐ×î³£¼ûµÄÒ»ÀàÉèÊ©ÊǶÔÏó³Ö¾Ã»¯µÄ¾ßÌåʵÏÖ¡£

5.¾ßÌåÁ÷³Ìͼ

 

   
1941 ´Îä¯ÀÀ       34
Ïà¹ØÎÄÕÂ

ΪʲôҪ×ö³ÖÐø²¿Êð£¿
ÆÊÎö¡°³ÖÐø½»¸¶¡±£ºÎå¸öºËÐÄʵ¼ù
¼¯³ÉÓë¹¹½¨Ö¸ÄÏ
³ÖÐø¼¯³É¹¤¾ßµÄÑ¡Ôñ-×°ÔØ
 
Ïà¹ØÎĵµ

³ÖÐø¼¯³É½éÉÜ
ʹÓÃHudson³ÖÐø¼¯³É
³ÖÐø¼¯³ÉÖ®-ÒÀÀµ¹ÜÀí
IPD¼¯³É²úÆ·¿ª·¢¹ÜÀí
Ïà¹Ø¿Î³Ì

ÅäÖùÜÀí¡¢ÈÕ¹¹½¨Óë³ÖÐø¼¯³É
Èí¼þ¼Ü¹¹Éè¼Æ·½·¨¡¢°¸ÀýÓëʵ¼ù
µ¥Ôª²âÊÔ¡¢Öع¹¼°³ÖÐø¼¯³É
»ùÓÚAndroidµÄµ¥Ôª¡¢ÐÔÄܲâÊÔ