开å‘ähå‘˜æ ¹æ®è¯¥åŽŸç†å›¾è¿›è¡Œç¼–ç ,直到包å«äº†æ‰€æœ‰çš„功能åQŒè€Œä¸”大多数的bug都已¾l消除。最åŽï¼Œåº”用½E‹åºè¢«äº¤¾l™æµ‹è¯•äh员,他们å¯èƒ½æŒ‰ç…§éœ€æ±‚进行æ£å¼çš„‹¹‹è¯•åQŒä¹Ÿå¯èƒ½åªæŸ¥æ‰¾bug。但是,通过‹¹‹è¯•˜q行的代ç ,他们通常都能扑ևºbugå’Œå…¶ä»–ç¼ºé™øP¼Œç„¶åŽž®†å…¶å½’纳ã€è®°å½•,òq¶è¿”回给开å‘äh员从而解冟뀂针对一个èÊY件版本,˜q™ä¸ªå¾€˜q”过½E‹å¯èƒ½è¦èŠ±å‡ ä¸ªæœˆçš„æ—¶é—ß_¼Œ˜q™å–决于‹¹‹è¯•ž®ç»„ä½¿ç”¨çš„è´¨é‡æ ‡å‡†ã€?/p>
ã€€ã€€åœ¨ä¼ ¾lŸçš„生命周期ä¸å˜åœ¨ç€éšæ‚£ã€‚é€šå¸¸‹¹‹è¯•人员是第一个对应用½E‹åºçš„ä“Qæ„部分进行éžåŠŸèƒ½éœ€æ±‚ï¼ˆ˜q™äº›éœ€æ±‚å®šä¹‰çš„ä¸æ˜¯å…·ä½“的功能,而是å“应性ã€å½“å‰ç”¨æˆïLš„æ•°é‡æˆ–æ£å¸¸è¿è¡Œæ—¶é—ß_¼‰‹¹‹è¯•çš„ã€‚çŒœçŒœä¼šæ€Žä¹ˆæ øP¼Ÿä»–们通常å‘现应用½E‹åºå˜åœ¨¾~ºé™·åQŒæˆ–者ä¸èƒ½è¾¾åˆ°è¦æ±‚的用户数é‡åQŒæˆ–者å“应速度ä¸å¤Ÿå¿«è€Œé€ æˆä¸ä¾¿ã€‚所以应用程åºåˆ˜q”回到开å‘阶ŒDµï¼Œ˜q›è¡Œåˆ†æžåQŒåƈå¯ÒŽŸäº›éƒ¨åˆ†è¿›è¡Œä¿®æ”¹ï¼Œä½†æ˜¯ä¿®æ”¹çš„é€šå¸¸ä¸æ˜¯éœ€è¦ä¿®æ”¹çš„éƒ¨åˆ†ã€‚ä¸½Ž¡æ€Žæ ·åQŒæœ€åŽå®ƒéƒ¨çÖv了,用户ž®±åªå¥½å‡‘åˆä‹É用;或者它被废弃,æˆäØ“åˆä¸€ä¸ªå¤±è´¥çš„应用½E‹åºå¼€å‘ã€?/p>
  应用½E‹åºå…¶ä½™çš„æ‰§è¡Œæ—¶é—´éƒ½èŠ±åœ¨å“ªé‡Œäº†å‘¢åQŸç”案是花在¾cÕdº“ã€JVM或是数æ®åº“的讉K—®ä¸Šäº†ã€‚å¯ä»¥é‡‡ç”¨ä¸€äº›ç–略改˜q›æ•°æ®åº“讉K—®åQŒæ¯”如ä‹É用邻接原ç?contiguity principle) 或其他算法在查询时å–出或¾~“å˜é¢å¤–的数æ®ã€‚虽然这些ç–ç•¥æœ‰åŠ©äºŽåŠ é€Ÿåº”ç”¨ç¨‹åºï¼Œä½†æ˜¯å…¶ä½œç”¨æœ‰é™ï¼Œè€Œä¸”它们˜q˜ä¼šå¦¨ç¢å¦ä¸€ä¸ªé‡è¦ç›®æ ‡ï¼šå¯äŽ×¾~©æ€§ã€‚性能和å¯ä¼¸ç¾ƒæ€§å¿…™åÕdœ¨è®¾è®¡æ—¶è€ƒè™‘åQŒè€Œä¸æ˜¯åˆ°¾~–ç æ—¶æ‰è€ƒè™‘ã€?/p>
  应用½E‹åºæž¶æž„设计拙劣的å¦ä¸€ä¸ªåŽŸå› æ˜¯åQŒç”±äºŽè¾ƒé«˜çš„æˆæœ¬æˆ–æŠ€æœ¯ä¸Šçš„é™åˆÓž¼Œè¢«å–消或是大òq…羃å‡çš„å¼€å‘项目的比例一直居高ä¸ä¸‹ï¼ˆæ®è°ƒæŸ¥è¡¨æ˜Žï¼Œé€šå¸¸æ˜?0%åˆ?0%åQ‰ã€‚è®¸å¤šå› ç´ é€ æˆäº†é¡¹ç›®çš„å¤ÞpÓ|æˆ–å–æ¶ˆï¼Œæœ€å¸¸è§çš„æ˜¯éœ€æ±‚çš„å˜åŒ–。但是很多情况下åQŒä¸å¥½çš„æž¶æž„ä¹Ÿæ˜¯åŽŸå› ä¹‹ä¸€ã€‚ä¸šåŠ¡éœ€æ±‚å¯ä»¥ä¹Ÿè‚¯å®šä¼šéšæ—‰™—´æ”¹å˜åQŒå› æ¤ä“Qä½•ä½œä¸ø™§£å†Ïx–¹æ¡ˆçš„æž¶æž„都必™åÕd°†˜q™ä¸ªå› ç´ è€ƒè™‘åœ¨å†…ã€‚çµ‹zÀL€§å¼ºçš„æž¶æž„未必能æˆåŠŸåQŒä½†æ˜¯å¾ˆå¯èƒ½ä¼šæé«˜äº¤ä»˜æœ‰ç”¨é¡¹ç›®çš„å‡ çŽ‡ã€?/p>
  形势与以å‰ä¸ä¸€æ ·äº†åQŒè¿‡åŽÀLœ‰å¯èƒ½é€šè¿‡å·§å¦™åœ°æ›´æ”ÒŽŸäº›ä»£ç 而大大æå‡æ€§èƒ½å’Œå¯ä¼¸ç¾ƒæ€§ï¼Œè€Œä»Šéƒ½æ˜¯˜q行在虚拟机上的分布å¼åº”用程åºï¼Œå¿…须更改架构æ‰èƒ½è¾‘Öˆ°ç›¸åŒçš„æ•ˆæžœã€‚æ¯ä¸ªå¼€å‘äh员手ä¸éƒ½åªæŽŒæ¡äº†å…¨éƒ¨ä»£ç 的一ž®éƒ¨åˆ†ï¼Œè€Œä¸”åšå‡ºäº†è®¸å¤šåª„å“了性能的决½{–ã€?/p>
ã€€ã€€æ›´æ”¹æž¶æž„æ¯”æ›´æ”¹ä»£ç æ›´éš¾ï¼Œ˜q™æœ‰ä¸¤ä¸ªåŽŸå› ã€‚é¦–å…ˆï¼Œæ›´æ”¹æž¶æž„ä¸æ˜¯ä¸€™å¹å®¹æ˜“ç†è§£çš„è¡ŒäØ“åQŒè€Œå®ƒæ‰€éœ€çš„æŠ€èƒ½ä¹Ÿä¸Žæ›´æ”¹ä»£ç 所需的技能完全ä¸åŒã€‚å…¶‹Æ¡ï¼Œæž¶æž„的更改必™åÕdœ¨åº”用½E‹åºç”Ÿå‘½å‘¨æœŸçš„æ—©æœŸè¿›è¡Œã€‚如果ç‰åˆ°åŽæœŸçš„¾~–ç 阶段对应用程åºè¿›è¡Œæµ‹è¯•æ—¶æ‰å®šä¹‰æž¶æž„上的é™åˆÓž¼Œé‚£ä¹ˆå·²å®Œæˆçš„应用½E‹åºž®±å¾ˆéš¾è¢«æŒ½æ•‘了ã€?/p>
  ä¸ÞZ»€ä¹ˆä¼šæœ‰å¦‚æ¤å¤šä¸é€‚å½“çš„åº”ç”¨ç¨‹åºæž¶æž„å‘¢åQŸè¿™æœ‰å¾ˆå¤šåŽŸå› ï¼š
分布å¼ç³»¾lŸè¿˜æ˜¯æ¯”较新的事物。虽然æ€Èš„æ¥è¯´å…¶ä¼˜ç‚¹å’Œå±€é™æ€§å·²¾läØ“å¤§å®¶æ‰€çŸ¥ï¼Œä½†æ˜¯è¦å°†˜q™äº›ä¸€èˆ¬æ€§åŽŸç†åº”用到特定的应用和基础架构ä¸å´å¾ˆå›°éš¾ã€?br />å› äØ“˜q™äº›¾pÈ»Ÿæ¯”较斎ͼŒæ‰€ä»¥æœ‰å…Œ™®¾è®¡å’Œæœ€ä½›_®žè·ëŠš„ä¿¡æ¯ä¼ æ’得还ä¸å¤Ÿòq¿ï¼Œä»¥è‡³äºŽä¼ä¸šçš„ä¸»è¦æž¶æž„å¸ˆè¿˜ä¸æ›¾ä½“验˜q‡æ–°çš„设计实è·üc€?br />ä¸åŒçš„应用æœåС噍åŠå…¶ä»–çš„ä¸é—´ä»¶çš„æ€§èƒ½å’Œå¯ä¼¸ç¾ƒæ€§ä¸åŒã€‚æ¤å¤–,˜q™äº›¾l„äšgçš„è°ƒæ•´è¦æ±‚也ä¸åŒåQŒé€šå¸¸éœ€è¦ä¸“é—¨çš„çŸ¥è¯†æˆ–ç»†å¿ƒçš„ç ”ç©¶ã€?br />除了ä¼ä¸šåº”用½E‹åºéœ€æ±‚çš„å¤šæ ·æ€§å¤–åQŒé€šå¸¸æž¶æž„å¸ˆè¿˜è¢«è¦æ±‚ä‹Éç”¨å¯¹äºŽåº”ç”¨ç¨‹åºæ¥è¯´ä¸æ˜¯æœ€ä½³çš„基础架构和ä¸é—´äšgã€‚è¿™ä¸æ˜¯å› äØ“æž¶æž„å¸ˆçš„èƒ½åŠ›æˆ–ç»éªŒä¸å¤Ÿï¼Œè€Œæ˜¯å› 䨓他们å—制于工作现实ã€?/p>
æž„é€ ç›®æ ?/p>
  最åŽä¸€ç‚šwœ€è¦ç‰¹åˆ«æ³¨æ„。架构师们被告知åQŒæˆ–者自å·Þp®¤ä¸ºï¼Œå¿…须按照已绞®ÞqÈAçš„ä¸é—´äšg和基¼‹€æž¶æž„çš„å‚æ•°å·¥ä½œã€‚在许多情况下,˜q™ç§¾U¦æŸž®±åƒè¯•图ž®†ä¸€ä¸ªæ–¹å½¢çš„æœ¨æŸ±æ‰“入一个圆形的‹zžä¸€æ —÷€‚例如,ä¼ä¸šä¸ç½‘¾lœçš„æœ€åˆè®¾è®¡ç›®æ ‡å¯èƒ½æ˜¯é’ˆå¯¹æ¥è‡ªPCæœåŠ¡å™¨çš„æ–‡äšgåQŒè€Œä¸æ˜¯é’ˆå¯ÒŽ¥è‡ªåŸºäºŽLinux的应用æœåŠ¡å™¨çš„äº‹åŠ¡ã€?/p>
  在æŸäº›æƒ…况下åQŒè¿™¿Uä¸åŒšw…æ˜¯æ— æ³•é¿å…的。ä‹Éç”¨æ¬¡ä¼˜çš„æ”¯æŒæœåŠ¡æœ‰æ—¶æ˜¯è¿«ä¸å¾—已的。这里有一个折è¡ïLš„问题。糟¾p•的应用æœåС噍ã€ä¸åˆé€‚çš„¾|‘络åQŒæˆ–其他的基¼‹€æž¶æž„¾l„äšgå¯èƒ½ä¿ƒæˆä¸å¥½çš„æž¶æž„——至ž®‘æˆä¸ºå…¶å€Ÿå£ã€?/p>
  ˜q™å°±æ˜¯äؓ什么在为新的分布å¼åº”用½E‹åº¼‹®å®šæž¶æž„æ—¶åªçœ‹åº”ç”¨ç¨‹åºæ˜¯ä¸å¤Ÿçš„。那些ä‹É架构师能够将应用½E‹åºè®¾è®¡æ˜ 射为基¼‹€æž¶æž„傿•°çš„开呿–¹æ³•,ž®±å¾ˆæœ‰å¯èƒ½è¯†åˆ«é™åˆ¶åº”用程åºä‹Éå…¶ä¸èƒ½è¾¾åˆ°é¢„å®šç›®æ ‡çš„åŸºç¡€æž¶æž„é—®é¢˜ã€?/p>
  ¼‹®å®šæè®®çš„æž¶æž„å¯ä»¥åº”用于现有的基¼‹€æž¶æž„是一个好的开端,但是òq¶ä¸èƒ½å¤Ÿæ»¡èƒöé’ˆå¯¹ç‰¹å®šçš„ç‰¹æ€§æœ€ä¼˜åŒ–è¯¥æž¶æž„ï¼Œæˆ–è€…é‡æ–°é…¾|®åŸº¼‹€æž¶æž„以更好地éµä»ŽæœåС层å议的需求。对于在¾~–ç 开始之å‰ç¡®ä¿èƒ½å¤Ÿå¾ˆå¥½åœ°æ»¡èƒö性能和å¯ä¼¸ç¾ƒæ€§ç›®æ ‡ï¼Œæž¶æž„师负有很大的责ä“Qã€?/p>
ã€€ã€€åœ¨æž„å»ºåº”ç”¨ç¨‹åºæž¶æž„æ–¹é¢ï¼Œæœ‰å¾ˆå¤šè¾…助程åºã€‚Sun Microsystems的模å¼å’Œæœ€ä½›_®žè·µWeb站点æä¾›äº†è®¸å¤šè®¾è®¡æ¨¡å¼ï¼Œå…¶ä¸å¤§å¤šæ•°éƒ½æ˜¯æž¶æž„模å¼è€Œä¸æ˜¯ç¼–ç æ¨¡å¼ï¼Œå› æ¤æ˜¯ä¸€ä¸ªå¾ˆå¥½çš„èµïL‚¹ã€‚微软æä¾›äº†å…¶Webç«™ç‚¹çš„åº”ç”¨ç¨‹åºæž¶æž„éƒ¨åˆ†ï¼Œå…¶ä¸æœ‰å¤§é‡çš„设计模å¼å’Œå…¶ä»–的一些å¾è®®ã€‚虽然其ä¸è®¸å¤šæ¨¡å¼ä‹É用的都是微èÊYçš„æŠ€æœ¯ï¼Œä½†æ˜¯é‚£äº›å»ø™®®åˆ™æ™®é适用于ä“Q何分布å¼åº”用½E‹åºã€?/p>
  有哪些架构模å¼å¯ç”¨ï¼Ÿòq¿æ³›ä½¿ç”¨çš„æ¨¡åž?视图-控制å™?Model-View-ControlleråQŒMVC) 模å¼åŠå…¶å¾ˆå¤šå˜ä½“是很好的代表åQŒå¦å¤–还有安全性ã€èín份验è¯å’ŒæŽˆæƒ½{‰ä¸»é¢˜ã€‚æ•°æ®ç®¡ç†å’Œè®‰K—®è¢«ä½œä¸ºåœ¨åº”ç”¨å±‚ä¹‹é—´ä¼ é€’æ•°æ®çš„½{–ç•¥˜q›è¡Œè®¨è®ºã€‚所有这些以åŠå…¶ä»–模å¼å¯¹äºŽè®¾è®¡åˆ†å¸ƒå¼åº”用½E‹åºçš„æœ€ä¼˜æ€§èƒ½å’Œå¯ä¼¸ç¾ƒæ€§éƒ½æ˜¯æœ‰ç”¨çš„æ¨¡å¼ã€?/p>
  除了˜q™äº›å»ø™®®ã€å…¶ä»–æ¥æºçš„廸™®®åQŒä»¥åŠå’¨è¯¢å…¬å¸çš„æœåŠ¡åQŒä¼¼ä¹Žè¿˜¾~ºå°‘ä¸€ä¸ªåÆˆéžæŽ¨è特定äñ”哿ˆ–解决æ–ÒŽ¡ˆçš„æœ€ä½›_®žè·ëŠº²è¦ã€‚问题是˜q™æ ·çš„集åˆå°†ä¼šéšå½¢åŠ¿è€Œä¸æ–å˜åŒ–ï¼Œå› äØ“æœ‰å¦‚æ¤å¤šçš„å› ç´ åª„å“ç€åˆ†å¸ƒå¼åº”用程åºçš„æœ€ä¼˜åŒ–。但是,å˜åœ¨‘›_¤Ÿå¤šçš„ä¸åŒæ¥æºå’Œæ¨¡å¼ï¼Œå¯ä»¥ä¸ºæž¶æž„师æä¾›æœ‰å…³åœ¨å¤§å¤šæ•°òq›_°å’Œä¸é—´äšg下设计分布å¼åº”用½E‹åºòq‰™…¾|®åº”用程åºç»„ä»¶çš„å„ç§å»ø™®®å’Œæ–¹å‘ã€?/p>
  å¯ÒŽž¶æž„师˜q›è¡Œè‰¯å¥½çš„æ•™è‚²å’ŒåŸ¹è®ä¹Ÿæ˜¯å› ç´ ä¸çš„一部分。例如,我还没有看到关于应用½E‹åºæž¶æž„的大å¦è¯¾½E‹ï¼ˆå¦‚æžœ¼‹®å®žå˜åœ¨è¯·å‘Šè¯‰æˆ‘åQ‰ã€‚大多数情况下,大å¦çš„课½E‹éƒ½åªé‡è§†å¯¹æ•´ä¸ªåº”用½E‹åºæˆ–å•个应用程åºç»„ä»¶çš„¾~–ç åQŒè€Œä¸€èˆ¬éƒ½å¿½ç•¥äº†åˆ†å¸ƒå¼åº”用½E‹åºã€‚è¿™¿Uä¸å¥½çš„å±€é¢å¿…™åÀL”¹å˜ï¼Œ˜q™æ ·æ‰èƒ½åŸ¹å…»å‡ºå¯ä»¥å¼€å‘现实世界的分布å¼ç³»¾lŸæž¶æž„的专业人员ã€?/p>
¾l™æž¶æž„师的å¾è®?/p>
  总而言之,从现在开始,软äšgå¼€å‘å°¾l„和用户代表需è¦é‡è§†åº”ç”¨ç¨‹åºæž¶æž„了åQŒè¦ž®†å…¶çœ‹ä½œæ˜¯ç¼–ç 之å‰çš„一个关键æ¥éª¤ã€‚虽然当今的IDEå’Œåº”ç”¨ç¨‹åºæ¡†æž¶ä‹É¾~–ç å˜å¾—è½ÀL¾äº†ï¼Œä½†æ˜¯å®ƒä»¬å¯ÒŽž¶æž„æ¯«æ— å¸®åŠ©ã€‚æˆ‘ž®†è¯•ç€æ‰‘Ö‡ºè§£å†³çš„æ–¹æ³•ã€?/p>
  我的计划是进行架构审查,在这个过½E‹ä¸æ‰€æœ‰æ¶‰ä¼—(包括用户åQ‰éƒ½çœ‹åˆ°äº†å…³äºŽæ–°åº”用½E‹åºçš„æè®®æž¶æž„的演示文稿åQŒåŒ…æ‹¬äØ“ä»€ä¹ˆé‡‡ç”¨è¿™¿U架构,该架构对哪些部分˜q›è¡Œäº†æœ€ä¼˜åŒ–åQŒä»¥åŠè¿›è¡Œäº†å“ªäº›æŠ˜è¡·ã€‚当然了åQŒå®¡æŸ¥æ˜¯ç”±æž¶æž„师ä¸ÀLŒçš„,而且他或她的ä»ÕdŠ¡æ˜¯ä‹Éæ¶‰ä¼—ç›æ€¿¡åQŒè¯¥æž¶æž„½W¦åˆæ¯ä¸ªäººçš„æœ€å¤§åˆ©ç›Šã€‚è‡ªç„¶ä¼šæœ‰ä¸€äº›ç›®æ ‡äº’ç›¸å†²½Hï¼Œå¿…é¡»é€šè¿‡å¦¥åæ‰èƒ½è§£å†³åQŒä½†æ˜¯æœ€¾lˆç»“æžœæ˜¯äº§ç”Ÿä¸€ä¸ªä¸šåŠ¡ç›®æ ‡å’ŒæŠ€æœ¯ç›®æ ‡éƒ½èƒ½æœ€å¤§ç¨‹åº¦åœ°å¾—åˆ°æ»¡èƒö的架构。ä‹Éè¦ç¼–ç 的应用½E‹åºå¯ä»¥å®žçŽ°å®ƒå¿…™åÕd®žçŽ°çš„æ€§èƒ½å’Œå¯ä¼¸ç¾ƒæ€§è¦æ±‚çš„½{–ç•¥˜q˜æœ‰å¾…䏿–地完善和å‘展ã€?/p>
å‚考资æ–?br />FTPOnline上的“The Business Perception of MDAâ€ï¼Œç”±Java Pro的编辑撰写,2005òq?æœ?æ—¥ã€?/p>
原文出处
http://www.ftponline.com/javapro/2005_06/magazine/columns/objectenterprise/?sid=rssfeed_channelJava
 作者简介Â?br />Peter Varhol是Compuwareå…¬å¸çš„æŠ€æœ¯ä¸“å®?