freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)]依賴(lài)和耦合關(guān)系(編輯修改稿)

2024-09-13 04:09 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 系統(tǒng)的復(fù)雜度會(huì)越來(lái)越高。因此,如果不限制它們之間的緊密藕合聯(lián)系,那模塊間的依賴(lài)、程序的復(fù)雜度和開(kāi)發(fā)維護(hù)的難度都會(huì)成指數(shù)上升。(3)對(duì)設(shè)計(jì)進(jìn)行優(yōu)化——在兩者之間添加一個(gè)抽象的接口在兩者之間添加一個(gè)數(shù)據(jù)連接組件的接口,并在其中包含數(shù)據(jù)訪問(wèn)操作組件中所需要的各種數(shù)據(jù)連接的服務(wù)方法的定義,而某個(gè)具體的數(shù)據(jù)連接組件則實(shí)現(xiàn)這個(gè)接口。此時(shí)數(shù)據(jù)訪問(wèn)操作組件則只需要調(diào)用數(shù)據(jù)連接組件接口中的服務(wù)來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的各種連接功能,兩者都只依賴(lài)于數(shù)據(jù)連接組件的接口。請(qǐng)見(jiàn)下面的圖中所示的優(yōu)化設(shè)計(jì)結(jié)果的類(lèi)圖。這樣,數(shù)據(jù)訪問(wèn)操作組件到數(shù)據(jù)連接組件的依賴(lài)關(guān)系被數(shù)據(jù)連接組件的接口所隔離開(kāi)。因?yàn)樵诮涌谥兄话怂枰母鞣N連接的服務(wù)功能的定義,而不包括任何連接的服務(wù)功能的具體實(shí)現(xiàn),所以數(shù)據(jù)連接組件的接口的內(nèi)容在具體設(shè)計(jì)時(shí)也會(huì)很簡(jiǎn)單。在數(shù)據(jù)連接組件接口不變的情況下,數(shù)據(jù)訪問(wèn)操作組件和某個(gè)具體的數(shù)據(jù)連接組件這兩個(gè)模塊都可以自由地進(jìn)行修改而不影響到對(duì)方(比如添加另一個(gè)數(shù)據(jù)連接組件),依賴(lài)關(guān)系也變得簡(jiǎn)單和可管理。(4)進(jìn)一步改進(jìn)本設(shè)計(jì)和實(shí)現(xiàn)方案——核心邏輯不依賴(lài)于具體的實(shí)現(xiàn)細(xì)節(jié)如果從系統(tǒng)架構(gòu)的角度來(lái)看上面的圖中所示的設(shè)計(jì)和實(shí)現(xiàn)方案還存在一定的問(wèn)題,因?yàn)閿?shù)據(jù)訪問(wèn)操作組件所提供的功能是整個(gè)應(yīng)用系統(tǒng)的數(shù)據(jù)訪問(wèn)的核心部分,而數(shù)據(jù)連接組件中的各個(gè)功能方法則可以看成是具體實(shí)現(xiàn)的的細(xì)節(jié)。因此,從這個(gè)角度來(lái)看圖中優(yōu)化設(shè)計(jì)后的結(jié)果時(shí),該設(shè)計(jì)是“核心邏輯依賴(lài)于具體的實(shí)現(xiàn)細(xì)節(jié)”。當(dāng)然,也就沒(méi)有遵守依賴(lài)倒置原則中的“抽象不能依賴(lài)于具體,具體依賴(lài)于抽象”的要求。因?yàn)?,?dāng)細(xì)節(jié)變化(數(shù)據(jù)連接中的數(shù)據(jù)源或者連接方式發(fā)生變化)時(shí),數(shù)據(jù)訪問(wèn)操作組件中的核心邏輯(數(shù)據(jù)訪問(wèn)的實(shí)現(xiàn)邏輯)也會(huì)受到一定的影響。因?yàn)楫?dāng)應(yīng)用系統(tǒng)中的數(shù)據(jù)存儲(chǔ)從某一種形式的數(shù)據(jù)庫(kù)系統(tǒng)改變另一種形式的數(shù)據(jù)庫(kù)系統(tǒng)(比如從微軟的MS SQLServer2000改變?yōu)镺racle10G數(shù)據(jù)庫(kù)系統(tǒng))時(shí),此時(shí)也將必然會(huì)影響到數(shù)據(jù)訪問(wèn)操作組件中有關(guān)的的具體實(shí)現(xiàn)方法(因?yàn)閷?duì)這兩種不同的數(shù)據(jù)庫(kù)系統(tǒng)在具體進(jìn)行數(shù)據(jù)訪問(wèn)操作實(shí)現(xiàn)時(shí)的SQL語(yǔ)句或者涉及對(duì)存儲(chǔ)過(guò)程的調(diào)用時(shí),是不一樣的!)。為了能夠達(dá)到當(dāng)系統(tǒng)中的數(shù)據(jù)庫(kù)類(lèi)型發(fā)生變化時(shí),不至于影響到對(duì)數(shù)據(jù)庫(kù)訪問(wèn)組件的使用者(業(yè)務(wù)層組件)的代碼,有必要對(duì)系統(tǒng)設(shè)計(jì)進(jìn)一步完善!下面的圖所示為這樣的應(yīng)用場(chǎng)景下的各個(gè)類(lèi)的設(shè)計(jì)要求的圖示。(5)利用數(shù)據(jù)庫(kù)訪問(wèn)操作的抽象接口進(jìn)行隔離因此,有必要對(duì)上面的圖中所體現(xiàn)出的設(shè)計(jì)結(jié)果進(jìn)一步地改進(jìn)和完善。主要的思路是將由于數(shù)據(jù)庫(kù)連接方式的不同而造成的數(shù)據(jù)庫(kù)訪問(wèn)操作的不同隔離開(kāi),在數(shù)據(jù)庫(kù)訪問(wèn)操作這一層次同樣也設(shè)計(jì)出一個(gè)數(shù)據(jù)庫(kù)訪問(wèn)操作的抽象接口,并為該數(shù)據(jù)庫(kù)訪問(wèn)操作的抽象接口提供不同的具體數(shù)據(jù)庫(kù)訪問(wèn)操作的實(shí)現(xiàn)類(lèi)。這樣的設(shè)計(jì)能夠避免改動(dòng)對(duì)數(shù)據(jù)庫(kù)訪問(wèn)操作的使用類(lèi)(一般為上層的業(yè)務(wù)層組件類(lèi))的代碼,下面的圖為進(jìn)一步完善后的設(shè)計(jì)結(jié)果的類(lèi)圖。 控制反轉(zhuǎn)(IocInversion of Control)消解框架和我們的應(yīng)用系統(tǒng)類(lèi)之間的依賴(lài)關(guān)系前面依賴(lài)倒置原則描述的是類(lèi)與類(lèi)之間的代碼級(jí)的依賴(lài)關(guān)系。如果我們開(kāi)發(fā)的系統(tǒng)是基于某種框架系統(tǒng)來(lái)開(kāi)發(fā)的,此時(shí)我們的類(lèi)對(duì)目標(biāo)框架的依賴(lài)關(guān)系就會(huì)更強(qiáng)烈一點(diǎn)。那么,該如何消解框架和我們的應(yīng)用系統(tǒng)類(lèi)之間的依賴(lài)關(guān)系呢?利用控制反轉(zhuǎn)??刂品崔D(zhuǎn)(1)什么是控制反轉(zhuǎn)“好萊塢原則(不要調(diào)用我們,讓我們調(diào)用你)”。(2)面向框架和面向系統(tǒng)類(lèi)庫(kù)開(kāi)發(fā)的不同點(diǎn)l 框架和類(lèi)庫(kù)最重要的區(qū)別是:框架是一個(gè)‘半成品’的應(yīng)用程序,而類(lèi)庫(kù)只包含一系列可被應(yīng)用程序調(diào)用的類(lèi)。l 類(lèi)庫(kù)給用戶(hù)提供了一系列可復(fù)用的類(lèi),這些類(lèi)的設(shè)計(jì)都符合面向?qū)ο笤瓌t和模式。用戶(hù)使用時(shí),可以創(chuàng)建這些類(lèi)的實(shí)例,或從這些類(lèi)中繼承出新的派生類(lèi),然后調(diào)用類(lèi)中相應(yīng)的功能。在這一過(guò)程中,類(lèi)庫(kù)總是被動(dòng)地響應(yīng)用戶(hù)的調(diào)用請(qǐng)求。l
點(diǎn)擊復(fù)制文檔內(nèi)容
語(yǔ)文相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1