ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>国产亚洲成AV人片在线观黄桃,国产亚洲精品欧洲在线观看,亚洲精品福利在线观看http://www.tkk7.com/kissyan4916/category/45471.html哎哟 OrzåQŒä¸é”™å–”~~希望¾l“识更多喜爱Java的朋å?<br> &nbsp;&nbsp;&nbsp;&nbsp;QQåQ?5350863 MSNåQšchenyanhubusiness@gmail.com E-mailåQšchenyanhu@vip.163.comzh-cnThu, 08 Jul 2010 15:47:19 GMTThu, 08 Jul 2010 15:47:19 GMT60è¯ÖM¹¦½W”记之《èÊY件构架实è·?ã€?-½W¬äºŒç«?http://www.tkk7.com/kissyan4916/articles/325294.html金色闪电(sh¨´)金色闪电(sh¨´)Mon, 05 Jul 2010 08:02:00 GMThttp://www.tkk7.com/kissyan4916/articles/325294.html~ ½W¬äºŒç«?  ä»€ä¹ˆæ˜¯è½¯äšg构架
  • 软äšg构架概念的澄æ¸?/strong>      ä¸‹é¢æˆ‘们¾l™å‡ºè½¯äšg构架的确切定义:(x¨¬) æŸä¸ªè½¯äšg或计½Ž—ç³»¾lŸçš„软äšg构架是该¾pÈ»Ÿçš„一个或多个¾l“æž„åQŒå®ƒä»¬ç”±è½¯äšg元素ã€è¿™äº›å…ƒç´ çš„外部å¯è§å±žæ€§ä»¥å?qi¨¢ng)这些元素之间的关系¾l„æˆã€?˜q™é‡Œæ‰€è¯´çš„æŸä¸ªå…ƒç´ çš?#8220;外部å¯è§å±žæ€?#8221;是指其他元素对该元素所åšçš„å‡è®¾åQŒå¦‚它所æä¾›çš„æœåŠ¡ã€æ€§èƒ½ç‰ÒŽ(gu¨©)€§ã€é”™è¯¯å¤„ç†ã€å…±äº«èµ„æºçš„使用åQŒç­‰½{‰ã€‚䏋颿ˆ‘们深入阘qîC¸€ä¸‹è¯¥æž„æž¶çš„å«ä¹‰ã€?

    1. 构架定义了èÊYä»¶å…ƒç´?/font>。构架中包å«äº†å…³äºŽå„元素应如何彼此相关的信æ¯ã€‚也ž®±æ˜¯è¯ß_(d¨¢)¼Œæž„æž¶å¿…é¡»çœç•¥å„元素中与其交互无关的æŸäº›ä¿¡æ¯ã€‚因此,构架首先是对¾pÈ»Ÿçš?font color="#0033ff">抽象åQŒè¯¥æŠ½è±¡åŽ»é™¤äº†ä¸å½±å“它们如何使用ã€å…¶ä»–元素如何ä‹É用以å?qi¨¢ng)如何与其他元素兌™”或交互的¾l†èŠ‚ã€‚åœ¨å‡ ä¹Žæ‰€æœ‰çš„çŽîC»£¾pÈ»Ÿä¸­ï¼Œå„元素是通过接å£å®žçŽ°äº¤äº’çš„ï¼Œè€Œè¿™äº›æŽ¥å£åˆž®†å„å…ƒç´ çš„ç»†èŠ‚åˆ’åˆ†äØ“(f¨´)å…±æœ‰å’Œç§æœ‰ä¸¤å¤§ç±»ã€‚æ ¹æ®è¿™¿U划分,构架属于共有部分åQŒè€Œç§æœ‰éƒ¨åˆ?-å³ä»…与内部具体实现有关的¾l†èŠ‚--是ä¸å±žäºŽæž„æž¶çš„ã€?
    2. 该定义明¼‹®æŒ‡å‡?font color="#0033ff">¾pÈ»Ÿå¯èƒ½è€Œä¸”¼‹®å®žç”±å¤šä¸ªç»“构组æˆ?/font>åQŒè€Œä¸”åQŒå…¶ä¸­ä“Qä½•ä¸€ä¸ªç»“æž„åÆˆä¸èƒ½ä¸Žæž„æž¶ç­‰åŒã€?
    3. 该定义æ„味ç€å…ähœ‰è½¯äšgçš„æ¯ä¸ªè®¡½Ž—ç³»¾lŸéƒ½æœ‰ä¸€ä¸ªèÊYä»¶æž„æž?/font>åQŒè¿™æ˜¯å› ä¸ºæ¯ä¸ªèÊYä»¶ç³»¾lŸéƒ½å¯ä»¥çœ‹åšæ˜¯ç”±è‹¥å¹²ä¸ªå…ƒç´ åŠ(qi¨¢ng)其相互蔾pÀLž„æˆçš„。在最½Ž€å•的情况下,我们å¯ä»¥æŠŠä¸€ä¸ªç³»¾lŸçœ‹åšæ˜¯ä¸€ä¸ªå…ƒç´ ã€‚è™½ç„¶ä»…æœ‰ä¸€ä¸ªå…ƒç´ çš„æž„æž¶æ²¡æœ‰å¤šå¤§ä»·å€û|¼Œè€Œä¸”也ä¸å®žç”¨åQŒä½†å®ƒç¬¦åˆæˆ‘们的定义。æ¯ä¸ªç³»¾lŸéƒ½æœ‰æž„æžÓž¼Œä½†è¿™òq¶ä¸æ„味˜q™ä“Q何äh都知晓该构架的存在。或许当时å‚与设计æŸä¸ªç³»¾lŸçš„æ‰€æœ‰äh员都已故去,文档已ç»ä¸å­˜åœ¨äº†åQˆæˆ–è€…æ ¹æœ¬æ²¡æœ‰å°†å…¶ç¼–æˆæ–‡æ¡£ï¼‰åQŒæºä»£ç å·²ç»ä¸¢å¤±åQˆæˆ–æ ÒŽ(gu¨©)œ¬ž®±æ²¡å‘布˜q‡ï¼‰åQŒæˆ‘们所能得到的ž®±æ˜¯å¯æ‰§è¡Œçš„æœºå™¨ä»£ç ã€‚è¿™ž®±æ˜¯¾pÈ»Ÿæž„æž¶å’Œå¯¹æž„æž¶å…·ä½“è¡¨è¿°çš„åŒºåˆ«ã€‚é—æ†„¡š„是,构架å¯ä»¥ç‹¬ç«‹äºŽå¯¹æž„æž¶çš„æ˜q°è€Œå­˜åœ¨ï¼Œ˜q™ä¹Ÿè®©æˆ‘们更加认识到构架¾~–æ¡£å’?font color="#0033ff">æž„æž¶é‡æž„çš„é‡è¦æ€§ã€?
    4. åªè¦æŸä¸ªå…ƒç´ çš„行为å¯ä»¥ä»Žå…¶ä»–元素的角度观察到或区别开åQ?font color="#0033ff">˜q™ä¸ªå…ƒç´ çš„行为就是构架的内容。这是这¿U行为的存在åQŒæ‰ä½¿å„元素的交互æˆä¸ºå¯èƒ½ï¼Œè€Œè¿™¿U交互显然是构架的一部分。这是被当作构架的框¾U¿å›¾å…¶å®žæ ÒŽ(gu¨©)œ¬ž®×ƒ¸æ˜¯æž„æž¶çš„å¦ä¸€ä¸ªåŽŸå› ã€‚å®ƒä»¬åªæ˜¯æ¡†¾U¿å›¾åQŒæä¾›äº†æ‰€å±•示的元素åšä»€ä¹ˆçš„æ›´å¤šä¿¡æ¯ã€?˜q™åÆˆä¸æ˜¯è¯´åœ¨å„ç§æƒ…况下都è¦å¯¹å„å…ƒç´ çš„è¡ŒäØ“(f¨´)和性能¾l™å‡º¾_„¡¡®çš„æ˜qŽÍ¼Œä½†å¦‚æžœæŸä¸ªå…ƒç´ çš„è¡ŒäØ“(f¨´)对与之交互的å¦ä¸€ä¸ªå…ƒç´ çš„代砾~–å†™æœ‰ç‰¹å®šçš„è¦æ±‚åQŒæˆ–者媄å“到整个¾pÈ»Ÿçš„坿ޥ嗿€§ï¼Œåˆ™è¯¥è¡ŒäØ“(f¨´)ž®±æ˜¯è½¯äšg构架的一部分ã€?

         æœ€åŽï¼Œæˆ‘们所¾l™çš„˜q™ä¸ªå®šä¹‰òq¶ä¸æ¶‰åŠ(qi¨¢ng)å¯ÒŽ(gu¨©)ž„架优劣的评ä­h(hu¨¢n)åQŒè¿™æ„å‘³ç€æž„æž¶ž®†æ”¯æŒæˆ–é˜ÀL­¢¾pÈ»Ÿæ»¡èƒöå…¶è¡Œä¸ºã€æ€§èƒ½å’Œç”Ÿå‘½æœŸéœ€æ±‚ã€‚æˆ‘ä»¬åÆˆä¸æŠŠè¯•é”™æ³?-å³ä“Qæ„选用一个构æžÓž¼Œåœ¨è¯¥æž„架之上展开¾pÈ»Ÿçš„å¼€å‘,òq¶æœŸæœ›å¾—åˆ°ç†æƒ³çš„¾l“æžœ--当作为系¾lŸé€‰æ‹©æž„架的最ä½Ïx–¹æ³•,因此åQŒè¿™ž®±æå‡ÞZº†æž„架评估和构架设计ã€?

    其他观点      大多数常è§çš„定义的è¦ç‚šwƒ½æ˜¯ä¸€è‡´çš„--¾l“æž„ã€å…ƒç´ ä»¥å?qi¨¢ng)元素之间的元ç´?-但它们在¾l†èŠ‚ä¸Šæœ‰å¾ˆå¤§ä¸åŒåQŒä¸èƒ½äº’æ¢ã€‚对¾pÈ»Ÿè®¾è®¡ä¸­å†…在的共性进行抽象是一¿Uå°è¯•,由此它必™å»è¯´æ˜Žå„¿Uæ´»çš„ã€æ¦‚å¿üc€æ–¹æ³•ã€é€”径和结果。鉴于此åQŒèÊYä»¶å·¥½E‹å›¢ä½“中存在其他构架定义åQšå› ä¸ºæ?zh¨¨n)¨å¾ˆå¯èƒ½ä¼?x¨¬)é‡åˆ°å…¶ä¸­çš„一些定义,因此应该ç†è§£˜q™äº›å®šä¹‰çš„å«ä¹‰åƈ能够对其˜q›è¡Œè®¨è®ºã€‚䏋颿˜¯å‡ ä¸ªæœ€å¸¸è§çš„定义ã€?

    • 构架是一¿U高层设è®?/font>。与设计相关的其他ä“QåŠ¡åÆˆä¸æ˜¯å±žäºŽæž„æž¶åQŒå¦‚¼‹®å®šž®†è¦ž®è£…çš„é‡è¦æ•°æ®ç»“构。访问数æ®ç»“构的接å£è‚¯å®šå±žäºŽæž„架的范ç•ß_(d¨¢)¼Œä½†å®žé™…åšå‡ºçš„选择å´ä¸æ˜¯ã€?
    • 构架是系¾lŸçš„æ€ÖM½“¾l“æž„ã€?˜q™ä¸ªå¸¸è§è¯´æ³•åQˆä¸æ­£ç¡®åœŽÍ¼‰æš—å«çš„æ„æ€æ˜¯¾pÈ»Ÿåªæœ‰ä¸€ä¸ªç»“构。我们知é“è¿™¿U说法是错误的,如果有ähæŒè¿™¿U观点,ä¸å¦¨é—®é—®ä»–所说的¾l“构到底是什么。这¿U观点ä¸ä»…ä»…å…ähœ‰æ•™å­¦ä¸Šçš„é‡è¦æ€§ã€‚åŽé¢æˆ‘们将ä¼?x¨¬)看刎ͼŒä¸åŒçš„结构æä¾›äº†ä¸€ä¸ªå…³é”®çš„工程设计òqŒ™¡¡ç‚¹ï¼Œ˜q™äº›òqŒ™¡¡ç‚¹ä‹É¾pÈ»Ÿä¸­å…·æœ‰äº†å¯ÆD‡´¾pÈ»ŸæˆåŠŸæˆ–å¤±è´¥çš„è´¨é‡å±žæ€§ã€‚构架中¾l“构的多æ äh€§ä½äºŽæ¦‚å¿ëŠš„核心ã€?
    • 构架是一个èÊY件或¾pÈ»Ÿçš„组件ã€ç»„ä»¶ä¹‹é—´çš„ç›æ€º’关系以åŠ(qi¨¢ng)½Ž¡ç†å…¶è®¾è®¡å’Œæ¼”å˜çš„原ç†å’Œæ–šw’ˆçš„结æž?/font>ã€?ä»ÖM½•¾pÈ»Ÿéƒ½æœ‰ä¸€ä¸ªæž„æžÓž¼Œòq¶ä¸”å¯ä»¥ç‹¬ç«‹äºŽè®¾è®¡æˆ–æ¼”å˜è¯¥æž„æž¶çš„˜q‡ç¨‹çš„知识对其进行探索和分æžã€?
    • 构架是组件和˜qžæŽ¥å™?/font>ã€?nbsp; ˜qžæŽ¥å™¨æ˜¯æŒ‡ç³»¾lŸè¿è¡Œæ—¶ä¸ÞZ¼ é€æŽ§åˆ¶å’Œæ•°æ®ä¿¡æ¯è€Œé‡‡ç”¨çš„æœºåˆ¶ã€‚因此,该定义主è¦å¼ºè°ƒäº†¾pÈ»Ÿ˜q行时的构架ã€?

    构架模å¼ã€å‚考模型和å‚考构æž?nbsp;     在框¾U‰Kª¨æž¶å’Œå·²ç»å¡«å……了关于系¾lŸçš„æ‰€æœ‰é€‚当信æ¯çš„æž„架之é—ß_(d¨¢)¼Œæœ‰å¾ˆå¤šä¸­é—´é˜¶ŒDüc€‚æ¯ä¸ªé˜¶ŒDµéƒ½æ˜¯æ‰§è¡Œä¸€¾l„构架决½{–çš„¾l“果。其中的一些中间阶ŒD‰|˜¯éžå¸¸é‡è¦çš„。è¦è®¨è®ºæž„æž¶¾l“æž„å‰ï¼Œæˆ‘们先给å‡ÞZ»¥ä¸?个定义:(x¨¬)

    1. æž„æž¶æ¨¡å¼æ˜¯å¯¹å…ƒç´ å’Œå…³¾pȱ»åž‹ä»¥å?qi¨¢ng)一¾l„对其ä‹É用方å¼çš„é™åˆ¶çš„æ˜q°ã€?/font>å¯ä»¥æŠŠæž„架模å¼çœ‹ä½œæ˜¯å¯ÒŽ(gu¨©)ž„架的一¾l„制¾U¦æ¡ä»?-å›_¯¹å„元素类型åŠ(qi¨¢ng)其交互模å¼çš„é™åˆ¶æ¡äšgåQŒè€Œè¿™äº›åˆ¶¾U¦æ¡ä»¶å°±¼‹®å®šäº†ä¸€¾l„或一¾pÕdˆ—能满­‘›_®ƒä»¬çš„æž„æž¶ã€?  æ¨¡å¼æœ€æœ‰ç”¨çš„一个方é¢å°±æ˜¯å®ƒä»¬å±•½CÞZº†å·²çŸ¥çš„è´¨é‡ã€‚è¿™ž®±æ˜¯ä¸ÞZ»€ä¹ˆè®¾è®¡å¸ˆé€‰æ‹©æŸä¸ªç‰¹å®šçš„æ¨¡å¼ï¼Œè€Œä¸æ˜¯éšæœºé€‰æ‹©æ¨¡å¼çš„原因。一些模å¼ä»£è¡¨äº†æ€§èƒ½é—®é¢˜çš„已知解å†Ïx–¹æ¡ˆï¼Œä¸€äº›æ¨¡å¼ä‹É用于高安全性系¾lŸï¼Œ˜q˜æœ‰ä¸€äº›æ¨¡å¼æˆåŠŸåº”ç”¨åœ¨äº†é«˜å¯ç”¨æ€§ç³»¾lŸä¸­ã€‚选择构架模å¼é€šå¸¸æ˜¯è®¾è®¡å¸ˆåšå‡ºçš„第一个主è¦çš„设计决策ã€?  æœ¯è¯­æž„æž¶æ ·å¼çš„ä‹É用也éžå¸¸òq¿æ³›åQŒå®ƒç”¨äºŽæè¿°ç›¸åŒçš„æ¦‚å¿üc€?
    2. å‚考模型是一¿U考虑数残¹çš„功能划分。å‚考模型是对已知问题的标准分解åQŒåˆ†è§£æ‰€å¾—çš„å„ä¸ªéƒ¨åˆ†ç›æ€º’å作åQŒæž„æˆé—®é¢˜çš„解决æ–ÒŽ(gu¨©)¡ˆã€‚äñ”生于实践¾l验的å‚考模型是熟知æŸä¸ªé¢†åŸŸçš„体现ã€?
    3. å‚考构架是映射到èÊYä»¶å…ƒç´ ï¼ˆå®ƒä»¬ç›æ€º’å作åQŒå…±åŒå®žçŽ°åœ¨å‚考模型中定义的功能)å?qi¨¢ng)å…ƒç´ ä¹‹é—´æ•°æ®æµä¸Šçš„å‚考模åž?/font>。å‚考模型实çŽîCº†åŠŸèƒ½åˆ’åˆ†åQŒè€Œå‚考构架则ž®†è¿™¿U功能划分与¾pÈ»Ÿåˆ†è§£å¯¹åº”èµäh¥ã€‚è¿™¿U对应å¯èƒ½ï¼ˆä½†ä¸ä¸€å®šå¿…™å»ï¼‰æ˜¯ä¸€ä¸€æ˜ å°„。一个èÊY件元素å¯ä»¥å®žçްæŸä¸ªåŠŸèƒ½çš„ä¸€éƒ¨åˆ†åQŒä¹Ÿå¯ä»¥å®žçŽ°è‹¥å¹²ä¸ªåŠŸèƒ½ã€? å‚è€ƒæ¨¡åž‹ã€æž„架模å¼å’Œå‚考构枉™ƒ½ä¸æ˜¯æž„æž¶åQŒä½†å®ƒä»¬éƒ½æ˜¯æ•获构架元素的有用的概念。这三者都是早期设计决½{–的产物。图2.2¾l™å‡ºäº†è¿™äº›è®¾è®¡å…ƒç´ ä¹‹é—´çš„关系ã€?nbsp; äºÞZ»¬¾l常拿构架这个è¯ä¸Žè¯¥è¯çš„其他用法˜q›è¡Œ¾cÀL¯”åQŒä»–们对˜q™äº›ç”¨æ³•有更多认识。他们ç»å¸¸å°†æž„架与æŸäº›ç‰©ç†ç»“构或物ç†åˆ†å¸ƒè”系在一赗÷€‚å¾½{‘设计师在设计大楼时必须è¦è€ƒè™‘方便性ã€ç¾Žè§‚ã€å…‰ç…§ã€å¯¾l´æŠ¤æ€§ç­‰æ–šw¢çš„è¦æ±‚ã€?font color="#0033ff">软äšg设计师在设计中也必须考虑òq¶å‘性ã€å¯¿UÀL¤æ€§ã€å¯ä¿®æ”¹æ€§ã€æ˜“用性ã€å®‰å…¨æ€§ç­‰å› ç´ åQŒåƈ且è¦åœ¨è¿™äº›éœ€æ±‚之间进行适当的æƒè¡¡ã€?/font>

    ä¸ÞZ»€ä¹ˆè¯´è½¯äšg构架éžå¸¸é‡è¦      ½W?章讨è®ÞZº†æž„架对ä¼ä¸šçš„é‡è¦æ€§ã€‚本章将从技术的角度é‡ç‚¹è®¨è®ºæž„æž¶çš„é‡è¦æ€§ã€‚èÊY件构架之所以é‡è¦ï¼Œä¸»è¦æœ‰ä»¥ä¸?个基本原因:(x¨¬)

    1. 涉众之间的交‹¹ã€?/font>   è½¯äšg构架是一¿U常è§çš„对系¾lŸçš„æŠ½è±¡åQŒç»å¤§å¤šæ•ŽÍ¼ˆå¦‚æžœä¸æ˜¯å…¨éƒ¨çš„è¯åQ‰ç³»¾lŸçš„æ¶‰ä¼—都以此作为彼此ç†è§£ã€å商ã€è¾¾æˆå…±è¯†æˆ–ç›æ€º’沟通的基础ã€?
    2. 早期设计决策ã€?/font>  软äšg构架是所开å‘ç³»¾lŸçš„æœ€æ—©è®¾è®¡å†³½{–的体现åQŒè€Œè¿™äº›æ—©æœŸå†³½{–对¾pÈ»Ÿçš„厾l­å¼€å‘ã€éƒ¨¾|²å’Œ¾l´æŠ¤å…ähœ‰é‡è¦å½±å“。这也是能够å¯ÒŽ(gu¨©)‰€å¼€å‘ç³»¾lŸè¿›è¡Œåˆ†æžçš„æœ€æ—©æ—¶é—´ç‚¹ã€?
    3. å¯ä¼ é€’çš„¾pÈ»ŸæŠ½è±¡ã€?/font>   软äšg构架是关于系¾lŸæž„造åŠ(qi¨¢ng)¾pÈ»Ÿå„元素工作机制的相对较å°ã€å´åˆèƒ½½Hå‡ºåæ˜ é—®é¢˜çš„æ¨¡åž‹ã€‚è¿™¿U模型å¯ä»¥åœ¨å¤šä¸ª¾pÈ»Ÿä¹‹é—´ä¼ é€’,特别是å¯ä»¥åº”用刀å…ähœ‰ç›æ€¼¼è´¨é‡å±žæ€§å’ŒåŠŸèƒ½éœ€æ±‚çš„¾pÈ»Ÿä¸­ï¼Œòq¶èƒ½ä¿ƒè¿›å¤§è§„模的é‡ç”¨ã€? 
    • 构架是涉众进行交‹¹çš„æ‰‹æ®µ      软äšg¾pÈ»Ÿçš„æ¶‰ä¼?-客户ã€ç”¨æˆ—÷€é¡¹ç›®ç»ç†ã€ç¨‹åºå‘˜ã€æµ‹è¯•äh员等--分别å…Ïx³¨¾pÈ»Ÿçš„ä¸åŒç‰¹å¾ï¼Œè€Œè¿™äº›ç‰¹å¾éƒ½å—构架媄å“。例如,用户兛_¿ƒçš„æ˜¯¾pÈ»Ÿçš„å¯é æ€§å’Œå¯ç”¨æ€§ï¼›å®¢æˆ·å…›_¿ƒçš„æ˜¯æž„架能å¦åœ¨è§„定时间内实现åQŒåƈ且开支中‘…出预算åQ›é¡¹ç›®ç»ç†å…³å¿ƒçš„æ˜¯å¦‚果按此构架进行开å‘,能å¦ä¿è¯å„å°¾l„çš„ä»ÕdŠ¡åœ¨å¾ˆå¤§ç¨‹åº¦ä¸Šéƒ½ç‹¬ç«‹å®Œæˆï¼Œå„éƒ¨åˆ†çš„äº¤äº’æ–¹å¼æ˜¯å¦è§„范ã€å¯æŽ§ï¼›è€Œè®¾è®¡å¸ˆæ‰€å…›_¿ƒçš„则是实现构架的所有这些目标的½{–ç•¥ã€?

            构架æä¾›äº†ä¸€¿Uå…±åŒè¯­­a€åQŒæœ‰å…›_„æ–¹å¯å€ŸåŠ©å®ƒè¡¨è¾‘Ö’Œå商å„自的需求,òq¶ç†æ€§åœ°æ‰‘Öˆ°è§£å†³æ–ÒŽ(gu¨©)¡ˆåQŒå³ä½¿å¯¹å¤§åž‹ã€å¤æ‚ç³»¾lŸçš„å¼€å‘也是如此。如果没有这样一¿U语­a€åQŒè¦æƒ›_……分ç†è§£å¤§åž‹ç³»¾lŸåÆˆç†æ™ºåœ°åšå‡ºå¯¹¾pÈ»Ÿè´¨é‡å’Œæ˜“用性都å…ähœ‰é‡è¦å½±å“的早期决½{–å°†å分困难。构架分æžä¸ä»…ä¾èµ–于而且促进了这个层‹Æ¡ä¸Šçš„交‹¹ã€?

      构架是早期设计决½{–的体现      æž„架明确了对¾pÈ»Ÿå®žçŽ°çš„çº¦æŸæ¡ä»?/font>。如果系¾lŸå®žçްéµå¾ªæž„架设计中所åšå‡ºçš„关于系¾lŸç»“构的决策åQŒåˆ™¾pÈ»Ÿå®žçްž®†èƒ½å¤Ÿä½“现出构架的特艌Ӏ?

            资æºåˆ†é…æ–šw¢çš„决½{–也制约瀾pÈ»Ÿå®žçŽ°ã€‚è¿™äº›å†³½{–对从事å„元素开å‘的实现人员æ¥è¯´å¯èƒ½æ˜¯ä¸å¯è§çš„。这些é™åˆ¶æ¡ä»¶ä‹Éž®†å„方关心的问题分离开æˆäØ“(f¨´)å¯èƒ½åQŒä»Žè€Œä‹É½Ž¡ç†è€…能够åšå‡ºç§‘学的决策åQŒæœ€å¤§é™åº¦åœ°åˆ©ç”¨äººæ‰å’Œè®¡½Ž—资æºã€‚å„元素的开å‘者对自己所从事的开å‘ä“QåŠ¡çš„è¦æ±‚å¿…é¡»å分清楚åQŒä½†æ²¡æœ‰å¿…è¦äº†è§£åœ¨æž„架上所åšçš„æƒè¡¡ã€?font color="#0033ff">相ååQŒæž„架设计师未必è¦ç²¾é€šç®—法设计或¾~–程语言的å„个方é¢ï¼Œä½†å¿…™å»èƒ½å¤Ÿåšå‡ºæž„架上的åˆç†æƒè¡¡ã€?

      构架军_®šäº†å¼€å‘组¾l‡çš„¾l„织¾l“构。因为系¾lŸçš„æž„架中包å«äº†å¯¹ç³»¾lŸçš„æœ€é«˜å±‚‹Æ¡çš„分解åQŒå› è€Œä¸€èˆ¬è¢«ä½œäØ“(f¨´)工作分解¾l“构的基¼‹€åQ›è¿™å过æ¥ä¹Ÿè§„定了计划ã€è°ƒåº¦åŠ(qi¨¢ng)预算的å•元,¾l„内交æµçš„æ¸ é“,é…置控制和文件系¾lŸçš„¾l„织åQŒé›†æˆä¸Ž‹¹‹è¯•计划和规½E‹ï¼Œç”šè‡³æå‡ºäº†å¯¹ä¸€äº›çäº‹çš„è¦æ±‚。å„å¼€å‘å°¾l„æ ¹æ®æž„架中å„主è¦å…ƒç´ çš„æŽ¥å£è§„范˜q›è¡Œäº¤æµã€‚一旦进入维护阶ŒDµï¼Œ¾l´æŠ¤‹zÕdŠ¨ä¹Ÿä¼š(x¨¬)åæ˜ å‡ø™ÊYä»¶çš„¾l“æž„åQŒå¸¸ç”׃¸åŒçš„ž®ç»„åˆ†åˆ«è´Ÿè´£å„具体部分的¾l´æŠ¤ã€?

            建立工作分解¾l“构的一个副作用åQšå®ƒé™å®šäº†èÊY件构架的æŸäº›æ–šw¢ã€‚如果已¾lå°†æŸä¸ªå­ç³»¾lŸçš„å¼€å‘交由æŸä¸ªå°¾l„完æˆï¼Œåˆ™è¯¥ž®ç»„ä¼?x¨¬)对ž®†æ­¤ä»ÕdŠ¡åˆ†æ´¾¾l™å…¶ä»–å°¾l„æå‡ºå¼‚议。如果这¿Uè´£ä»Õdˆ’分已¾l用åˆåŒçš„åÅžå¼ç¡®å®šä¸‹æ¥ï¼Œåˆ™æ”¹å˜ä“Q务分é…的代ä­h(hu¨¢n)å¯èƒ½æ˜¯æ˜‚è´ëŠš„。对分é…到儞®ç»„çš„ä“Q务的˜q›å±•情况的跟ítªä¹Ÿè¦å›°éš‘Ö¾—多ã€?

            å› æ­¤åQŒä¸€æ—¦å¯¹æž„æž¶è¾¾æˆä¸€è‡ß_(d¨¢)¼Œä¸ç®¡æ˜¯ç”±äºŽç®¡ç†ä¸Šçš„还是商业伤的原因,惌™¦å¯¹å®ƒ˜q›è¡Œä¿®æ”¹åQŒå‡ ä¹Žéƒ½æ˜¯ä¸å¯èƒ½çš„。这也是ä¸ÞZ»€ä¹ˆåœ¨¼‹®å®šæŸä¸ªå¤§åž‹¾pÈ»Ÿçš„æž„架之å‰å¿…™å»è¿›è¡Œå…¨é¢åˆ†æžçš„原因之一ã€?

      构架é˜ÀL­¢æˆ–支æŒç³»¾lŸçš„è´¨é‡å±žæ€§çš„实现ã€?/font>  ¾pÈ»Ÿèƒ½å¦å…ähœ‰æ‰€æœŸæœ›çš„è´¨é‡å±žæ€§ä¸»è¦æ˜¯ç”±å…¶æž„架军_®šçš„。第5章将详细讨论构架和质é‡å±žæ€§ä¹‹é—´çš„关系åQŒçŽ°åœ¨ä»…éœ€ç‰¢è®°ä»¥ä¸‹å‡ ç‚¹åQ?

      • 如果æ‚(zh¨¨n)¨çš„¾pÈ»Ÿè¦æ±‚高性能åQŒå°±éœ€è¦ç®¡ç†å…ƒç´ åŸºäºŽæ—¶é—´çš„è¡ŒäØ“(f¨´)以åŠ(qi¨¢ng)元素间通信的频率和数é‡ã€?
      • 如果å¯ä¿®æ”ÒŽ(gu¨©)€§å¾ˆé‡è¦åQŒå°±éœ€è¦ç»™å…ƒç´ åˆ†é…è´£ä“QåQŒä»¥ä½¿å¯¹¾pÈ»Ÿçš„修改ä¸ä¼?x¨¬)äñ”生很大的影å“ã€?
      • 如果¾pÈ»Ÿå¿…é¡»éžå¸¸å®‰å…¨åQŒå°±éœ€è¦ç®¡ç†å’Œä¿æŠ¤å…ƒç´ é—´çš„通信以åŠ(qi¨¢ng)å…许哪些元素讉K—®å“ªäº›ä¿¡æ¯ã€‚å¯èƒ½è¿˜éœ€è¦åœ¨æž„架中引入专门的元素åQˆå¦‚å—信的内核)
      • 如果æ‚(zh¨¨n)¨è®¤ä¸ºç³»¾lŸéœ€è¦å¯æ‰©å±•性,ž®±å¿…™åÖM»”¾l†å®šä½èµ„æºçš„使用åQŒä»¥æœ‰åˆ©äºŽå¼•入容釿›´é«˜çš„æ›´æ¢¾l„äšgã€?
      • 如果™å¹ç›®éœ€è¦äº¤ä»˜ç³»¾lŸçš„增é‡å¼å­é›†ï¼Œž®±å¿…™åÖM»”¾l†ç®¡ç†ç»„仉™—´çš„ä‹É用ã€?
      • 如果希望å¯ä»¥åœ¨å…¶ä»–ç³»¾lŸä¸­é‡è¦è¯¥ç³»¾lŸçš„元素åQŒå°±éœ€è¦é™åˆ¶å…ƒç´ é—´çš„耦åˆåQŒä»¥ä¾¿æå–元素时åQŒå®ƒèƒ½å‘挥作用,且ä¸ä¼?x¨¬)与当å‰çŽ¯å¢ƒæœ‰è¿‡å¤šä¾èµ–ã€?

          ˜q™äº›å’Œå…¶ä»–è´¨é‡å±žæ€§ç­–ç•¥éƒ½ä¸Žæž„æž¶æœ‰å¾ˆå¤§å…³ç³»ã€‚ç„¶è€Œï¼Œä»…é æž„架也无法ä¿è¯ç³»¾lŸåŠŸèƒ½å’Œè´¨é‡å±žæ€§çš„实现åQŒç†è§£è¿™ä¸€ç‚šwžå¸”R‡è¦ã€?

      通过研究构架æ¥é¢„‹¹‹ç³»¾lŸè´¨é‡?/font>。能å¦åœ¨¾pÈ»Ÿå¼€å‘和部çÖvå‰å°±çŸ¥é“åšå‡ºäº†é€‚当的构架决½{–(也就是系¾lŸæ˜¯å¦å°†è¡¨çŽ°å‡ºæ‰€æœŸæœ›çš„è´¨é‡å±žæ€§ï¼‰åQ?所òq¸çš„æ˜¯ï¼Œä»…ä»…ä¾é å¯ÒŽ(gu¨©)ž„架的评估æ¥é¢„‹¹‹ç³»¾lŸæœªæ¥çš„è´¨é‡å±žæ€§æ˜¯å¯èƒ½çš„ã€?

      构架使推ç†åˆ¤æ–­å’ŒæŽ§åˆ¶æ›´æ”¹æ›´ç®€å?/font>。æ¯ä¸ªæž„枉™ƒ½ž®†å¯èƒ½çš„æ›´æ”¹åˆ’分ä¸?¾c»ï¼š(x¨¬)本地的ã€éžæœ¬åœ°çš„和构架上的。本地更改åªéœ€ä¿®æ”¹æŸä¸€ä¸ªå…ƒç´ å°±å¯ä»¥å®žçŽ°ã€‚éžæœ¬åœ°æ›´æ”¹çš„å®žçŽ°åˆ™éœ€å¯¹å¤šä¸ªå…ƒç´ è¿›è¡Œä¿®æ”¹ï¼Œä½†åÆˆä¸æ”¹åŠ¨æž„æž¶ã€‚æž„æž¶çš„æ›´æ”¹ä¼?x¨¬)媄å“å„元素之间交互的基本方å?-åÏxž„架模å¼?-òq¶å¾ˆå¯èƒ½è¦æ±‚¾pÈ»Ÿåšå…¨é¢çš„修改。显ç„Óž¼Œä»…åšæœ¬åœ°æ›´æ”¹æ˜¯æœ€ç†æƒ³çš„。所以,一个富有生命力的构架应该是˜q™æ ·çš„:(x¨¬)最有å¯èƒ½å‘生的更改也是最å®ÒŽ(gu¨©)˜“˜q›è¡Œçš„æ›´æ”V€?   æž„架有助于åó@åºæ¸˜q›çš„原型设计。一旦确定了构架åQŒå°±å¯ä»¥å¯¹å…¶˜q›è¡Œåˆ†æžåQŒåƈž®†å…¶åŽŸåž‹æž„é€ äØ“(f¨´)一个骨架系¾lŸã€‚这从两个方é¢å助开å‘过½E‹çš„™åºåˆ©˜q›è¡ŒåQ?

      1. 在äñ”å“生命期的早期就能得åˆîC¸€ä¸ªå¯æ‰§è¡Œçš„ç³»¾lŸã€‚éšç€åŽŸåž‹ä¸­çš„å„éƒ¨åˆ†é€æ¸è¢«çœŸå®žç³»¾lŸå„部分的最¾lˆå®žçŽ°æ‰€ä»£æ›¿åQŒåŽŸåž‹çš„˜q™ç§çœŸå®žæ€§å°†­‘Šæ¥­‘Šæ˜Žæ˜‘Öœ°ä½“现出æ¥ã€‚原型的å„组æˆéƒ¨åˆ†å¯èƒ½ä¸Ž¾pÈ»Ÿçš„æœ€¾lˆå®žçŽ°æœ‰è¾ƒå¤§å·®å¼‚åQŒä¹Ÿå¯èƒ½èƒ½å¤Ÿæ¯”较逼真地处ç†å’Œäº§ç”Ÿæ•°æ®ã€?
      2. 使系¾lŸåœ¨æ—©æœŸæ‰§è¡Œçš„一个特例就是在产å“生命期的早期¼‹®å®šæ½œåœ¨çš„æ€§èƒ½é—®é¢˜ã€?

      å¯ä»¥é€šè¿‡æž„æž¶˜q›è¡Œæ›´å‡†¼‹®çš„æˆæœ¬å’Œè¿›åº¦ä¼°è®?/font>ã€? æˆæœ¬å’Œè¿›åº¦ä¼°è®¡æ˜¯ä¸€ä¸ªé‡è¦çš„½Ž¡ç†å·¥å…·åQŒå®ƒèƒ½å¤Ÿä½¿ç®¡ç†äh员获得必è¦çš„资æºòq¶äº†è§£é¡¹ç›®å¼€å‘中是å¦é‡åˆ°äº†å›°éš¾ã€‚与了解整个¾pÈ»Ÿç›¸æ¯”åQŒäº†è§£ç³»¾lŸçš„æŸäº›éƒ¨åˆ†æœ¬è´¨ä¸Šå¯ä»¥ä‹Éæˆæœ¬ä¼°è®¡æ›´åŠ å‡†ç¡®ã€‚æ­£å¦‚æˆ‘ä»¬å·²¾l说˜q‡çš„åQŒé¡¹ç›®çš„¾l„织¾l“æž„åŸÞZºŽå®ƒçš„æž„架。与™å¹ç›®¾lç†ç›¸æ¯”åQŒæ¯ä¸ªå°¾l„能够对其所开å‘的部分˜q›è¡Œæ›´å‡†¼‹®çš„估计åQŒåƈ且在使估计æˆä¸ºçŽ°å®žçš„˜q‡ç¨‹ä¸­ï¼Œæ‹¥æœ‰å¼ºçƒˆçš„主人ç¿è´£ä“Q感。第二,构架的最åˆå®šä¹‰æ„味ç€å·²ç»è¯„审了系¾lŸçš„需求,从柿Uæ„义上æ¥è¯´åQŒå·²¾l对需求进行了验è¯ã€‚对¾pÈ»ŸèŒƒå›´äº†è§£çš„越多,估计ž®×ƒ¼š(x¨¬)­‘Šå‡†¼‹®ã€?

      构架是å¯ä¼ é€’ã€å¯é‡ç”¨çš„æ¨¡åž?/strong>       在整个生命期中,é‡è¦çš„越早,收益ž®Þp¶Šå¤§ã€‚代ç çš„é‡ç”¨èƒ½å¸¦æ¥æžå¤§çš„便利åQŒè€Œåœ¨æž„架层次上的é‡ç”¨åˆ™äØ“(f¨´)å…ähœ‰¾cÖM¼¼éœ€æ±‚çš„¾pÈ»Ÿå¼€å‘æä¾›äº†æœ‰åˆ©çš„æ‰‹ŒDüc€‚ä¸ä»…å¯ä»¥å®žçŽîC»£ç çš„é‡ç”¨åQŒè¿˜å¯ä»¥å®žçް军_®šæž„架选用的系¾lŸéœ€æ±‚åŠ(qi¨¢ng)æž„å¾æž„æž¶çš„ç»éªŒçš„é‡ç”¨ã€‚如果构架决½{–能够在多个¾pÈ»Ÿä¸­å¾—到é‡ç”¨ï¼Œåˆ™ä¹Ÿå¯ä»¥èŽ·å¾—ä¸Šé¢è®²åˆ°çš„æ—©æœŸå†³½{–所带æ¥çš„æ‰€æœ‰å¥½å¤„ã€?    äº§å“¾U¿å…±äº«ä¸€ä¸ªå…¬å…Þqš„æž„æž¶ã€?  è½¯äšg产哾U¿æˆ–å®¶æ—æ˜¯ä¸€¾l„èÊY件密集型¾pÈ»ŸåQŒè¿™äº›ç³»¾lŸå…±äº«ä¸€ä¸ªå…¬å…Þqš„ã€å¯½Ž¡ç†æ€§çš„ç‰ÒŽ(gu¨©)€§é›†åQŒæ»¡­‘³äº†å¾…定市场或ä“Q务的具体需è¦ï¼Œæ˜?æŒ‰ç…§è§„å®šçš„æ–¹å¼æ ¹æ®ä¸€¾l„å…¬å…Þqš„æ ¸å¿ƒèµ„äñ”å¼€å‘的。在˜q™äº›æ ¸å¿ƒèµ„äñ”中,主è¦éƒ¨åˆ†ž®±æ˜¯è®¾è®¡ç”¨æ¥å¤„ç†æ•´ä¸ªå®¶æ—需è¦çš„æž„架。äñ”å“线设计师通过制定在早期适用与整个家æ—的设计决策åQŒä»¥å?qi¨¢ng)åœ¨åŽæœŸä»…适用于å•个æˆå‘˜çš„其他决策åQŒæ¥é€‰æ‹©ä¸€ä¸ªæ»¡­‘³äñ”å“线的所有预æƒÏxˆå‘˜çš„æž„架。该构架定义了对产哾U¿çš„æ‰€æœ‰æˆå‘˜æ¥è¯ß_(d¨¢)¼Œä»€ä¹ˆæ˜¯å›ºå®šçš„,什么是å¯å˜çš„。对多系¾lŸå¼€å‘æ¥è¯ß_(d¨¢)¼Œè½¯äšg产哾U¿æ˜¯ä¸€¿Uå¼ºå¤§çš„å¼€å‘æ–¹æ³•,它å¯ä»¥åœ¨ä¸Šå¸‚æ—‰™—´ã€æˆæœ¬ã€ç”Ÿäº§çŽ‡å’Œäñ”å“è´¨é‡æ–¹é¢å®žçްæžå¤§çš„回报。构架的强大æºäºŽèŒƒä¾‹çš„æ ¸å¿ƒã€‚与其他资本投资¾cÖM¼¼åQŒäñ”å“线的构架将æˆäØ“(f¨´)å¼€å‘组¾l‡çš„æ ¸å¿ƒèµ„äñ”ã€?   ¾pÈ»Ÿå¼€å‘å¯ä»¥ä‹É用大型的ã€ç”±å…¶ä»–¾l„织开å‘的元素。以å‰çš„软äšg范例æ€ÀL˜¯ž®?font color="#0033ff">¾~–ç¨‹ä½œäØ“(f¨´)最æ ÒŽ(gu¨©)œ¬çš„ä“Q务,把编写了多少行代ç ä½œä¸ø™¡¡é‡é¡¹ç›®è¿›å±•情å†ëŠš„便®ã€‚基于构架的开å‘则更强调对å„元素的¾l„åˆæˆ–装é…?/font>åQŒè€Œè¿™äº›å…ƒç´ å¾ˆå¯èƒ½å·²åˆ†åˆ«ç”šè‡Ïx˜¯å®Œå…¨ç‹¬ç«‹åœ°å¼€å‘实çŽîCº†ã€‚由于构架定义了å¯ä»¥é›†æˆåˆ°ç³»¾lŸä¸­çš„元素,因此åQŒè¿™¿Uç»„åˆæ˜¯å¯èƒ½çš„。构架从元素与环境的交互ã€å¯¹æŽ§åˆ¶çš„æŽ¥æ”¶å’Œé‡Šæ”¾ã€æ‰€èƒ½ä‹É用或产生的数æ®ã€è®¿é—®æ•°æ®çš„æ–¹å¼ã€é€šä¿¡æ–¹å¼ä»¥åŠ(qi¨¢ng)用于通信和资æºå…±äº«çš„åè®®½{‰æ–¹é¢å¯¹å¯èƒ½åšçš„æ›´æ¢åšäº†¿Uç§¾U¦å®šã€?  å…ƒç´ ¾l“æž„ã€æŽ¥å£å’Œæ“作概念的组¾l‡æ˜¯æž„架的一个é‡è¦æ–¹é¢ã€?font color="#0033ff">äº’æ¢æ€?/font>是这¿U组¾l‡çš„æœ€é‡è¦çš„原则ã€?  å•†ä¸š¾l„äšgã€å­¾pÈ»Ÿã€å…¼å®¹çš„通信接å£éƒ½æ˜¯åŸÞZºŽäº’æ¢æ€§åŽŸåˆ™çš„ã€?nbsp;     ž®‘就是多åQšé™åˆ‰™€‰æ‹©èŒƒå›´æ˜¯å€¼å¾—çš?/font>。éšç€æ‰€¿U¯ç¯çš„æž„架模å¼å’Œè®¾è®¡æ¨¡å¼­‘Šæ¥­‘Šå¤šåQŒæˆ‘们将ä¼?x¨¬)è¶Šæ¥è¶Šæ¸…楚地认识到åQšè™½ç„¶è®¡½Ž—机½E‹åºå¯ä»¥ä»¥è¿‘乎无é™çš„æ–¹å¼æ¥ç»„åˆï¼Œä½†æ¶‰å?qi¨¢ng)到½E‹åºçš„å调和交互æ—Óž¼Œæœ‰æ„识地é™åˆ¶åœ¨ä¸€å®šèŒƒå›´å†…选择ž®†ä‹É我们å—益匪浅。也ž®±æ˜¯è¯ß_(d¨¢)¼Œæˆ‘们希望使所构徾pÈ»Ÿçš„设计尽å¯èƒ½½Ž€å•。这¿U方法的优势包括åQšé‡ç”¨ç¨‹åº¦æ›´é«˜ã€æ›´æ˜“于ç†è§£å’Œäº¤‹¹çš„½Ž€å•è§„èŒƒçš„è®¾è®¡ã€æ›´ä¸ºé€å½»çš„分æžã€æ›´çŸ­çš„选择旉™—´ã€æ›´å¼ºçš„å¯äº’æ“作性ã€?      软äšg设计的特性æ¥è‡ªäºŽæž„架模å¼çš„选择。那些更适用于æŸä¸ªç‰¹å®šé—®é¢˜çš„æž„架模弞®†æ”¹å–„设计方案的实现åQŒè¿™å¯èƒ½é€šè¿‡æ›´è½»æ‘Öœ°åœ¨ç›¸å†²çªçš„è®¾è®¡è¦æ±‚之间进行æƒè¡¡ã€æé«˜å¯¹è®¾è®¡çŽ¯å¢ƒçš„äh认识å’?或ä‹É需求æ˜qîC¸­çš„ä¸ä¸€è‡´æ€§æ›´ä¸ºçªå‡ºç­‰æ–¹å¼ä½“现出æ¥ã€?   ¾pÈ»Ÿæž„架与èÊYä»¶æž„æž?/font>。在˜q‡åŽ»çš?åˆ?0òq´ä¸­åQŒæˆ‘们在很多场åˆå¯¹èÊY件构架进行了讨论。毋ơæ€ÖM¼š(x¨¬)有ähæå‡ºå¦‚下问题åQšäØ“(f¨´)ä»€ä¹ˆè°ˆè®ø™ÊYä»¶æž„æžÓž¼Ÿ¾pÈ»Ÿæž„架是å¦åŒèÊY件构架一样é‡è¦ï¼Ÿæˆ–者说软äšg构架和系¾lŸæž„架之间的区别是什么?    åœ¨åˆ›å»ø™ÊY件构架时åQŒé€šå¸¸å¾ˆå°‘考虑¾pÈ»Ÿã€?nbsp; å¦‚æžœæ‚(zh¨¨n)¨æƒ³è®©æž„架具有很高的性能åQŒå°±éœ€è¦äº†è§£è¯¥¾pÈ»Ÿž®†è¿è¡Œçš„¼‹¬äšgòq›_°çš„物ç†ç‰¹æ€§ä»¥å?qi¨¢ng)该¾pÈ»Ÿž®†ä¸Žä¹‹äº¤äº’çš„ä»ÖM½•讑֤‡çš„特性,æ‚(zh¨¨n)¨é€šå¸¸˜q˜ä¼š(x¨¬)å…Ïx³¨¾|‘络的特性。如果æ?zh¨¨n)¨éœ€è¦æž„架具有很高的å¯é æ€§ï¼Œä¹Ÿéœ€è¦å…³æ³¨ç¡¬ä»Óž¼Œåœ¨è¿™¿U情况下ž®±æ˜¯å…›_¿ƒå…¶æ•…éšœçŽ‡å’Œå†—ä½™å¤„ç†æˆ–¾|‘络讑֤‡çš„å¯ç”¨æ€§ã€‚如此等½{‰ï¼Œä¸ä¸€è€Œèƒö。设计师很少考虑¼‹¬äšgã€?   å› æ­¤åQŒè®¾è®¡èÊY件构架时åQŒå¤§æ¦‚需è¦è€ƒè™‘整个¾pÈ»Ÿ--¼‹¬äšgå’ŒèÊYä»Óž¼Œå¦åˆ™ž®±æ˜¯è›®å¹²ã€‚当仅规定了¾pÈ»Ÿçš„一部分æ—Óž¼Œä»ÖM½•一个工½E‹å¸ˆéƒ½ä¸å¯èƒ½é¢„测¾pÈ»Ÿçš„特性ã€?nbsp;   ä½†æˆ‘们主è¦è°ˆè®ºçš„ä»ç„¶æ˜¯èÊY件构架而鞾pÈ»Ÿæž„æž¶ã€‚è¿™æ˜¯äØ“(f¨´)什么呢åQŸå› ä¸ºå¤§å¤šæ•°è®¾è®¡å¸ˆåœ¨è½¯äšgæ–šw¢éƒ½å¯ä»¥åšå‡ºé€‰æ‹©åQŒè€Œåœ¨¼‹¬äšgæ–šw¢åˆ™æ²¡æœ‰è¿™¿U自由ã€?nbsp; 构架使基于模æ¿çš„开呿ˆä¸ºå¯èƒ?/font>。构架体çŽîCº†å…³äºŽå…ƒç´ äº¤äº’æ–¹å¼çš„设计决½{–。这些决½{–虽然是æ¯ä¸ªå…ƒç´ çš„实çŽîC¸­ä½“现出æ¥çš„,但å´èƒ½å¤Ÿå±€éƒ¨åŒ–åQŒåªéœ€¾~–写一‹Æ¡å³å¯ã€‚å¯ä»¥åœ¨æŸå¤„用模æ¿å°†å…ƒç´ é—´çš„交互机制æè¿°æ¸…楚ã€? æž„æž¶å¯ä»¥åšäØ“(f¨´)培训的基¼‹€ã€?在对™å¹ç›®æ–°æˆå‘˜ä»‹¾l所开å‘çš„¾pÈ»Ÿæ—‰™—´åQŒå¯ä»¥é¦–先介¾lç³»¾lŸçš„¾l“æž„åQŒä»¥å?qi¨¢ng)对¾l„äšg之间如何交互从而实现系¾lŸéœ€æ±‚的高层‹Æ¡çš„æè¿°ã€‚我们曾¾l指出,软äšg构架的é‡è¦ç”¨é€”之一ž®±æ˜¯æ”¯æŒòq¶ä¿ƒ˜q›å„涉众之间的交‹¹ï¼Œ˜q™è¿›ä¸€æ­¥å°è¯äº†æˆ‘们的观ç‚V€‚构架是一个公å…Þqš„å‚考点ã€?

    构架¾l“构和视å›?/strong>      çŽîC»£¾pÈ»Ÿéžå¸¸å¤æ‚åQŒå¾ˆéš¾ä¸€ä¸‹å­é¢†ä¼š(x¨¬)它们。相å,在ä“Q何时刻,我们åªèƒ½æŠŠæ³¨æ„力攑֜¨è½¯äšg¾pÈ»Ÿçš„一个或几个¾l“æž„ä¸Šã€‚äØ“(f¨´)了有æ„义的传达构架信æ¯ï¼Œå¿…须说明此刻正在讨论哪个或哪些结æž?-å³é‡‡ç”¨çš„æ˜¯æž„架的哪个视图ã€?

       åœ¨è®¨è®ºæž„架表½Cºæ—¶åQŒæˆ‘们将使用相关术语¾l“æž„å’?font color="#0033ff">视图。视图是构架元素的内èšé›†çš„表½Cºï¼Œç”Þq³»¾lŸæ¶‰ä¼—编写和阅读。它ç”׃¸€ä¸ªå…ƒç´ é›†çš„表½Cºå’Œå…ƒç´ ä¹‹é—´çš„å…³¾pÈ»„æˆã€‚结构是元素本èín的集åˆï¼Œå®ƒä»¬å­˜åœ¨äºŽèÊY件或¼‹¬äšg中ã€?  å¤§ä½“上寞®†æž„架分ä¸?¾l„,˜q™å–决于它们所展示的元素的主è¦ç‰ÒŽ(gu¨©)€§ã€?nbsp; å¤§ä½“上寞®†æž„架结构分ä¸?¾l„,˜q™å–决于它们所展示的元素的主è¦ç‰ÒŽ(gu¨©)€§ã€?

    • 模嗾l“构。此处的元素是模å—,它们是实现å•元。模å—表½CÞZ¸€¿U考虑¾pÈ»Ÿçš„基于代ç çš„æ–ÒŽ(gu¨©)³•。模å—被分é…功能责ä“QåŒºåŸŸã€‚è¿™ä¸æ€Žä¹ˆå¼ø™°ƒæ‰€å¼€å‘出æ¥çš„软äšg如何在è¿è¡Œæ—¶è¡¨çŽ°è‡ªå·±ã€‚æ¨¡å—结构能够ä‹É我们回答诸如此类的问题:(x¨¬)分酾l™æ¯ä¸ªæ¨¡å—的主è¦åŠŸèƒ½è´£ä“Q是什么?å…许模å—使用的其他èÊY件元素是什么?它实际ä‹É用的其他软äšg是什么?什么模å—通过泛化或特化关¾pÖM¸Žå…¶ä»–模å—相关åQ?
    • ¾l„äšg-˜qžæŽ¥ä»¶ç»“æž?/font>ã€‚æ­¤å¤„çš„å…ƒç´ ä¸ø™¿è¡Œæ—¶¾l„äšgåQˆå®ƒä»¬æ˜¯è®¡ç®—的主è¦å•元)和连接器åQˆå®ƒä»¬æ˜¯¾l„äšgé—´é€šä¿¡çš„å·¥å…øP¼‰ã€‚组ä»?˜qžæŽ¥ä»¶ç»“构能够ä‹É我们回答诸如此类的问题:(x¨¬)什么是主è¦çš„æ‰§è¡Œç»„ä»Óž¼Œå®ƒä»¬å¦‚何交互åQŸä»€ä¹ˆæ˜¯ä¸»è¦çš„共享数æ®å­˜å‚¨ï¼Ÿå¤åˆ¶¾pÈ»Ÿçš„哪些部分?数æ®åœ¨ç³»¾lŸä¸­¾l过了哪些地方?¾pÈ»Ÿçš„哪些部分å¯ä»¥åƈ行è¿è¡Œï¼Ÿåœ¨ç³»¾lŸæ‰§è¡Œæ—¶åQŒå…¶¾l“æž„å¯èƒ½ä¼?x¨¬)å‘生怎样的å˜åŒ–?
    • 分酾l“构。分é…结构展½CÞZº†è½¯äšgå…ƒç´ å’Œåˆ›å»ºåÆˆæ‰§è¡Œè½¯äšg的一个或多个外部环境中的元素之间的关¾p…R€‚它们回½{”了诸如此类的问题:(x¨¬)æ¯ä¸ªè½¯äšg元素在什么处ç†å™¨ä¸Šæ‰§è¡Œï¼Ÿåœ¨å¼€å‘ã€æµ‹è¯•å’Œ¾pÈ»Ÿæž„徿œŸé—´åQŒæ¯ä¸ªå…ƒç´ éƒ½å­˜å‚¨åœ¨ä»€ä¹ˆæ–‡ä»¶ä¸­åQŸåˆ†é…给开å‘å°¾l„的软äšg元素是什么?

    ˜q?¿U结构与构架设计所涉åŠ(qi¨¢ng)çš?大类决策一è‡ß_(d¨¢)¼š(x¨¬)

    • ¾pÈ»Ÿå¦‚何被组¾l‡äØ“(f¨´)一个代ç å•元集åˆçš„åQ?
    • ¾pÈ»Ÿå¦‚何被组¾l‡äØ“(f¨´)一个具有è¿è¡Œæ—¶è¡ŒäØ“(f¨´)åQˆç»„ä»Óž¼‰å’Œäº¤äº’(˜qžæŽ¥å™¨ï¼‰çš„元素集åˆçš„åQ?
    • ¾pÈ»Ÿå¦‚何与其环境中的éžèÊY件结构相养I¼ˆä¹Ÿå°±æ˜¯CPUã€æ–‡ä»¶ç³»¾lŸã€ç½‘¾lœå’Œå¼€å‘å°¾l„ç­‰åQ‰ï¼Ÿ
    • 软äšg¾l“æž„      å›?.3展示了一些最常è§å’Œæœ€æœ‰ç”¨çš„èÊY件结构ã€?

       

      模å—。基于模å—çš„¾l“构包括如下内容ã€?/font>

      • 分解ã€?nbsp;  ˜q™äº›å•元是通过“æ˜¯ä¸€ä¸ªå­æ¨¡å—”关系ž®†å½¼æ­¤å…³è”è“væ¥çš„æ¨¡å—åQŒå±•½CÞZº†å¦‚何ž®†è¾ƒå¤§çš„æ¨¡å—é€’å½’åœ°åˆ†è§£äØ“(f¨´)较å°çš„æ¨¡å—,直到它们­‘›_¤Ÿž®ï¼Œå¾ˆå®¹æ˜“ç†è§£äØ“(f¨´)之。该¾l“构中的模å—代表了设计中一个常è§çš„èµïL(f¨¥ng)‚¹åQŒå› ä¸ø™®¾è®¡å¸ˆåˆ—ä‹D了èÊYä»¶çš„å•元必须åšä»€ä¹ˆå·¥ä½œï¼Œòq¶æŠŠæ¯ä¸ª™å¹ç›®åˆ†é…¾l™æ¨¡å—以˜q›è¡ŒéšåŽçš„设计和最åŽçš„实现。模å—通常有关è”的产å“。通过¼‹®ä¿å¾ˆå¯èƒ½ä¼š(x¨¬)å‘生的å˜åŒ–最多åªåœ¨å‡ ä¸ªå°æ¨¡å—中,分解¾l“æž„æä¾›äº†å¾ˆå¤§ä¸€éƒ¨åˆ†çš„ç³»¾lŸå¯æ›´æ”¹æ€§ã€‚通常ž®†å…¶ç”¨ä½œå¼€å‘项目的¾l„织的基¼‹€åQŒåŒ…括分解结构ã€å…¶é›†å’Œ‹¹‹è¯•计划。该¾l“构中的å•元通常å…ähœ‰ç‰¹å®šäºŽç»„¾l‡çš„åç§°ã€?
      • 使用。这一é‡è¦ä½†æ˜¯¾l“æž„¾l常被忽略的å•元也是模å—åQŒæˆ–者是˜q‡ç¨‹åQŒæˆ–è€…æ˜¯æ¨¡å—æŽ¥å£ä¸Šçš„资æºã€‚这些å•元通过“使用”关系彼此相关。如果一个å•å…ƒçš„æ­£ç¡®æ€§è¦æ±‚å¦ä¸€ä¸ªå•å…ƒæä¾›æ­£¼‹®ç‰ˆæœ¬çš„è¯ï¼Œé‚£ä¹ˆæˆ‘们¿U°ç¬¬ä¸€ä¸ªå•å…ƒä‹É用第二个å•元。ä‹É用结构用于设计å¯ä»¥è½»æ¾æ‰©å±•以æ·ÕdŠ åŠŸèƒ½çš„ç³»¾lŸï¼Œæˆ–从中å¯ä»¥è½»æ¾æå–有用功能å­é›†çš„¾pÈ»Ÿã€‚è½»æ¾æå–工作系¾lŸçš„å­é›†çš„能力å…许进行增é‡å¼å¼€å‘ã€?
      • ¾cÀLˆ–泛化。该¾l“构中的模å—å•元被称为类。关¾pÀL˜¯“¾l§æ‰¿è‡?#8221;æˆ?#8220;是一个实ä¾?#8221;。å¯ä»¥æ ¹æ®è¯¥è§†å›¾æŽ¨æ–­å‡ºç±»ä¼ÆD¡Œä¸ºæˆ–能力的集åˆï¼Œä»¥åŠ(qi¨¢ng)通过划分å­ç±»æ‰€æ•èŽ·çš„å‚æ•°åŒ–的差别。类¾l“构能够使我们对é‡ç”¨ä»¥åŠ(qi¨¢ng)功能的增é‡å¼å¢žåŠ ˜q›è¡ŒæŽ¨æ–­ã€?

      ¾l„äšg-˜qžæŽ¥å™¨ã€‚这些结构包括如下内å®?/font>ã€?

      • ˜q›ç¨‹æˆ–通信˜q›ç¨‹ã€‚呿‰€æœ‰ç»„ä»?˜qžæŽ¥å™¨ç»“æž„ä¸€æ øP¼Œè¯¥ç»“构与åŸÞZºŽæ¨¡å—的结构是正交的,它处ç†çš„æ˜¯è¿è¡Œç³»¾lŸçš„åŠ¨æ€æ–¹é¢ã€‚此处的å•元为通过通信ã€åŒæ­¥å’Œ/或排除æ“作将彼此相连的进½E‹æˆ–¾U¿ç¨‹ã€‚在该结构中åQˆè€Œä¸”在所有组ä»?˜qžæŽ¥å™¨ç»“构中åQ‰çš„关系æ˜?#8220;附加”åQŒå±•½CÞZº†¾l„äšg和连接器是如何连接在一èµïL(f¨¥ng)š„。进½E‹ç»“æž„éžå¸”R‡è¦ï¼Œå®ƒæœ‰åŠ©äºŽè®¾è®¡¾pÈ»Ÿçš„æ‰§è¡Œæ€§èƒ½å’Œå¯ç”¨æ€§ã€?
      • òq¶å‘。该¾l„äšg-˜qžæŽ¥å™¨ç»“构能够ä‹Éè®¾è®¡å¸ˆç¡®å®šåÆˆè¡Œçš„æœÞZ¼š(x¨¬)以åŠ(qi¨¢ng)å¯èƒ½å‡ºçŽ°èµ„æºäº‰ç”¨çš„ä½¾|®ã€‚å•元是¾l„äšgåQŒè¿žæŽ¥å™¨æ˜?#8220;逻辑¾U¿ç¨‹”。逻辑¾U¿ç¨‹æ˜¯ä¸€¾pÕdˆ—计算åQŒå¯ä»¥å°†˜q™äº›è®¡ç®—在ç¨åŽçš„设计˜q‡ç¨‹ä¸­åˆ†é…ç»™å•独的物ç†çº¿½E‹ã€‚åÆˆå‘结构在设计的早期ä‹É用,以确定管ç†ä¸Žòq¶å‘执行相关的问题的需求ã€?
      • å…׃ínæ•°æ®æˆ–存储库ã€?nbsp;  è¯¥ç»“构由创å¾ã€å­˜å‚¨å’Œè®‰K—®æŒä¹…æ•°æ®çš„组件和˜qžæŽ¥å™¨ç»„æˆã€‚如果实际上是系¾lŸæ˜¯æ ÒŽ(gu¨©)®ä¸€ä¸ªæˆ–多个å…׃ínæ•°æ®å­˜å‚¨åº“构建的åQŒé‚£ä¹ˆï¼Œè¯¥ç»“构就适于˜q›è¡Œè¯´æ˜Žã€‚它展示了è¿è¡ŒèÊY件元素如何äñ”生数æ®å’Œä½¿ç”¨æ•°æ®åQŒå¯ä»¥ä‹É用该¾l“æž„¼‹®ä¿è‰¯å¥½çš„æ€§èƒ½å’Œæ•°æ®å®Œæ•´æ€§ã€?
      • 客户æœ?æœåŠ¡å™?/font>。如果系¾lŸè¢«æž„å¾ä¸ÞZ¸€¾l„彼此å作的客户机和æœåŠ¡å™¨ï¼Œé‚£ä¹ˆåQŒè¿™ž®±æ˜¯ä¸€ä¸ªå¾ˆå¥½çš„˜q›è¡Œè¯´æ˜Žçš„组ä»?-˜qžæŽ¥å™¨ç»“构。组件是客户机和æœåŠ¡å™¨ï¼Œ˜qžæŽ¥å™¨æ˜¯å议以åŠ(qi¨¢ng)它们å…׃ínæ¥æ‰§è¡Œç³»¾lŸå·¥ä½œçš„æ¶ˆæ¯ã€‚这对于å…Ïx³¨ç‚¹åˆ†¼›»ï¼ˆæ”¯æŒå¯ä¿®æ”ÒŽ(gu¨©)€§ï¼‰ã€ç‰©ç†åˆ†å¸ƒå’Œè´Ÿè²òqŒ™¡¡åQˆæ”¯æŒè¿è¡Œæ—¶æ€§èƒ½åQ‰éƒ½æ˜¯æœ‰ç”¨çš„ã€?

      分é…。分é…结构包括如下内å®?/font>ã€?

      • 部çÖv。部¾|²ç»“构展½CÞZº†å¦‚何ž®†èÊY件分¾l™ç¡¬ä»¶å¤„ç†å’Œé€šä¿¡å…ƒç´ ã€‚元素是软äšgåQˆä»Ž¾l„äšg-˜qžæŽ¥å™¨çš„观点看通常是进½E‹ï¼‰ã€ç¡¬ä»¶å®žä½“(处ç†å™¨ï¼‰å’Œé€šä¿¡è·¯å¾„。关¾pÀL˜¯“分酾l?#8221;å’?#8220;¿UÀL¤åˆ?#8221;åQŒå‰è€…展½CÞZº†è½¯äšg元素所é©È•™çš„物ç†å•元,åŽè€…çš„æ¡äšg是分é…和动æ€çš„。该视图能够使工½E‹è®¾è®¡ähå‘˜å¯¹æ€§èƒ½ã€æ•°æ®å®Œæ•´æ€§ã€å¯ç”¨æ€§å’Œå®‰å…¨æ€§è¿›è¡ŒæŽ¨æ–­ã€‚åœ¨åˆ†å¸ƒå¼æˆ–òq¶è¡Œ¾pÈ»Ÿä¸­ï¼Œæˆ‘们ž®¤å…¶å¯šwƒ¨¾|²ç»“构感兴趣ã€?
      • 实现。该¾l“构展示了èÊY件元素(通常是模å—)是如何映ž®„刀¾pÈ»Ÿå¼€å‘ã€é›†æˆæˆ–é…置控制环境中的文äšg¾l“æž„ä¸Šã€‚è¿™å¯¹äºŽå¼€å‘æ´»åŠ¨å’Œæž„å¾˜q‡ç¨‹çš„管ç†éžå¸¸å…³é”®ã€?
      • 工作分é…。该¾l“æž„ž®†å®žçŽ°å’Œé›†æˆæ¨¡å—的责ä»Õdˆ†é…给适当的开å‘å°¾l„。拥有作为构架一部分的工作分é…结构,å¯ä»¥ä½¿å…³äºŽè°åšå·¥ä½œçš„决策å…ähœ‰½Ž¡ç†ä¸Šçš„和构架上的两层å«ä¹‰å˜å¾—清晰。设计师应该知é“å¯ÒŽ(gu¨©)¯ä¸ªå°¾l„çš„æŠ€æœ¯è¦æ±‚ã€‚åŒæ øP¼Œåœ¨å¤§è§„模的多æºåˆ†å¸ƒå¼å¼€å‘项目上åQŒå·¥ä½œåˆ†é…结构是调出功能公共的å•å…ƒåÆˆæŠŠå®ƒä»¬åˆ†é…ç»™æŸä¸ªž®ç»„的手ŒDµï¼Œè€Œéžè®©éœ€è¦å®ƒä»¬çš„æ¯ä¸ªäººåŽ»å®žçŽ°ã€?

            è¡?.1对èÊY件结构进行了æ€È»“。该表列å‡ÞZº†æ¯ä¸ª¾l“构中的元素å?qi¨¢ng)其关系的å«ä¹‰ï¼Œòq¶è¯´æ˜Žäº†æ¯ç§¾l“æž„å¯èƒ½ä¼?x¨¬)用于什么情å†üc€?nbsp;   ž®½ç®¡æˆ‘们通常从功能的角度ç†è§£æŸä¸ª¾pÈ»Ÿçš„结构,但除了功能外åQŒè¿˜æœ‰å¿…™åÕdœ¨æž„架层次上考虑的系¾lŸå±žæ€§ï¼Œå¦‚物ç†åˆ†å¸ƒã€è¿›½E‹é€šä¿¡å’ŒåŒæ­¥ã€‚毿U结构都æä¾›äº†ä¸€ä¸ªå¯¹æŸäº›ç›¸å…³è´¨é‡å±žæ€§è¿›è¡ŒæŽ¨æ–­çš„æ–ÒŽ(gu¨©)³•。进½E‹ç»“构设计用于消除死é”åÆˆå‡å°‘瓉™¢ˆã€‚模å—分解结构设计用于äñ”生å¯ä¿®æ”¹çš„ç³»¾lŸï¼Œ½{‰ç­‰ã€‚毿Uç»“æž„éƒ½ä¸ø™®¾è®¡å¸ˆæä¾›äº†ä¸€ä¸ªè€ƒå¯Ÿ¾pÈ»Ÿçš„ä¸åŒçš„角度åQŒåÆˆä¸ø™®¾è®¡æƒè¡¡æä¾›äº†ä¸åŒçš„æ”¯ç‚V€?

      ž®†ç»“构彼此关è”在一èµ?/strong>       ž®½ç®¡˜q™äº›¾l“æž„æä¾›äº†ä¸åŒçš„考察¾pÈ»Ÿçš„è§†è§’ï¼Œä½†å®ƒä»¬ä¸æ˜¯ç‹¬ç«‹çš„。一个结构的元素与其他结构的元素相关åQŒæˆ‘们需è¦å¯¹˜q™äº›å…³ç³»˜q›è¡ŒæŽ¨æ–­ã€?nbsp; å•个™å¹ç›®æœ‰æ—¶ä¼?x¨¬)把一¿U结构作ä¸ÞZ¸»è¦ç»“构,òq¶åœ¨å¯èƒ½çš„æƒ…况下åQŒæ ¹æ®è¯¥¾l“构考虑和è¿ç”¨å…¶ä»–结构。主è¦ç»“构通常是模å—åˆ†è§£ï¼Œä½†åÆˆä¸æ€ÀL˜¯å¦‚此。这是有充èƒöç†ç”±çš„:(x¨¬)它容易与¾l„织的项目结构å»åˆã€?   òq¶ä¸æ˜¯æ‰€æœ‰çš„¾pÈ»Ÿéƒ½éœ€è¦åœ¨æž„架上采用多¿U结构。系¾lŸè¶Šå¤§ï¼Œ˜q™äº›¾l“构之间的差别就­‘Šå¤§åQ›ç„¶è€Œå¯¹äºŽè¾ƒ?y¨­u)®çš„¾pÈ»ŸåQŒæœ‰ž®‘数几个¾l“构通常å›_¯æ»¡èƒöè¦æ±‚。在有几个组ä»?-˜qžæŽ¥å™¨ç»“构时åQŒæˆ‘们䏿˜¯æŠŠæ¯ä¸ª¾l“构都用上,一个å³å¯æ»¡­‘Œ™¦æ±‚ã€‚å¦‚æžœåªæœ‰ä¸€ä¸ªè¿›½E‹ï¼Œé‚£ä¹ˆåQŒåœ¨è®¾è®¡ä¸­æ˜¾ç„¶æ²¡å¿…è¦è€ƒè™‘˜q›ç¨‹¾l“构。如果没有分布å¼çš„特å¾ï¼ˆä¹Ÿå°±æ˜¯è¯´åQŒä»…有一个处ç†å™¨åQ‰ï¼Œé‚£ä¹ˆåQŒéƒ¨¾|²ç»“构就没有什么ä­h(hu¨¢n)å€û|¼Œä¸éœ€è¦åš˜q›ä¸€æ­¥è€ƒè™‘ã€?

             ¾l“构代表了构架的主è¦å·¥ç¨‹è®¾è®¡òqŒ™¡¡ç‚V€‚å•个结构赋予了它们处ç†ä¸€ä¸ªæˆ–多个质é‡å±žæ€§çš„能力。它们代表了一个用于创建构架的强大的关注点分离æ–ÒŽ(gu¨©)³•ã€?

      选择哪些¾l“æž„      è®¾è®¡å¸ˆåº”该ä‹É用哪些结构?设计师应该把哪些¾l“æž„¾~–æˆæ–‡æ¡£åQŸå½“ç„Óž¼Œè‚¯å®šä¸æ˜¯ä½¿ç”¨æ‰€æœ‰ç»“æž„åÆˆæŠŠæ‰€æœ‰çš„¾l“æž„¾~–æˆæ–‡æ¡£ã€?nbsp;  ˜q™æ–¹é¢æœ‰å¾ˆå¤šå»ø™®®ã€?995òqß_(d¨¢)¼ŒPhilippe Kruchtenå‘表了一½‹‡å¾ˆæœ‰åª„å“力的论文ã€Kruchten95】。在˜q™ç¯‡è®ºæ–‡ä¸­ï¼Œä»–æ˜qîCº†ç”±å•独的¾l“æž„¾l„æˆçš„æž„架的概念åQŒåÆˆå»ø™®®æŠŠé‡ç‚ÒŽ(gu¨©)”¾åœ?¿Uç»“æž„ä¸Šã€‚äØ“(f¨´)了验è¯è¿™äº›ç»“æž„å½¼æ­¤åÆˆä¸å†²½Hï¼Œåœ¨å®žé™…åº”ç”¨ä¸­èƒ½å¤Ÿç›æ€º’å作åQŒä»–æè¿°äº†ä¸€ä¸ªæ»¡­‘›_…¶éœ€æ±‚çš„¾pÈ»Ÿã€‚Kruchten95廸™®®ä½¿ç”¨å…³é”®çš„用力进行检查。这一所谓的“4+1”æ–ÒŽ(gu¨©)³•å˜å¾—éžå¸¸‹¹è¡ŒåQŒçŽ°åœ¨å·²¾læˆä¸ºRational¾lŸä¸€˜q‡ç¨‹çš„æ¦‚念基¼‹€ã€?

      • 逻辑çš?/font>ã€‚å…ƒç´ äØ“(f¨´)“关键的抽è±?#8221;åQŒåœ¨é¢å‘对象中表½CÞZØ“(f¨´)对象或对象类。这是一个模å—视图ã€?
      • ˜q›ç¨‹ã€‚该视图解决了功能的òq¶å‘和分布问题。这是一个组ä»?-˜qžæŽ¥å™¨è§†å›¾ã€?
      • å¼€å?/font>。该视图展示了èÊY件模å—ã€åº“ã€å­¾pÈ»Ÿå’Œå¼€å‘å•元的¾l„织。它是一个分é…视图,ž®†èÊY件映ž®„到了开å‘环境中ã€?
      • 物ç†çš?/font>。该视图ž®†å…¶ä»–元素映ž®„到了处ç†å’Œé€šä¿¡èŠ‚ç‚¹ä¸Šï¼Œå®ƒæ˜¯ä¸€ä¸ªåˆ†é…视图(有些人把它å«åšéƒ¨¾|²è§†å›¾ï¼‰ã€?

      几乎在Kruchtenå‘表论文的åŒä¸€æ—‰™—´åQŒSoni , Nord å’?Hofmeister å…±åŒå‘表了一½‹‡éžå¸¸æœ‰å½±å“力的论文。在˜q™ç¯‡è®ºæ–‡ä¸­ï¼Œå®ƒä»¬æŠ¥å‘Šäº†å…¶æ‰€åœ¨çš„¾l„织中的软äšg设计师在许多™å¹ç›®ä¸­ä‹É用的¾l“构。它们的视图是概念上的模å—互˜qžã€æ‰§è¡Œå’Œä»£ç ã€‚这些视囑ֆ一‹Æ¡æ¸…晰地映射刀模å—ã€ç»„ä»?˜qžæŽ¥å™¨ä»¥å?qi¨¢ng)åˆ†é…æ¨¡åž‹ä¸Šã€?    è®¾è®¡å¸ˆçš„èŒè´£ä¹‹ä¸€ž®±æ˜¯ç†è§£å„ç§¾l“构如何帮助实现质é‡å±žæ€§ï¼Œç„¶åŽé€‰æ‹©èƒ½å¤Ÿæœ€ä½?j¨©ng)_œ°æä¾›˜q™äº›è´¨é‡å±žæ€§çš„¾l“æž„ã€?

    ž®ç»“      本章¾l™å‡ºäº†èÊY件构架的定义åQŒåƈ介ç»äº†å‚考模型ã€å‚考构架和构架模å¼çš„相å…Ïx¦‚å¿üc€‚本章也从早期研½I¶å¯¹¾pÈ»Ÿçš„è®¤è¯†ã€æž„æž¶å¯¹å„æ¶‰ä¼—相互沟通的影å“以åŠ(qi¨¢ng)ä½œäØ“(f¨´)一¿Uå¯é‡ç”¨èµ„äñ”çš„ä­h(hu¨¢n)值等斚w¢åQŒè§£é‡Šäº†æž„架在èÊYä»¶å·¥½E‹é¢†åŸŸçš„é‡è¦æ„义ã€?



]]>
è¯ÖM¹¦½W”记之《èÊY件构架实è·?ã€?-½W¬ä¸€ç«?/title><link>http://www.tkk7.com/kissyan4916/articles/324995.html</link><dc:creator>金色闪电(sh¨´)</dc:creator><author>金色闪电(sh¨´)</author><pubDate>Thu, 01 Jul 2010 08:25:00 GMT</pubDate><guid>http://www.tkk7.com/kissyan4916/articles/324995.html</guid><description><![CDATA[<img style="width: 282px; height: 282px" height="282" alt="" src="http://www.tkk7.com/images/blogjava_net/kissyan4916/rjgjsj.jpg" width="282" border="0" /><br /> <li> <p><strong>æ€Õdº</strong>     ä¸ÞZº†ä¿è¯è½¯äšgå¼€å‘工作的æˆåŠŸåQŒç”±è½¯äšgå¼€å‘äh员ã€èÊY仉™‡‡åŠžäh员和软äšg用户¾l„æˆçš„集æˆåŒ–团队必须å…ähœ‰å¿…è¦çš„èÊYä»¶å·¥½E‹çŸ¥è¯†å’ŒæŠ€èƒ½ï¼Œä»¥ä¿è¯èƒ½æŒ‰æ—¶å‘用户交付正¼‹®çš„软äšg。所è°?#8220;正确çš?#8221;ž®±æ˜¯æŒ‡åœ¨åŠŸèƒ½ã€æ€§èƒ½å’Œæˆæœ¬å‡ ä¸ªæ–¹é¢éƒ½èƒ½æ»¡­‘³ç”¨æˆ¯‚¦æ±‚ä¸”æ— ç¼ºé™øP¼›æ‰€è°?#8220;无缺é™?#8221;ž®±æ˜¯æŒ‡åœ¨¾~–ç åŽå¯¹è½¯äšg¾pÈ»Ÿ˜q›è¡Œäº†å½»åº•çš„½I·ä‹D‹¹‹è¯•ä¿®å¤äº†æ‰€æœ‰çš„¾~ºé™·åQŒæˆ–ä¿è¯¾~–å†™çš„ä»£ç æœ¬íw«ä¸å­˜åœ¨¾~ºé™·ã€?</p> <p>     CMU/SEI ä¸ÞZº†è¾‘Öˆ°˜q™ä¸ªç›®çš„åQŒæå‡ÞZº†åˆ›é€ ã€åº”用和推广的战略。这里的“创é€?#8221;是指与èÊYä»¶å·¥½E‹ç ”½I¶ç¤¾å›¢ä¸€èµøP¼Œå…±åŒåˆ›é€ æ–°çš„实跉|ˆ–改进原有的实践,而ä¸å¢¨å®ˆæˆè§„。这里的“应用”是指与一¾U¿å¼€å‘äh员工作ã€ä»¥åº”ç”¨ã€æ”¹˜q›å’Œ¼‹®è®¤˜q™äº›æ–°çš„æˆ–改˜q›çš„实践åQŒå¼ºè°ƒç†è®ø™”¾pÕd®žé™…。这里的“推广”æ˜¯æŒ‡ä¸Žæ•´ä¸ªç¤¾å›¢ä¸€èµøP¼Œå…±åŒé¼“励和支æŒè¿™äº›ç»˜q‡éªŒè¯å’Œ¼‹®è®¤çš„ã€æ–°çš„æˆ–改进的实践在世界范围内的应用åQŒé€šè¿‡å®žè·µ˜q›è¡Œ˜q›ä¸€æ­¥çš„‹‚€éªŒå’Œæé«˜ã€‚如此åó@çŽ¯ï¼Œå¾€å¤æ— ½I—÷€?</p> <p>     æœ¬ä¹¦é€šè¿‡å¯¹ä¸€äº›çœŸå®žç³»¾lŸçš„æ¡ˆä¾‹åˆ†æžåQŒé˜˜qîCº†å¦‚何把èÊY件构架与行业¾l„织的实际情å†ëŠ›¸¾l“åˆçš„问题。这些实例包括如下内容:(x¨¬) </p> <ul> <li> åœ¨æœ€ž®ç¨‹åº¦çš„集中控制下,在本¾l„ç»‡èŒƒå›´å†…å¿«é€Ÿã€æ–¹ä¾¿åœ°å…׃ín文档的设惛_¦‚何最¾lˆè{åŒ–äØ“(f¨´)万维¾|‘的软äšg构架ã€? <li>在空中交通管制中åQŒå¯¹å®‰å…¨æ€§çš„æžé«˜éœ€æ±‚å¦‚ä½•ä‹Éå…¬å¸ä¸ÞZº†èŽ·å¾—æžé«˜å¯ç”¨æ€§è€Œå›´¾l•ç€ä¸€ä¸ªæž„架创建系¾lŸã€? <li>分散在å„地的ä¸åŒçš„å¼€å‘äh员开å‘的飞行模拟器孾pÈ»Ÿå¦‚何˜qžæŽ¥æˆä¸€ä¸ªæž„æžÓž¼Œä»¥ä¾¿äºŽå„å­ç³»¾lŸçš„集æˆã€? <li>为满­‘³äñ”å“åŒæ—¶äº¤ä»˜çš„需求而促使公å”R‡‡ç”¨æŸä¸ªé€‚当的构æžÓž¼Œä»Žè€Œä‹É该公å¸èƒ½å¤Ÿå°†ä¸€¾l„夿‚的相关软äšg¾pÈ»Ÿæž„å¾ä¸ÞZ¸€ä¸ªäñ”å“线ã€? <li>在组¾l‡é—´å’Œå›¢ä½“内标准化构架方法的需è¦å¯¼è‡´äº†è¯¸å¦‚ J2EE å’?EJB ˜q™æ ·çš„基¼‹€¾l“æž„ã€?</li> </ul> <p>      ä½œäØ“(f¨´)一¿Uå¼€å‘äñ”å“,软äšg构架在质é‡ã€è¿›åº¦å’Œæˆæœ¬æ–šw¢å…ähœ‰æžé«˜çš„æŠ•资回报ã€?</p> <p>      æˆ‘ä»¬è®¤äØ“(f¨´)å¯é‡ç”¨çš„¾l„äšgåªæœ‰åœ¨è‰¯å¥½çš„æž„架下æ‰ä¼?x¨¬)呿Œ¥åº”有的作用。组件也òq‰™žæ˜¯å”¯ä¸€èƒ½å¤Ÿé‡ç”¨çš„部分。构架的é‡ç”¨æœ‰åˆ©äºŽç›¸¾cÖM¼¼çš„系列äñ”å“å¼€å‘,而这å过æ¥åˆž®†å¯¼è‡´æ–°çš„组¾l‡ç»“构和新的商机ã€?</p> <p>      本书˜q˜è®²˜qîCº†è½¯äšgæž„æž¶è®¾è®¡ã€æž„建和评ä­h(hu¨¢n)æ–šw¢çš„è‹¥òq²æŠ€å·§ã€‚我们从ç†è§£å¯ÒŽ(gu¨©)ž„架的实际质é‡è¦æ±‚和构建满­‘Œ™¿™äº›è¦æ±‚的构架的角度æ¥é˜è¿°˜q™äº›æŠ€å·§ã€‚æˆ‘ä»¬æŠŠæž„æž¶è¡¨ç¤ºå’Œé‡æž„技术视为æ˜q°å’ŒéªŒè¯è½¯äšg构架的手ŒDüc€‚我们从分æžå’Œè¯„ä»ähŸä¸ªæž„架与其目标的½W¦åˆ½E‹åº¦æ¥è®¨è®ø™¿™äº›æŠ€å·§ã€‚书中所有的技巧都æ¥è‡ªä¸Žæˆ‘们自己和在SEI工作的åŒäº‹åˆ†æžå„¿UèÊYä»¶ç³»¾lŸçš„¾l验。我们分æžçš„一些系¾lŸé•¿è¾¾æ•°ç™¾ä¸‡è¡Œä»£ç ï¼Œæ˜¯ç”±å¤§åž‹è½¯äšgå¼€å‘å•†åŽ†ç»æ•°å¹´å¼€å‘出æ¥çš„ã€?</p> <p>        æŠ€æœ¯æ–¹é¢çš„内容代表了èÊY件构架研½I¶çš„现状--å›_½“å‰è¯¥é¢†åŸŸçš„ç ”½I¶å’Œå®žè·µç›¸ç»“åˆçš„½E‹åº¦åQŒè¿™ä¹Ÿæ˜¯å…¨ä¹¦çš„ç†è®ºåŸº¼‹€ã€?</p> <p><strong>坯D¯»</strong>      è¯»è€…对è±?nbsp;   </p> <ul> <li> å¸Œæœ›äº†è§£è½¯äšg构架的技术基¼‹€ä»¥åŠ(qi¨¢ng)å¯ÒŽ(gu¨©)ž„æž¶äñ”生媄å“的商业和组¾l‡å› ç´ çš„从业软äšg工程师ã€? <li>希望ç†è§£è½¯äšg构架如何帮助他们更有效地监磾pÈ»Ÿçš„æž„å»ºåÆˆæ”¹è¿›å…¶ç»„¾l‡çš„æŠ€æœ¯ç®¡ç†äh员ã€? <li>ž®†æœ¬ä¹¦ä½œä¸ø™ÊYä»¶å·¥½E‹è¯¾é¢˜çš„ä¸»è¦æˆ–辅助补充读物的计算机科学或软äšg工程专业的学生ã€?</li> </ul> <p> éƒ¨åˆ†å’Œç« èŠ?nbsp;  æœ¬ä¹¦å¤§è‡´ä»Žæž„架商业周期的角度åQŒåˆ†ä¸?部分讲述了构架如何适åˆä¼ä¸šçš„需è¦ã€?</p> <ul> <li> é¢„想构架åQšç¬¬1~3ç«? <li> åˆ›å¾æž„æž¶åQšç¬¬4~10ç«? <li> åˆ†æžæž„æž¶åQšç¬¬11~13ç«? <li> ä»Žä¸€ä¸ªç³»¾lŸåˆ€å¤šä¸ª¾pÈ»ŸåQšç¬¬14~19ç«?</li> </ul> <p>       ½W?åQ?åQ?åQ?3åQ?5åQ?6å’?7ç« æä¾›äº†æ¡ˆä¾‹åˆ†æžåQŒåœ¨å„章的标题中已明¼‹®æ ‡å‡ºã€?</p> <p>½W¬ä¸€ç«?nbsp;  æž„架商业周期 </p> <ul> <li> <p>      ¾pÈ»Ÿçš„æž„架视图是抽象的,它ä¸è€ƒè™‘实现ã€ç®—法和数æ®è¡¨ç¤ºçš„细节,集中研究“黑盒”元素的行为和交互。在设计å…ähœ‰æ‰€æœŸæœ›å±žæ€§çš„¾pÈ»Ÿæ—Óž¼Œå¼€å‘èÊY件构架是½W¬ä¸€æ­¥ã€?</p> <p>      æž„架商业周期的概念:(x¨¬)¾pÈ»Ÿéœ€æ±‚æ¥è‡ªäºŽä¼ä¸šç›®æ ‡åQŒæž„æž¶æ¥è‡ªäºŽ¾pÈ»Ÿéœ€æ±‚,¾pÈ»Ÿæ¥è‡ªäºŽæž„架。构架与设计师的¾l验ã€å½“时的技术水òqÏxœ‰ç€å¯†åˆ‡çš„蔾p…R€?</p> <p>      我们å…Ïx³¨çš„焦炚w—®é¢˜æ˜¯åQšç³»¾lŸçš„软äšg构架与构建系¾lŸæ—¶çš„环境åŠ(qi¨¢ng)¾pÈ»Ÿæœªæ¥æ‰€å¤„的环境有什么关¾p»ï¼Ÿæ­¤é—®é¢˜çš„½{”案ž®±æ˜¯¾l„织本书内容所éµåó@的原则。èÊY件构架是技术ã€å•†ä¸šå’Œ½C¾ä¼š(x¨¬)½{‰è¯¸å¤šå› ç´ ä½œç”¨çš„¾l“æžœåQŒè€ŒèÊY件构架的存在å过æ¥åˆä¼?x¨¬)åª„å“æŠ€æœ¯ã€å•†ä¸šå’Œ½C¾ä¼š(x¨¬)环境åQŒä»Žè€Œåª„å“到未æ¥çš„æž„架。我们把˜q™ç§ç›æ€º’å½±å“的周æœ?-从环境到架构åˆè¿”回到环境--¿UîC½œæž„架商业周期(Architecture Business Cycle,ABC)ã€?</p> <p>      æœ¬ä¹¦è¯¦ç»†è®¨è®ºæž„架商业周期如下斚w¢åQ?</p> <ul> <li> ¾l„织目标如何影å“需求和开å‘ç­–ç•? <li> å¦‚何从需求得出架æž? <li> å¦‚何å¯ÒŽ(gu¨©)ž„架进行分æž? <li>构架如何产生体现新的¾l„织能力和需求的¾pÈ»Ÿ </li> </ul> <p> </p> <p><strong>构架的äñ”ç”?</strong>     构架也是若干商业和技术决½{–çš„¾l“果。构架的设计å—诸多因素的影å“åQŒè€Œè¿™äº›åª„å“因素的实现åˆéšæž„æž¶æ‰€å¤„çŽ¯å¢ƒçš„ä¸åŒè€Œå¼‚。å³ä½¿æ˜¯åŒä¸€ä¸ªè®¾è®¡å¸ˆè®¾è®¡æŸä¸ª¾pÈ»ŸåQŒåœ¨æ—‰™—´è¦æ±‚很紧˜q«å’Œæ—‰™—´è¦æ±‚比较宽æ¾çš„æƒ…况下åQŒæ‰€åšçš„决策也会(x¨¬)有所ä¸åŒã€‚如果对设计没有旉™—´é™åˆ¶åQŒä»–ä¼?x¨¬)åšå‡ÞZ¸åŒçš„选择。å³ä½¿åœ¨¾pÈ»Ÿéœ€æ±‚ã€ç¡¬ä»¶çŽ¯å¢ƒã€æ”¯æŒèÊY件和人力资溽{‰æ–¹é¢çš„æ¡äšg完全相åŒçš„æƒ…况下åQŒæŸä¸ªè®¾è®¡å¸ˆçŽ°åœ¨æ‰€èƒ½è®¾è®¡å‡ºçš„ç³»¾lŸå’Œä»?òq´å‰æ‰€èƒ½è®¾è®¡å‡ºçš„ç³»¾lŸä¹Ÿå¾ˆå¯èƒ½æ˜¯ä¸ä¸€æ ïL(f¨¥ng)š„ã€?</p> <p>      在ä“Q何一‹Æ¡å¼€å‘中åQŒç³»¾lŸéœ€æ±‚éƒ½èƒ½å¤Ÿæ˜Žç¡®åæ˜ å‡ºå¯¹¾pÈ»Ÿæœ€¾lˆç‰¹æ€§çš„æŸäº›æœŸæœ›ã€‚åÆˆä¸æ˜¯¾pÈ»Ÿéœ€æ±‚中的所有内定wƒ½å’Œç³»¾lŸæœ€¾lˆå…·å¤‡çš„ç‰ÒŽ(gu¨©)€§ç›´æŽ¥ç›¸å…Ÿë€‚å¼€å‘过½E‹æˆ–æŸä¸ªå·¥å…·çš„选用å¯èƒ½ä¼?x¨¬)å—到系¾lŸéœ€æ±‚的制约åQŒä½†å¯¹ç³»¾lŸéœ€æ±‚的表述仅仅是万里长å¾ç¬¬ä¸€æ­¥ã€‚如果ä¸èƒ½æ»¡­‘³é™¤¾pÈ»Ÿéœ€æ±‚ä¹‹å¤–çš„å…¶ä»–ä¸€äº›è¦æ±‚,所开å‘出æ¥çš„¾pÈ»Ÿå¾ˆå¯èƒ½å°±åƒä¸èƒ½æ­£å¸¸è¿è¡Œçš„¾pÈ»Ÿä¸€æ ·ä¸€æ–‡ä¸å€¹{€?</p> <p>      æˆ‘们通过¼‹®å®šä¸Žæž¶æž„有关的影å“因素开始构建ABCã€?</p> <ul> <li> <p><strong>构架å—ç³»¾lŸæ¶‰ä¼—的影哠     </strong>很多人和¾l„织都对构å¾è½¯äšg¾pÈ»Ÿæ„Ÿå…´­‘£ã€‚我们把˜q™æ ·çš„äh或组¾l‡ç§°ä¸ºæ¶‰ä¼—:(x¨¬)å®¢æˆ·ã€æœ€¾lˆç”¨æˆ—÷€å¼€å‘äh员ã€é¡¹ç›®ç»ç†ã€ç»´æŠ¤äh员以å?qi¨¢ng)那些对¾pÈ»Ÿ˜q›è¡Œå¸‚场è¥é”€‹zÕdŠ¨çš„äh½{‰ç­‰ã€‚这些涉众所å…Ïx³¨çš„问题å„ä¸ç›¸åŒï¼Œä½†éƒ½è¦æ±‚¾pÈ»Ÿèƒ½å¤Ÿåœ¨ä»–们所å…Ïx³¨çš„æ–¹é¢æä¾›ä¿è¯æˆ–优化。这å¯èƒ½æ˜¯è¦æ±‚ç³»¾lŸåœ¨˜q行时具有一定的特å¾ã€èƒ½å¤Ÿåœ¨ç‰¹å®šçš„硬件åã^åîC¸Šè‰¯å¥½˜q行ã€ç”¨æˆ¯‚ƒ½å¤Ÿè½»æ‘Öœ°å®šåˆ¶¾pÈ»Ÿã€å®žçŽ°çŸ­çš„ä¸Šå¸‚æ—¶é—´æˆ–è¾ƒä½Žçš„å¼€å‘æˆæœ¬ã€ä‹Éå…¬å¸é›‡ç”¨åˆ°æœ‰ä¸“长的程åºå‘˜æˆ–æä¾›å¹¿æ³›çš„功能åQŒå¦‚此秿U,ä¸ä¸€è€Œèƒöã€?font color="#3333ff">å›?.2</font>¾l™å‡ºäº†è®¾è®¡å¸ˆé‡‡çº³æœ‰å¸®åŠ©çš„æ¶‰ä¼—çš?#8220;廸™®®”的情å†üc€?</p> <p>      ä¸€ä¸ªå¾—åˆ°å„æ–¹è®¤å¯çš„¾pÈ»Ÿéœ€è¦åœ¨ä»¥ä¸‹æ–šw¢è¾‘Öˆ°ç›¸åº”è¦æ±‚åQšæ€§èƒ½ã€å¯é æ€§ã€å¯ç”¨æ€§ã€åã^å°å…¼å®ÒŽ(gu¨©)€§ã€å†…存的利用ã€ç½‘¾lœä‹É用程度ã€å®‰å…¨æ€§ã€å¯ä¿®æ”¹æ€§ã€æ˜“用性,与其他系¾lŸçš„互æ“作性以å?qi¨¢ng)行为。上˜q°å±žæ€§ï¼Œä»¥åŠ(qi¨¢ng)其他一些属性,都会(x¨¬)影哿­¤ç³»¾lŸçš„æŸä¸ªæ¶‰ä¼—å¯¹è¯¥¾pÈ»Ÿçš„评仗÷€?</p> <p>      æœ€åŸºæœ¬çš„问题是åQŒæ¯ä¸ªæ¶‰ä¼—所兛_¿ƒçš„问题和期望的目标å„ä¸ç›¸åŒï¼Œè€Œä¸”有些是相互矛盄¡š„。现实情冉|˜¯è®¾è®¡å¸ˆé€šå¸¸ä¸å¾—ä¸å¡«è¡¥ç©ºç™½åƈå调冲çªã€?</p> <p><strong>构架å—å¼€å‘组¾l‡çš„影哠  </strong>   除了通过需求表½Cºçš„¾l„织目标外,构架˜q˜å—å¼€å‘组¾l‡çš„¾l“构或本质的影å“。äh员的技能也是一个媄å“因素,开å‘进度和预算也会(x¨¬)å¯ÒŽ(gu¨©)ž¶æž„äñ”生媄å“ã€?</p> <p>      å¼€å‘组¾l‡å¯¹è½¯äšg构架的媄å“å¯ä»¥åˆ†ä¸?¾c»ï¼Œå³ç›´æŽ¥åª„å“ã€é•¿˜qœåª„å“å’Œ¾l„织¾l“构的媄å“ã€?</p> <ul> <li>  å¼€å‘组¾l‡å¯èƒ½ä¼š(x¨¬)å¯ÒŽ(gu¨©)Ÿäº›èµ„产进行直接商业投资,如现有的构架和基于这些构架的产å“。开å‘项目的基础å¯èƒ½æ˜¯æ‰€æœ‰è¦å¼€å‘的新系¾lŸæ˜¯å·²æœ‰¾cÖM¼¼äº§å“¾U¿çš„延箋åQŒå…¶å¼€å‘æˆæœ¬ä¸­æœ‰å¾ˆå¤§ä¸€éƒ¨åˆ†å±žäºŽèµ„äñ”é‡ç”¨ã€? <li>å¼€å‘组¾l‡å¯èƒ½å¸Œæœ›å¯¹æŸä¸ªåŸºç¡€¾l“æž„˜q›è¡Œé•¿æœŸçš„商业投资以实现æŸäº›æˆ˜ç•¥ç›®æ ‡åQŒåƈ且å¯èƒ½ä¼š(x¨¬)把è¦å¼€å‘çš„¾pÈ»Ÿè§†ä½œä¸ºæ­¤åŸºç¡€¾l“æž„èžèµ„或进一步扩展此基础¾l“构的手ŒDüc€? <li>å¼€å‘组¾l‡æœ¬íw«çš„¾l“构也会(x¨¬)影哿ž„æž¶çš„åÅžæˆã€?</li> </ul> <p><strong>构架å—设计师的素质和¾l验的媄å“?/strong>      设计架构时所åšçš„å„ç§é€‰æ‹©ä¸Žè®¾è®¡å¸ˆæœ¬äh所å—的教育或培训背景ã€å¯¹å…¶ä»–æˆåŠŸæž„æž¶çš„äº†è§£ä»¥å?qi¨¢ng)对æŸäº›æ€§èƒ½æžä½³æˆ–æžå·®çš„¾pÈ»Ÿçš„了解有兟뀂设计构架时åQŒè®¾è®¡å¸ˆå¯èƒ½æƒ›_®žè·µä¸€ä¸‹æŸ¿U构架模å¼ï¼Œæˆ–者是ž®è¯•ä½¿ç”¨åœ¨æŸæœ¬ä¹¦ä¸Šæˆ–æŸé—¨è¯„¡¨‹ä¸­æ‰€å­¦åˆ°çš„æŠ€å·§ã€?</p> <p><strong>æž„æž¶å—æŠ€æœ¯çŽ¯å¢ƒçš„å½±å“</strong>      技术环境å¯ä»¥çœ‹ä½œæ˜¯å¯¹è®¾è®¡å¸ˆç´ è´¨å’Œç»éªŒçš„ç‰ÒŽ(gu¨©)®Šå映。设计æŸä¸ªæž„架时所处的技术环境将ä¼?x¨¬)对构架的设计äñ”生媄å“ã€‚è¿™é‡Œæ‰€è¯´çš„æŠ€æœ¯çŽ¯å¢ƒåŒ…æ‹¬è¡Œä¸šä¸­çš„é€šå¸¸åšæ³•或在设计师所属专业团体中å ä¸»å¯¼åœ°ä½çš„软äšg工程技巧。在当今的技术环境下åQŒå¦‚果有哪个设计师根本就ä¸è€ƒè™‘用基于Webã€é¢å‘对象和支æŒä¸­é—´ä»¶çš„æ–ÒŽ(gu¨©)³•æ¥è®¾è®¡ä¿¡æ¯ç³»¾lŸï¼Œæˆ‘们ž®×ƒ¸å¾—ä¸ä½©æœä»–的勇气了ã€?</p> <p><strong>影哿ž„架的其他因ç´?nbsp;</strong>     å½±å“æž„æž¶çš„å› ç´ æœ‰å¾ˆå¤šã€‚ä¸€äº›åªæ˜¯éšå«çš„åQŒè¿˜æœ‰ä¸€äº›åˆ™å¾ˆæ˜Žæ˜¾æ˜¯å†²çªçš„。èÊYä»¶å¼€å‘è€…å‡ ä¹Žä»Žæ¥æ²¡æœ‰çœŸæ­£ç†è§£è¿‡ä¼ä¸šç›®æ ‡æ‰€è¦æ±‚的系¾lŸæ€§èƒ½åQŒæ›´ä¸å¿…说完全实çŽîCº†ã€‚确实,˜qžå®¢æˆïL(f¨¥ng)š„需求都很少完全¾~–æˆæ–‡æ¡£åQŒè¿™æ„味瀘q˜æ²¡è§£å†³ä¸åŒæ¶‰ä¼—目标之间ä¸å¯é¿å…的冲½Hã€?</p> <p>      设计师需è¦å°½æ—©çŸ¥é“åÆˆç†è§£ç‰ÒŽ(gu¨©)€§ã€æºä»¥åŠ(qi¨¢ng)寚w¡¹ç›®çš„é™åˆ¶çš„优先çñ”。因此,设计师必™åÈ¡®å®šå‡ºå„类涉众åQŒåƈ¿U¯æžä¿ƒä‹É他们表达出对¾pÈ»Ÿçš„需求或期望。如果ä¸åšè¿™æ ïL(f¨¥ng)š„工作åQŒåœ¨è®¾è®¡å±•å¼€åŽï¼Œž®×ƒ¼š(x¨¬)出现æŸäº›æ¶‰ä¼—è¦æ±‚è®¾è®¡å¸ˆè§£é‡ŠäØ“(f¨´)什么ä¸é‡‡ç”¨æ‰€æå‡ºçš„其他方案的情况åQŒè¿™æ˜„¡„¶ä¼?x¨¬)媄å“项目的开å‘进度,é™ä½Žå·¥ä½œæ•ˆçŽ‡ã€‚å¦‚æžœæ—©æœŸå·¥ä½œåšå¾—好åQŒè®¾è®¡å¸ˆž®Þpƒ½æ¸…楚在设计构架时所应考虑的制¾U¦æ¡ä»Óž¼Œè°ƒæ•´å¯¹ç³»¾lŸçš„æœŸæœ›åQŒä¸Žæœ‰å…³å„方商讨å„因素的优先¾U§åƈ˜q›è¡Œæƒè¡¡ã€‚构架评审和˜q­ä»£åŽŸåž‹å»ºç«‹æ˜¯å®žçŽ°æ­¤ç›®æ ‡çš„ä¸¤ä¸ªæ‰‹ŒDüc€?</p> <p>      è¦è®¾è®¡å¥½çš„æž„æžÓž¼Œè®¾è®¡å¸ˆä»…å…ähœ‰é«˜è¶…的专业技术是ä¸å¤Ÿçš„,˜q™ä¸ªé“ç†æ˜¾è€Œæ˜“è§ã€‚设计师需è¦ä¸æ–­åœ°å‘涉众解释针对ä¸åŒå±žæ€§æ‰€åšçš„å„ç§å–èˆåQŒä»¥å?qi¨¢ng)äØ?f¨´)何无法满­‘Ïx¶‰ä¼—çš„æ‰€æœ‰è¦æ±‚。因此,æˆåŠŸçš„è®¾è®¡å¸ˆ˜q˜å¿…™åÕd…·å¤‡ä¸ŽäºÞZº¤å¾€ã€è°ˆåˆ¤å’Œäº¤æµçš„æŠ€å·§ã€?<font color="#0033ff"><strong>å›?.3</strong></font>¾l™å‡ºäº†å¯¹è®¾è®¡å¸ˆï¼ˆå› æ­¤ä¹Ÿæ˜¯å¯ÒŽ(gu¨©)ž„æžÓž¼‰çš„媄å“。如图所½Cºï¼Œè®¾è®¡å¸ˆä¼š(x¨¬)å—到产å“éœ€æ±‚ï¼ˆä»Žæ¶‰ä¼—é‚£å„¿èŽ·å¾—ï¼‰ã€æ‰€åœ¨å¼€å‘组¾l‡çš„¾l“构和目标ã€å¯åˆ©ç”¨çš„æŠ€æœ¯çŽ¯å¢ƒåŠ(qi¨¢ng)自èín的素质和¾l验的媄å“ã€?</p> <p><strong>构架对诸影å“å› ç´ çš„å作用</strong>      本书的主旨就是è¦é˜æ˜Žä¼ä¸šç›®æ ‡ã€äñ”å“需求ã€è®¾è®¡å¸ˆçš„ç»éªŒã€æž„架和最¾lˆç³»¾lŸä¹‹é—´çš„关系--它们构æˆå¸¦æœ‰å馈回èµ\çš„ã€å¯ç”±å¼€å‘组¾l‡å®žæ–½ç®¡ç†çš„周期。开å‘组¾l‡å¯¹˜q™ä¸ªå‘¨æœŸ½Ž¡ç†å¾—好åQŒå°±èƒ½å¤Ÿä¸æ–­æˆé•¿å£®å¤§åQŒæ‹“展其¾lè¥èŒƒå›´åQŒå……分利用以å‰åœ¨æž„架和系¾lŸæž„建方é¢çš„æŠ•资ã€?font color="#0033ff"><strong>å›?.4</strong></font>¾l™å‡ºäº†è¯¥å‘¨æœŸä¸­çš„˜q™äº›å馈回èµ\。å¯ä»¥çœ‹åˆŽÍ¼Œæœ‰äº›å馈是æ¥è‡ªæž„架本íw«çš„åQŒè€Œæœ‰äº›åˆ™æ¥è‡ªæ ÒŽ(gu¨©)®æž„架所构å¾çš„ç³»¾lŸã€?</p> <p> </p> <p>䏋颿ˆ‘们ž®±æ¥çœ‹ä¸€ä¸‹è¯¥å‘¨æœŸæ˜¯å¦‚何è¿ä½œçš„åQ?</p> <ol> <li><font color="#ff0000">构架影å“ç€å¼€å‘组¾l‡çš„¾l“æž„</font>。构架规定了¾pÈ»Ÿçš„结构。特别地åQŒå°±åƒæˆ‘们将ä¼?x¨¬)çœ‹åˆ°çš„ä¸€æ øP¼Œæž„架规定了必™åÕd®žçŽŽÍ¼ˆæˆ–获得)òq‰™›†æˆåœ¨¾pÈ»Ÿä¸­çš„软äšgå•元。这些å•元是开å‘项目的¾l“构的基¼‹€ã€‚æ¯ä¸ªèÊYä»¶å•元都è¦ç”±ä¸“门的开å‘å°¾l„æ¥å®ŒæˆåQŒå¼€å‘ã€æµ‹è¯•和集æˆå·¥ä½œéƒ½æ˜¯å›´ç»•˜q™äº›å•å…ƒå±•å¼€çš„ã€‚åŒæ øP¼Œ˜q›åº¦å’Œé¢„½Ž—也都è¦å’Œè¿™äº›ç»„件相对应åQŒåƈä¸ÞZ¹‹åˆ†é…所需的资æºã€‚如果æŸä¸ªå¼€å‘公叿“…长构建相¾cÖM¼¼çš„系列系¾lŸï¼Œå®ƒå°±ä¼?x¨¬)äØ?f¨´)æ¯ä¸ªž®ç»„˜q›è¡Œé€‚当的投资,以ä¿è¯å„ž®ç»„在其从事的领域达到较高的水准。这些尾l„也ž®Þq§°ä¸ø™¯¥å¼€å‘组¾l‡ä¸­ä¸å¯æˆ–缺的组æˆéƒ¨åˆ†ã€‚è¿™ž®±æ˜¯ä»Žæž„架到开å‘组¾l‡çš„å馈ã€? <li><font color="#ff0000">构架ä¼?x¨¬)媄å“å¼€å‘组¾l‡çš„目标ã€?/font>æˆåŠŸåœ°å¼€å‘出一个系¾lŸï¼Œå¯ä»¥ä½¿å¼€å‘å…¬å¸åœ¨ç›¸åº”的市åœÞZ¸Šå æœ‰ä¸€äº›ä¹‹åœ°ã€‚该¾pÈ»Ÿçš„æž„æž¶åˆå¯ä»¥ä¸ºç±»ä¼¼ç³»¾lŸçš„æœ‰æ•ˆç”Ÿäñ”和部¾|²æä¾›è‰¯å¥½çš„æœÞZ¼š(x¨¬)åQŒç»„¾l‡å¯ä»¥è°ƒæ•´å…¶ç›®æ ‡åQŒä»¥åˆ©ç”¨å…¶æ–°å‘çŽ°çš„æŠ€æœ¯æ¥æ‹“宽市场。这ž®±æ˜¯ä»Žè¯¥¾pÈ»Ÿåˆ°å¼€å‘组¾l‡ä»¥å?qi¨¢ng)它所构å¾çš„ç³»¾lŸçš„å馈ã€? <li><font color="#ff0000">构架å¯èƒ½ä¼?x¨¬)媄å“å¯ä¼š(x¨¬)对下一个系¾lŸçš„è¦æ±‚ã€?/font>˜q™æ˜¯å› äØ“(f¨´)ä¸Žå®Œå…¨é‡æ–°å¼€å§‹è®¾è®¡ç›¸æ¯”,利用已有的构架å¯ä½¿å®¢æˆäh›´ä¸ºåŠ(qi¨¢ng)时地获得更å¯é ã€æ›´¾l济的系¾lŸã€‚从¾l济的角度考虑åQŒå®¢æˆ·å¯èƒ½ä¼š(x¨¬)æ„¿æ„æ”‘Ö¼ƒæŸäº›æ€§èƒ½éœ€æ±‚。套装èÊYä»¶æä¾›ç»™òq¿å¤§ç”¨æˆ·çš„è§£å†Ïx–¹æ¡ˆåÆˆä¸æ˜¯é’ˆå¯¹æŸä¸ªç”¨æˆ·å¼€å‘çš„åQŒä½†˜q™ç§è½¯äšgä»äh ¼ä½Žå»‰åQŒè€Œä¸”åQˆç»¼åˆè€ƒè™‘åQ‰è´¨é‡è¾ƒé«˜ã€‚äñ”å“线寚w‚£äº›ä¸èƒ½ç¡®åˆ‡è¡¨˜q°è‡ªå·±åœ¨å„ç§æƒ…况下的需求的用户也äñ”生了¾cÖM¼¼çš„媄å“ã€? <li><font color="#ff0000">构徾pÈ»Ÿçš„过½E‹ä¸°å¯Œäº†æ•´ä¸ªå¼€å‘团队的¾l验åQŒä»Žè€Œå°†å½±å“设计师对åŽç‘ô¾pÈ»Ÿçš„设计ã€?/font> <li><font color="#ff0000">一些典型的¾pÈ»Ÿä¼?x¨¬)媄å“åÆˆå®žé™…æ”¹å˜è½¯äšg工程的å‘展,也就是系¾lŸå¼€å‘äh员学ä¹?f¨¤n)和实践的技术环å¢?/font>ã€?</li> </ol> <p>上述以åŠ(qi¨¢ng)å…¶ä»–åé¦ˆæœºåˆ¶æž„æˆæˆ‘们所¿U°çš„æž„架商业周期ã€?font color="#0033ff"><strong>å›?.4</strong></font>所½Cºçš„æž„æž¶å•†ä¸šå‘¨æœŸå‘æˆ‘们展½CÞZº†å¼€å‘组¾l‡çš„业务和文化对软äšg构架的媄å“。而构架å˜q‡æ¥åˆæˆä¸ºåª„哿‰€å¼€å‘ç³»¾lŸå„æ–šw¢å±žæ€§çš„军_®šæ€§å› ç´ ã€‚但我们也应当认识到åQŒæž„架商业周期还与精明的开å‘组¾l‡åˆ©ç”¨å¼€å‘构架时所åšçš„¾l„织上的或技术ç»éªŒä¸Šçš„æ•ˆåº”有养I¼Œ˜q™äº›¾l„织通常ä¼?x¨¬)适当调整ä¼ä¸š¾l襽{–ç•¥åQŒä»¥é€‚应未楙å¹ç›®çš„å¼€å‘ã€?</p> </li> </ul> <p><strong>软äšg˜q‡ç¨‹å’Œæž„架商业周æœ?nbsp; </strong>    我们把对软äšg开呿´»åŠ¨çš„¾l„织ã€è§„范和½Ž¡ç†¿UîCØ“(f¨´)软äšg˜q‡ç¨‹ã€‚在创å¾è½¯äšg构架åQŒä‹É用该构架实现设计åQŒç„¶åŽå®žçŽ°æˆ–½Ž¡ç†ç›®æ ‡¾pÈ»Ÿæˆ–应用èÊY件的演å˜çš„过½E‹ä¸­åQŒæ¶‰å?qi¨¢ng)到哪些‹zÕdЍåQŸè¿™äº›æ´»åŠ¨åŒ…æ‹?</p> <ul> <li> ä¸ºç³»¾lŸæž„å»ÞZ¸€ä¸ªå•†ä¸šæ¡ˆä¾? <li> ç†è§£¾pÈ»Ÿéœ€æ±? <li> åˆ›å¾æˆ–选择构架 <li> ž®†æž„æž¶ç¼–æˆæ–‡æ¡£ï¼Œòq¶ä¸Žæœ‰å…³å„æ–¹˜q›è¡Œäº¤æµ <li> å¯ÒŽ(gu¨©)­¤æž„æž¶˜q›è¡Œåˆ†æžå’Œè¯„ä»? <li> æ ÒŽ(gu¨©)®æ­¤æž„架实现系¾l? <li> ä¿è¯¾pÈ»Ÿå®žçް½W¦åˆæž„æž¶çš„è¦æ±?</li> </ul> <p><font color="#0033ff">构架‹zÕdЍ</font>      ž®±åƒæž„架商业周期的结构所昄¡¤ºçš„é‚£æ øP¼Œ˜q™äº›‹zÕdŠ¨ä¹‹é—´å­˜åœ¨ç€å¤æ‚çš„å馈关¾p…R€‚䏋颿ˆ‘们就对这些活动é€ä¸€˜q›è¡Œ½Ž€å•的介ç»ã€?</p> <ul> <li><font color="#ff0000">为系¾lŸåˆ›å»ºå•†ä¸šæ¡ˆä¾‹ã€?/font>创å¾å•†ä¸šæ¡ˆä¾‹çš„å«ä¹‰è¦æ¯”简å•地评估æŸä¸ª¾pÈ»Ÿçš„å¸‚åœºéœ€æ±‚å¹¿æ³›å¾—å¤šã€‚è¿™æ˜¯åˆ›å»ºåÆˆé™åˆ¶ä»ÖM½•未æ¥éœ€æ±‚çš„é‡è¦ä¸€æ­¥ã€‚该软äšg¾pÈ»Ÿå®šä­h(hu¨¢n)ž®†ä¼š(x¨¬)是多ž®‘ï¼Ÿå…¶ç›®æ ‡å¸‚åœºæ˜¯ä»€ä¹ˆï¼Ÿé¢„æœŸäºŽä»€ä¹ˆæ—¶é—´æ­£å¼æŽ¨å‡ºï¼Ÿæ˜¯å¦éœ€è¦ä¸Žå…¶ä»–¾pÈ»Ÿ˜qžæŽ¥çš„æŽ¥å£ï¼Ÿæœ‰ä»€ä¹ˆå¿…™å»è¦éµä»Žçš„é™åˆ¶æ¡ä»Óž¼Ÿ   ˜q™äº›é—®é¢˜çš„解军_¿…™å»è¦æœ‰ç³»¾lŸè®¾è®¡å¸ˆçš„å‚与。当然这些决½{–ä¸èƒ½ä»…é è®¾è®¡å¸ˆæ¥åˆ¶å®šï¼Œä½†å¦‚果在创å¾å•†ä¸šæ¡ˆä¾‹çš„过½E‹ä¸­æ²¡æœ‰è®¾è®¡å¸ˆçš„å‚与åQŒå°†æ— æ³•实现˜q™äº›å•†ä¸šç›®æ ‡ã€? <li><font color="#ff0000">ç†è§£éœ€æ±‚ã€?/font>å¯ä»¥ä½¿ç”¨å¾ˆå¤šæŠ€å·§èŽ·å–æ¶‰ä¼—的需求ã€?创å¾åŽŸåž‹æ˜¯å¦ä¸€¿U有助于ç†è§£¾pÈ»Ÿéœ€æ±‚的有效æ–ÒŽ(gu¨©)³•。原型有助于å¯ÒŽ(gu¨©)‰€æœŸæœ›çš„è¡Œä¸ø™¿›è¡Œå¾æ¨¡ï¼Œæœ‰åŠ©äºŽè®¾è®¡ç”¨æˆähޥ壿ˆ–分æžèµ„æºä½¿ç”¨æƒ…况。这å¯ä»¥ä½¿æ¶‰ä¼—对所开å‘çš„¾pÈ»Ÿå?qi¨¢ng)早有一ä¸?#8220;真实”的体验,从而促使很快åšå‡ºå…³äºŽç³»¾lŸçš„设计和其用户接å£è®¾è®¡çš„决½{–ã€?     åœ¨èŽ·å–ç³»¾lŸéœ€æ±‚时无论采用什么技巧,所有开å‘ç³»¾lŸçš„æœŸæœ›çš„è´¨é‡å±žæ€§éƒ½ä¼?x¨¬)确定其构架的åŞ状。设计师长期以æ¥ä¸€ç›´ä‹É用具体的的战术æ¥å®žçŽ°ç‰¹å®šçš„è´¨é‡å±žæ€§ã€‚构架设计包å«äº†è®¸å¤šæƒè¡¡åQŒåœ¨æŒ‡å®šéœ€æ±‚æ—¶åQŒåÆˆä¸æ˜¯æ‰€æœ‰è¿™äº›æƒè¡¡éƒ½æ˜¯æ˜Žæ˜¾ã€‚直到创å»ÞZº†æž„æž¶åŽéœ€æ±‚中的æŸäº›æƒè¡¡æ‰ä¼?x¨¬)å˜å¾—明显,òq¶è¿«ä½¿ç¡®å®šå‡ºéœ€æ±‚优先çñ”ã€? <li><font color="#ff0000">åˆ›å¾æˆ–选择构架ã€?/font>   åœ¨é‡Œ½E‹ç¢‘å¼çš„书ç±ã€Šäh月神è¯ã€‹ä¸­åQŒFred Brooks以ä×o(h¨´)äºÞZ¿¡æœçš„è®ø™¯æ¸…æ¥šåœ°é˜æ˜Žï¼š(x¨¬)概念完整性是æˆåŠŸè®¾è®¡¾pÈ»Ÿçš„å…³é”®ï¼Œè€Œåªæœ‰é€šè¿‡ä»¥å°¾l„的形å¼å…±åŒè®¾è®¡¾pÈ»Ÿæž„æž¶æ‰èƒ½çœŸæ­£å®žçŽ°æ¦‚å¿µå®Œæ•´æ€§ã€? <li><font color="#ff0000">构架的交‹¹ã€?/font>   è¦ä‹É构架真正æˆäØ“(f¨´)¾pÈ»Ÿè®¾è®¡çš„砥柱,ž®±å¿…™åÕd‘与构架有关的所有涉众清楚而准¼‹®åœ°è¡¨è¿°æž„æž¶ã€‚äØ“(f¨´)此,构架文档的信æ¯å¿…™åÖM¸°å¯Œã€ç¡®åˆ‡æ¸…楚,è¦ä¿è¯å…·æœ‰ä¸åŒæ•™è‚²èƒŒæ™¯çš„相关人员都能ç†è§£ã€? <li><font color="#ff0000">构架的分æžå’Œè¯„ä­h(hu¨¢n)ã€?/font>   åœ¨ä“Q何设计过½E‹ä¸­éƒ½ä¼š(x¨¬)有多个候选的设计æ–ÒŽ(gu¨©)¡ˆã€‚以一¿Uåˆç†çš„æ–¹å¼åœ¨è¿™äº›æ–¹æ¡ˆä¸­˜q›è¡Œé€‰æ‹©æ˜¯è®¾è®¡å¸ˆæ‰€é¢äÍ(f¨´)的最大挑战之一ã€? <li><font color="#ff0000">实现åŸÞZºŽè¯¥æž„æž¶çš„¾pÈ»Ÿã€?nbsp;</font>  ˜q™ä¸ªé˜¶æ®µçš„主è¦ä“Q务是åQŒä¿è¯å¼€å‘äh员在实际开å‘中忠实于构架所规定的结构,éµå®ˆå…³äºŽå„部分之间交互的¾U¦å®šã€‚表˜q°æ¸…æ¥šåÆˆä¸ºå„æ–ÒŽ(gu¨©)‰€ç†è§£çš„æž„架是ä¿è¯å®žé™…设计与构架一致的é‡è¦æ¡äšg。如果能有一个帮助设计ähå‘˜åˆ›å»ºåÆˆ¾l´æŠ¤æž„架的环境或基础¾l“æž„åQŒè¿™ä¸€é˜¶æ®µçš„工作就ä¼?x¨¬)åšçš„æ›´å¥½ã€? <li><font color="#ff0000">使构架符åˆåŽŸæ¥çš„表述ã€?/font>   æœ€åŽï¼Œå½“构架已¾låˆ›å»ºå®Œæ¯•åÆˆæŠ•å…¥ä½¿ç”¨æ—Óž¼Œå¼€å‘工作就˜q›å…¥äº†ç»´æŠ¤é˜¶ŒDüc€‚在˜q™ä¸€é˜¶æ®µåQŒè¦å§‹ç»ˆä¿æŒæ¸…醒的头脑,以ä¿è¯æž„架符åˆåŽŸæ¥çš„表述ã€?</li> </ul> <p><strong>ä»€ä¹ˆæ ·çš„æž„æž¶æ‰½Ž—å¥½</strong>      构架òq¶ä¸æ˜¯æ³¨å®šæ˜¯å¥½çš„æˆ–是å的。儿U构架æ€ÀL˜¯èƒ½å¤Ÿæˆ–多或少的满­‘ÏxŸäº›ç³»¾lŸçš„è¦æ±‚åQŒä½†æ˜¯ï¼Œåœ¨è®¾è®¡æž„æž¶æ—¶å¿…é¡»éµåó@一些实践准则。当ç„Óž¼Œå¿½è§†æŸä¸€æ¡å‡†åˆ™åƈä¸ä¸€å®šæ„å‘³ç€æ‰€è®¾è®¡çš„æž„枉™…±æ²¹çŸ¥åçš„¾~ºé™·åQŒä½†è‡›_°‘应当把准则当作一个警½Cºï¼Œ˜q›è¡Œç›¸åº”的研½I¶åˆ†æžã€?  </p> <p>      æˆ‘们把从软甲开å‘中所得到的ç»éªŒåˆ†ä¸ÞZ¸¤å¤§ç±»åQšå…³äºŽè¿‡½E‹çš„廸™®®å’Œå…³äºŽäñ”å“(或结构)的å¾è®®ã€‚我们所æå‡ºçš„关于过½E‹çš„廸™®®ä¸»è¦æœ‰å¦‚下几æ¡ï¼š(x¨¬) </p> <ul> <li>构架的设计应该由一ä½è®¾è®¡å¸ˆæ¥å®Œæˆï¼Œæˆ–者由一个在æŸä½è®¾è®¡å¸ˆé¢†å¯ég¸‹çš„å°¾l„æ¥å®Œæˆã€? <li>设计师(或构架尾l„ï¼‰åº”å…¨é¢æŽŒæ¡ç³»¾lŸçš„功能需求,òq¶ä¸”应有一份所设计构架应满­‘³çš„划分了优先çñ”的质é‡å±žæ€§åˆ—表(如安全性或å¯ä¿®æ”ÒŽ(gu¨©)€§ï¼‰ <li>构架的文档应该完备,臛_°‘åº”æœ‰ä¸€ä¸ªé™æ€è§†å›‘Ö’Œä¸€ä¸ªåЍæ€è§†å›¾ï¼Œåº”该采用所有äh都认åŒçš„æ–‡æ¡£å½¢å¼åQŒä»¥ä¿è¯æ‰€æœ‰æ¶‰ä¼—都能够ç†è§£˜q™äº›æ–‡æ¡£ <li>应该把构架设计方案交由所有涉众传阅,让涉众积æžå‚与设计方案的评审ã€? <li>应该å¯ÒŽ(gu¨©)ž„架认真进行分æžï¼Œå¾—出å¯åº”用的é‡åŒ–度指标(如最大åžåé‡åQ‰ã€‚也应该对质é‡å±žæ€§è¿›è¡Œæ­£å¼è¯„伎ͼŒä»¥é¿å…出现å‘现问题时为时已晚的情å†üc€? <li>构架的设计应有助于增é‡å¼å®žçŽ°ã€‚äØ“(f¨´)此,å¯å…ˆåˆ›å¾ä¸€ä¸ªç²—略的ã€å…·å¤‡é›å½¢ä½†åŠŸèƒ½æœ€½Ž€å•çš„¾pÈ»ŸåQŒé€šè¿‡˜q™ä¸ªéª¨æž¶¾pÈ»Ÿé€æ­¥¾l†åŒ–ã€æ‰©å¤§æ¥å¾—到所期望的系¾lŸã€‚è¿™¿Uåšæ³•å¯½Ž€åŒ–é›†æˆå’Œ‹¹‹è¯•的工ä½? <li>å…许构架带æ¥ä¸€å®šçš„åQˆå°‘é‡çš„åQ‰èµ„æºäº‰ç”¨ï¼Œä½†åº”æ¸…æ¥šåœ°ç»™å‡ø™¿™äº›èµ„æºäº‰ç”¨çš„解决æ–ÒŽ(gu¨©)¡ˆåQŒå‘Šä¹‹äºŽæœ‰å…³å„æ–¹åQŒåƈä¿è¯˜q™äº›è§£å†³æ–ÒŽ(gu¨©)¡ˆåˆ‡å®žå¯è¡Œã€?</li> </ul> <p>我们所æå‡ºçš„å…³äºŽç»“æž„çš„å»ø™®®ä¸»è¦æœ‰å¦‚下几æ¡ï¼š(x¨¬) </p> <ul> <li>构架应采用定义良好的模å—åQŒå„模å—的功能责ä»Õdˆ’分应åŸÞZºŽä¿¡æ¯éšè—和相互独立的原则。信æ¯éšè—模å—应该包括那些å°è£…了计算基础¾l“æž„ç‰ÒŽ(gu¨©)€§çš„æ¨¡å—åQŒä»¥ž®†å¤§éƒ¨åˆ†è½¯äšg与计½Ž—基¼‹€¾l“构的å˜åŒ–éš”¼›Õd¼€ã€? <li>应该使用特定于æ¯ä¸ªå±žæ€§çš„众所周知的构架战术æ¥å®žçŽ°è´¨é‡å±žæ€§ã€? <li>构架¾l对ä¸å¯ä»¥ä¾èµ–于æŸä¸ªç‰¹å®šç‰ˆæœ¬çš„商业äñ”哿ˆ–工具。如果确实ä¾èµ–于æŸä¸ªå•†ä¸šå•†å“åQŒåˆ™è¦åˆç†è®¾è®¡æž„æžÓž¼Œä½¿å¾—当所ä¾èµ–的商业äñ”å“å‘生å˜åŒ–æ—¶åQŒèƒ½å¤Ÿæ–¹ä¾Ñ€ç»‹¹Žåœ°é€‚应ã€? <li>应将产生数æ®çš„æ¨¡å—和使用数æ®çš„æ¨¡å—分¼›Õd¼€ã€‚未æ¥çš„å˜åŒ–往往仅é™äºŽæ•°æ®çš„产生或数æ®çš„使用åQŒæ‰€ä»¥ï¼Œ˜q™æ ·åšä¸€èˆ¬å¯ä»¥æé«˜ç³»¾lŸçš„å¯ä¿®æ”ÒŽ(gu¨©)€§ã€‚如果系¾lŸä¸­éœ€è¦æ·»åŠ æ–°æ•°æ®åQŒåˆ™˜q™ä¸¤ä¸ªéƒ¨åˆ†éƒ½è¦åšç›¸åº”的修改,但如果这两个部分是相互独立的åQŒå°±å¯ä»¥å¯¹ç³»¾lŸè¿›è¡Œåˆ†é˜¶æ®µé€æ­¥åQˆå¢žé‡å¼åQ‰å‡¾U§ã€? <li>对于òq¶è¡Œå¤„熾pÈ»ŸåQŒæž„架应该采用定义良好的˜q›ç¨‹æˆ–ä“QåŠ¡ï¼Œå®ƒä»¬æœªå¿…åæ˜ æ¨¡å—分解¾l“构。也ž®±æ˜¯è¯ß_(d¨¢)¼Œæœ‰äº›˜q›ç¨‹çš„è¿è¡Œæ¶‰å?qi¨¢ng)刀若干个模å—,而模å—中的æŸä¸ªè¿‡½E‹å¯èƒ½ä¹Ÿè¦äØ“(f¨´)若干个进½E‹æ‰€è°ƒç”¨ã€? <li>æ¯ä¸ªä»ÕdŠ¡æˆ–è¿›½E‹çš„¾~–写都è¦è€ƒè™‘åˆîC¸Žç‰¹å®šå¤„ç†å™¨çš„关系åQŒåƈä¿è¯èƒ½å¤Ÿæ–¹ä¾¿åœ°æ”¹å˜è¿™¿Uå…³¾p…R€? <li>构架应该采用ž®‘é‡çš„ã€ç®€å•的交互模å¼ã€‚å³åœ¨æ•´ä¸ªè¿è¡Œè¿‡½E‹ä¸­åQŒç³»¾lŸçš„åŠŸèƒ½åº”ä¿æŒä¸€è‡´ã€‚è¿™å¯ä‹É¾pÈ»Ÿæ˜“于ç†è§£åQŒæœ‰åŠ©äºŽ¾~©çŸ­å¼€å‘æ—¶é—´ã€æé«˜å¯é æ€§ã€å¢žå¼ºå¯ä¿®æ”¹æ€§ã€‚它˜q˜åº”该展½Cºæž„架中的概念完整æ€?-虽然无法度é‡åQŒä½†å´æœ‰åˆ©äºŽ¾pÈ»Ÿå¼€å‘çš„™åºåˆ©˜q›è¡Œã€?</li> </ul> </li> </ul> </li><img src ="http://www.tkk7.com/kissyan4916/aggbug/324995.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/kissyan4916/" target="_blank">金色闪电(sh¨´)</a> 2010-07-01 16:25 <a href="http://www.tkk7.com/kissyan4916/articles/324995.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>¸ÐлÄú·ÃÎÊÎÒÃǵÄÍøÕ¾£¬Äú¿ÉÄÜ»¹¶ÔÒÔÏÂ×ÊÔ´¸ÐÐËȤ£º</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> Ö÷Õ¾Ö©Öë³ØÄ£°å£º <a href="http://lanoss.com" target="_blank">ÑÇÖÞ×î´óÖÐÎÄ×ÖÄ»</a>| <a href="http://jx-dirui.com" target="_blank">ÑÇÖÞvaÔÚÏßvaÌìÌóÉÈË</a>| <a href="http://xjkakatong.com" target="_blank">ÌØ¼¶¾«Æ·Ã«Æ¬Ãâ·Ñ¹Û¿´</a>| <a href="http://33eaa.com" target="_blank">ÑÇÖÞÒ»Çø¶þÇøÈýÇøÃâ·ÑÔÚÏß¹Û¿´</a>| <a href="http://zz198.com" target="_blank">ÔÚÏß¹Û¿´Ãâ·ÑÎÛÊÓÆµ</a>| <a href="http://23usxx.com" target="_blank">¾«Æ·Ò»Çø¶þÇøÈýÇø¸ßÇåÃâ·Ñ¹Û¿´</a>| <a href="http://www-75044.com" target="_blank">ÑÇÖÞÒ»Çø¶þÇøÖÐÎÄ</a>| <a href="http://aiwoqi.com" target="_blank">¹ú²ú×îÐÂ͹°¼ÊÓÆµÃâ·Ñ</a>| <a href="http://www454yu.com" target="_blank">ÖÐÎÄ×ÖÄ»Ãâ·Ñ²»¿¨¶þÇø</a>| <a href="http://1992zyzp.com" target="_blank">ÑÇÖÞÅ·ÃÀÈÕº«ÖÐÎÄÎÞÏßÂë </a>| <a href="http://0595laser.com" target="_blank">¹ú²ú91¾Ã¾Ã¾Ã¾Ã¾Ã¾ÃÃâ·Ñ</a>| <a href="http://yanyingqiang.com" target="_blank">ÑÇÖÞÃâ·ÑÒ»Çø¶þÇø</a>| <a href="http://kimnote.com" target="_blank">ÑÇÖÞ¹ú²úÀíÂÛÆ¬ÔÚÏß²¥·Å</a>| <a href="http://amjt9.com" target="_blank">ÑÇÖÞavÎçÒ¹¾«Æ·Ò»Çø¶þÇøÈýÇø</a>| <a href="http://79909d.com" target="_blank">99reÈȾ«Æ·ÊÓÆµ¹ú²úÃâ·Ñ</a>| <a href="http://nmgqsyg.com" target="_blank">ÑÇÖÞ¹ú²ú¾«Æ·ÎÞÂëµÚÒ»Çø¶þÇøÈýÇø </a>| <a href="http://2222jjjj.com" target="_blank">¹ú²úÑÇÖÞÈ˳ÉÎÞÂëÍøÔÚÏß¹Û¿´</a>| <a href="http://taixin668.com" target="_blank">¹ú²ú¸£ÀûÔÚÏßÃâ·Ñ</a>| <a href="http://qiyupu.com" target="_blank">¶þÇø¾Ã¾Ã¹ú²úÂÒ×ÓÂ×Ãâ·Ñ¾«Æ·</a>| <a href="http://gycat.com" target="_blank">ÑÇÖÞÒ»Çø¶¯Âþ¿¨Í¨ÔÚÏß²¥·Å</a>| <a href="http://www-566846.com" target="_blank">ÑÇÖÞ¹ú²ú×¨ÇøÒ»Çø</a>| <a href="http://cqtjqcc.com" target="_blank">ÈÕ±¾³ÉÄêÃâ·ÑÍøÕ¾</a>| <a href="http://wua72.com" target="_blank">ÓÀ¾ÃÃâ·Ñ²»¿¨ÔÚÏß¹Û¿´»ÆÍøÕ¾</a>| <a href="http://changfafangzhi.com" target="_blank">ÑÇÖÞÎçÒ¹ÔÚÏß²¥·Å</a>| <a href="http://ssdtsz.com" target="_blank">ÑÇÖÞAVÂÒÂëÒ»Çø¶þÇøÈýÇøÁÖ¤æ¤Ê</a>| <a href="http://2222jjjj.com" target="_blank">¹ú²úÃâ·ÑÈËÊÓÆµÔÚÏß¹Û¿´Ãâ·Ñ</a>| <a href="http://yanshimlxg.com" target="_blank">¾Ã¾Ã¹ú²ú¾«Æ·Ãâ·ÑÍøÕ¾</a>| <a href="http://9898vip.com" target="_blank">ÌØ¼¶Ã«Æ¬ÔÚÏß´óÈ«Ãâ·Ñ²¥·Å</a>| <a href="http://meiluniao.com" target="_blank">ÑÇÖÞ³ÉÈ˶¯ÂþÔÚÏß¹Û¿´</a>| <a href="http://8654123.com" target="_blank">Ò»±¾¾Ã¾Ãa¾Ã¾Ã¾«Æ·ÑÇÖÞ</a>| <a href="http://cao8080.com" target="_blank">¹ú²úÌØ¼¶ÒùƬÃâ·Ñ¿´</a>| <a href="http://fangdazd.com" target="_blank">ÌÒ×ÓÊÓÆµÔÚÏß¹Û¿´¸ßÇåÃâ·ÑÍêÕû</a>| <a href="http://zjfxjy.com" target="_blank">A¼¶Ã«Æ¬³ÉÈËÍøÕ¾Ãâ·Ñ¿´</a>| <a href="http://okgou58.com" target="_blank">Ð¡ËµÇøÑÇÖÞ×ÔÅÄÁíÀà</a>| <a href="http://tvnxl.com" target="_blank">ÑÇÖÞ·áÂúÊìÅ®Ò»Çø¶þÇøv</a>| <a href="http://628669.com" target="_blank">ÑÇÖÞµçÓ°ÖÐÎÄ×ÖÄ»</a>| <a href="http://dukane1688.com" target="_blank">ÑÇÖÞÎçÒ¹¸£Àû717</a>| <a href="http://nxeea.com" target="_blank">ÑÇÖÞµÚÒ»Çø¾«Æ·ÈÕº«ÔÚÏß²¥·Å</a>| <a href="http://slmlxg.com" target="_blank">Ãâ·ÑÖÐÎÄÊ츾ÔÚÏßӰƬ</a>| <a href="http://zfzz008.com" target="_blank">ÐÔÎÞÂëÃâ·ÑÒ»Çø¶þÇøÈýÇøÔÚÏß</a>| <a href="http://jdvgo.com" target="_blank">³ÉÄêÃâ·Ña¼¶Ã«Æ¬Ãâ·Ñ¿´ÎÞÂë</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>