青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

《設計模式精解》學習日志1

Posted on 2007-06-14 10:09 Michael Liang 閱讀(757) 評論(0)  編輯 收藏 引用 所屬分類: 學習日志

在程序設計中,

    內聚度:程序中操作之間聯系緊密的程度,反應一個子程序內部成份相互聯系的強度

    耦合度:兩子程序之間聯系的強度

顯然,程序設計的目標是強內聚和松耦合(子程序內部完整性強,與其他子程序的聯系靈活,程度?。?。

功能分解是面向過程設計時很自然的一種處理復雜問題的方法,它的基本思想是把問題拆分成多個功能步驟。,由于“需求總會發生變化”,因此不可避免的程序設計時要處理變化。對此功能分解的對策是模塊化設計,但是模塊化設計的一大缺點是低聚合和緊耦合,“牽一發而動全身”。

UML Relationships(關系)初探

基本關系有四種:依賴(Dependency), 關聯(Association), 泛化(Generalization),實現(Realization)
每種都可以細化為變體。

依賴關系(Dependency)
    是事物(Thing)之間的關系, 因此包括類之間的關系、包之間的關系、用例之間的關系、對象之間的關系、建模元素與模型之間的關系等。
    依賴關系用虛線加普通箭頭表示,由客戶(源*)指向供應(目標*)

    兩個類之間的依賴關系可以是:
    客戶類訪問定義在供應者類內部的數據值
    客戶類的操作調用了定義在供應者類內部的操作
    客戶類的返回類或參數是供應者類的實例
    如果在順序圖中的兩個對象存在消息的傳送,而且它們之間沒有結構方面的連接,可以在類圖上用依賴關系建模。
   
類之間依賴關系的細化:
a.友元依賴<<friend>>
    目標類視源類為友元,允許源類訪問目標類的所有私有屬性和操作
    例: 目標類:二叉樹,源類:迭代器
b.導出依賴<<derive>>
    源類可以從目標類通過計算得出。
    例: 源類: 年齡Age   目標類: 出生日期
c.細化依賴<<refine>>
    在類圖中表示同一模型的不同詳細程度的規格說明,源類比目標類更為詳細.
d.實例化依賴<<instantiate>>
    一個類的對象是由另一個的對象創建,則稱為實例化依賴。源類創建了目標的一個實例
    例:源類: Array        目標類: Stack 
e.使用依賴<<use>>
    不加任何修飾的依賴即為使用依賴。
    如Binary Search Tree類使用依賴于Binary Tree類
f.綁定(Binding)依賴
    目標類是模板類,源類是模板實例化后的類
   
包(package)之間依賴關系的細化:
a.訪問依賴<<access>>
    源包被授予了可訪問目標包的權限
b.導入依賴<<import>>
    它表明了源包可以訪問目標包里的元素,但各個包有自己獨立的命名空間,這意味著屬于不同包的兩個元素可以重名。導入
    依賴可以使目標包內的公共可見元素進入源包的命名空間。

用例(use case)之間依賴關系的細化:
a.包含依賴<<include>>
    源用例顯式的包含目標用例作為其行為的一部分。此時源用例稱為基用例,目標用例稱為內含用例
    如果兩個用例存在包含依賴關系,則說明基用例的動作序列中含有特定的步驟把內含用例的動作序列包含進來
b.擴展依賴<<extend>>
    它表明源用例擴展了目標用例的行為。此時,源用例稱為基用例,目標用例稱為擴展用例。
    擴展用例在特定條件下為基用例提供附加的動態行為。
    例如,在人機交互過程(基用例)中出現差錯時進行的異常處理即為擴展動作。
    擴展依賴與包含依賴的區別在于,如果僅將擴展從基用例地動作序列中去除,基用例仍然是語義完備的,
    即它的執行仍將產生有意義的結果。而包含依賴則不然。

對象之間依賴關系的細化:
a.轉換依賴<<become>>
    當需要在交互圖上表示對象狀態的轉換時可以用轉換依賴。主要強調由于消息而導致對象狀態的改變。
    轉換依賴連接的目標對象和源對象是同一個對象。
b.調用依賴<<call>>
    當需要在交互圖或對象圖上顯式強調對象之間或操作之間的調用關系時要用調用依賴。
    它表明源對象引用了目標對象的操作,或源操作引用了目標操作。
c.復制依賴<<copy>>
   為了在交互圖或活動圖上描述對象復制的動作可以采用復制依賴。它連接兩個對象,目標對象是源對象的完全相同而又獨立的副本。
d.發送依賴<<send>>
    它連接一個對象(在源端)和一個消息(在目標端),表明源對象在交互過程中發送了一個消息,可以用在狀態機的描述中。
    它針對內嵌有狀態機的對象,可用來描述如何通過發送信號以產生某種事件的動作。
   
建模元素與模型之間的依賴關系:
a.回溯依賴<<trace>>
    它連接兩個模型元素,表明目標是源的歷史上的前驅。如交互和協作就是從用例導出的。
   
關聯關系(association)
    關聯是一種結構關系, 它描述一組鏈,這些鏈是類之間或類與接口之間的連接。
    通過這種連接,一個對象可以訪問另一個對象的屬性或調用另一個對象的操作。
    關聯是雙向的,其中的角色代表一個類的對象在另一個類中的存在。
    例: 兩個類Employee, Employer存在關聯關系
   
    聚合(aggregation)是一種特殊類型的關聯, 它描述整體與部分的結構關系。整體端有一個菱形作為標記
    復合聚合(composite aggregation)是一種特殊的聚合關系, 又稱組合,它表明整體對象與部分對象有相同的生存周期。
    角色的復雜度(Multiplicity)指角色在關聯關系中出現的次數,如1, 0..1, 1..*, *等

    例如,對應于現實中的飛機場Airport, 可以說它聚合了0..*架飛機Aircraft,同樣的,一架Aircraft被0..1個Airport包容(可能處于飛行狀態),此時Airport與Aircraft的關系是聚合。

    又如,一輛汽車Car,用于4~5個輪胎Tire(可能有備用胎),Car和Tire是密不可分的,Tire是Car的一部分,因此用組合來表示二者之間的關系。一個Car組合了4..5個Tire,一個Tire屬于1輛Car

    聚合和組合都可以說是一種has-a關系,“擁有”,Airport“擁有”Aircraft,Car“擁有”Tire,二者的區別在于組合強調的“擁有”是真正意義的部分與整體的關系,從程序設計角度來看組合關系雙方生存期一致,同生共死;聚合的“擁有”則更多強調部分的一個集合與整體有從屬關系,部分集合內部各元素是獨立的。

 

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            影音先锋中文字幕一区| 亚洲电影在线看| 午夜精品久久久久久99热| 亚洲精品中文字幕在线| 国产精品多人| 性视频1819p久久| 欧美亚洲一区| 影视先锋久久| 亚洲国产日韩欧美一区二区三区| 久久久久久尹人网香蕉| 亚洲国产一区二区视频| 亚洲激情偷拍| 国产精品亚洲综合一区在线观看| 欧美伊人精品成人久久综合97| 亚洲欧美综合v| 亚洲激精日韩激精欧美精品| 亚洲欧洲在线播放| 国产精品一区二区在线| 久久在线91| 欧美激情1区2区| 欧美中文字幕在线| 欧美福利视频在线观看| 性欧美18~19sex高清播放| 欧美一区二区在线观看| 亚洲精选在线观看| 亚洲一区三区在线观看| 亚洲国产精品成人综合色在线婷婷| 91久久综合| 国产一区二区三区av电影| 亚洲风情亚aⅴ在线发布| 国产精品久久久久免费a∨| 美日韩精品视频免费看| 欧美日韩一区二区三区在线| 久久久噜噜噜久久中文字幕色伊伊| 噜噜噜久久亚洲精品国产品小说| 亚洲一区二区三区免费视频| 久久久欧美精品| 亚洲综合色激情五月| 久久久av毛片精品| 香蕉尹人综合在线观看| 欧美激情一区二区三区在线| 久久久国产精品亚洲一区 | 亚洲激情黄色| 合欧美一区二区三区| 国产免费成人av| 日韩视频永久免费| 激情校园亚洲| 欧美一级二区| 欧美伊人精品成人久久综合97| 欧美日韩hd| 欧美激情第五页| 影音先锋成人资源站| 新狼窝色av性久久久久久| 亚洲亚洲精品三区日韩精品在线视频| 久久婷婷国产综合尤物精品| 欧美在线91| 国产日产欧产精品推荐色| 一本色道久久| 亚洲视频在线观看免费| 欧美精品v日韩精品v国产精品 | 亚洲国产成人91精品 | 亚洲成色777777在线观看影院| 国产欧美日韩视频一区二区| 中文一区在线| 亚洲综合首页| 欧美午夜精品久久久| 一区二区三区视频在线播放| 亚洲少妇一区| 国产精品高潮呻吟久久av无限| 亚洲卡通欧美制服中文| 亚洲视频精品| 国产精品一区二区在线观看不卡| 中文久久精品| 亚洲曰本av电影| 国产欧美日韩激情| 先锋亚洲精品| 美女亚洲精品| 亚洲日韩欧美视频一区| 欧美伦理一区二区| 亚洲午夜黄色| 欧美伊人久久| 亚洲国产一区视频| 欧美激情一区二区在线| 一本一本久久| 久久久99爱| 亚洲福利在线观看| 欧美日韩精品伦理作品在线免费观看| 亚洲三级电影全部在线观看高清| 亚洲性夜色噜噜噜7777| 国产日韩欧美不卡| 久久在线视频在线| 日韩一级裸体免费视频| 欧美一区三区二区在线观看| 精品成人一区二区三区| 欧美激情一区二区三区在线视频 | 亚欧成人精品| 免费h精品视频在线播放| 亚洲伦理中文字幕| 国产精品高清在线观看| 久久精品免费电影| 亚洲精品视频在线播放| 性欧美暴力猛交另类hd| 亚洲国产精品ⅴa在线观看| 欧美性猛片xxxx免费看久爱 | 亚洲国产女人aaa毛片在线| 欧美精品一区二| 亚洲欧美日韩精品在线| 亚洲成色精品| 欧美一区2区三区4区公司二百| 亚洲第一久久影院| 国产精品国产一区二区| 老色批av在线精品| 午夜精彩国产免费不卡不顿大片| 欧美顶级艳妇交换群宴| 欧美影院成人| aa级大片欧美| 亚洲第一区在线观看| 国产欧美精品在线播放| 欧美日韩国产美| 久久久久综合| 欧美一区二区在线观看| 一本久道久久综合婷婷鲸鱼| 欧美成人精品1314www| 久久不射网站| 亚洲男人的天堂在线| 亚洲乱码一区二区| 亚洲高清不卡| 黄色影院成人| 激情成人中文字幕| 国产精品影音先锋| 国产精品www网站| 欧美日韩国产成人在线观看| 美国成人毛片| 久久综合久色欧美综合狠狠| 性视频1819p久久| 亚洲在线观看免费视频| 99热精品在线观看| 一区二区精品| 亚洲少妇一区| 中国亚洲黄色| 中文av字幕一区| 亚洲图中文字幕| 亚洲午夜91| 亚洲免费视频观看| 午夜精品影院| 性欧美超级视频| 久久久精品999| 久久免费国产精品1| 久久亚洲春色中文字幕| 久久免费视频一区| 美女尤物久久精品| 欧美www视频在线观看| 欧美aⅴ99久久黑人专区| 欧美激情 亚洲a∨综合| 欧美精品一区二区精品网| 欧美日韩亚洲网| 国产精品高潮呻吟久久| 国产欧美精品一区| 国产在线视频欧美一区二区三区| 激情视频一区| 日韩一级免费观看| 亚洲制服少妇| 久久久久久久尹人综合网亚洲| 久久久久久久综合日本| 免费一级欧美在线大片| 91久久久久久国产精品| 亚洲免费电影在线| 亚洲欧美日韩国产一区二区| 久久国产欧美日韩精品| 免费久久久一本精品久久区| 欧美日韩亚洲91| 国产日韩欧美在线视频观看| 又紧又大又爽精品一区二区| 洋洋av久久久久久久一区| 亚洲欧美日韩国产综合| 久久中文久久字幕| 亚洲人成亚洲人成在线观看| 亚洲图片欧美日产| 久久永久免费| 国产精品久久二区| 亚洲国产日韩欧美在线动漫| 中文精品在线| 欧美日本一区| 激情五月婷婷综合| 亚洲午夜精品久久久久久浪潮| 久久国产主播精品| 亚洲精品国精品久久99热一| 亚洲欧美日韩中文在线制服| 免费日韩av片| 国产亚洲欧美一区二区| 日韩视频在线观看国产| 久久亚洲精品欧美| 亚洲深夜福利视频| 免费久久久一本精品久久区| 国产视频精品免费播放| 宅男噜噜噜66一区二区| 欧美成人69av| 午夜久久久久久| 欧美性jizz18性欧美| 亚洲精品中文字幕有码专区|