<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Mark's Java Blog
    MyEclipse, Java EE, Spring, Struts, Hibernate, JPA, SWT, Swing, AJAX, JavaScript,SOA
    封裝類要保證封裝內(nèi)容的高度統(tǒng)一性,這些方法都大大簡(jiǎn)化了類封裝的可維護(hù)性和重調(diào)用性。
      可維護(hù)性
      既然大家都知道重載是面向?qū)ο蟪绦蛟O(shè)計(jì)的很重要組成部分,那么你可以看出軟件的可維護(hù)性的重要性。如果能正確地封裝類,你就可以減少很多函數(shù)的更改。
      
      在同一封裝里嚴(yán)密地聯(lián)結(jié)各個(gè)類
      嚴(yán)密地聯(lián)結(jié)封裝中的各個(gè)類可以得到高凝聚的封裝。如果兩個(gè)類展示出很好的聯(lián)結(jié)性,那么這兩個(gè)類很有可能被經(jīng)常地調(diào)用以提供聯(lián)系方便的服務(wù)。所以當(dāng)在設(shè)計(jì)你的封裝時(shí),你可以最大限度地減小封裝之間的依靠性,以避免各個(gè)封裝的沖突。
      
      在同一封裝里類要統(tǒng)一改變
      顯然的,當(dāng)其他類改變時(shí),各個(gè)嚴(yán)密結(jié)合的類也同樣受到影響。任一個(gè)類的更改都會(huì)導(dǎo)致與這一類相關(guān)的類的相應(yīng)更改,至少,類中的函數(shù)必須更改。你可以通過在同一封裝里嚴(yán)密聯(lián)結(jié)類來避免這些風(fēng)險(xiǎn)。
      
      然而,一些聯(lián)結(jié)不嚴(yán)密的類也被工程的其他改變而改變。在這樣的情況下,你應(yīng)該把這些類放在同一封裝。因?yàn)楠?dú)立的類改變時(shí),它們會(huì)產(chǎn)生其他的負(fù)影響。
      
      在不同封裝里類不要一起調(diào)用
      封裝啟發(fā)的可行性取決于是否封裝能提供真正的聯(lián)結(jié)。即使類能經(jīng)常地一起被調(diào)用,它們卻不能一起被改變。所認(rèn)你必須把這些類進(jìn)行獨(dú)立封裝。當(dāng)然,這就意味著引入多個(gè)封裝來調(diào)用獨(dú)立的類。這一方法的優(yōu)點(diǎn)是顯而易見的。
      
      在一個(gè)封裝里對(duì)一個(gè)類的依賴也會(huì)產(chǎn)生對(duì)其他類的依賴,這是必然的。當(dāng)封裝中一個(gè)類改變時(shí),整個(gè)封裝都會(huì)發(fā)生變化。
      
      在不同封裝里類不要一起重載
      不幸的是,即使在初始化時(shí),一個(gè)類對(duì)象不能允許它自己去調(diào)用不同的類,就給軟件升級(jí)帶來不利,這樣軟件的可維護(hù)性就變得非常很重要。所以在不同的封裝里,獨(dú)立的類重載是一個(gè)最有效的方法。
      
      關(guān)鍵的注意事項(xiàng)
      在Java程序設(shè)計(jì)時(shí),你必須注意以下幾點(diǎn):
      
      Containing Change ––––封裝各個(gè)類到一個(gè)單一的封裝里能減少很多更改,把所有改變都集中到一個(gè)封裝里有助于軟件的可維護(hù)性。
      
      Class coupling –––––當(dāng)在同一封裝里聯(lián)結(jié)類時(shí),你應(yīng)該注意到其他類也有可能和這一個(gè)類有關(guān)。忽視這些聯(lián)系會(huì)產(chǎn)生很多不必要的關(guān)聯(lián)。
      
      Contention ––––– 前兩個(gè)啟發(fā)產(chǎn)生比較大的封裝,目的是調(diào)用;后兩個(gè)啟發(fā)產(chǎn)生比較小的封裝,目的是可維護(hù)。這前后的封裝會(huì)發(fā)生沖突。在開發(fā)過程中,你必須在程序結(jié)構(gòu)上作出相應(yīng)的改變。在程序設(shè)計(jì)開發(fā)初期,你應(yīng)該選擇利于軟件可維護(hù)性的比較小的封裝;當(dāng)在開發(fā)后期,你應(yīng)該選擇利于軟件調(diào)用的比較大的封裝。
      
      調(diào)用
      當(dāng)設(shè)計(jì)程序框架時(shí),你應(yīng)該集中于封裝的調(diào)用,因?yàn)镴ava封裝的調(diào)用和可維護(hù)非常的重要。當(dāng)設(shè)計(jì)合理,程序就很容易的支持封裝的調(diào)用功能。
    posted on 2008-03-17 11:44 Mark 閱讀(1108) 評(píng)論(0)  編輯  收藏 所屬分類: Java SE
     
    主站蜘蛛池模板: 免费无码不卡视频在线观看| 久久免费精彩视频| 暖暖日本免费在线视频| 亚洲精品中文字幕无乱码麻豆| 巨波霸乳在线永久免费视频 | 亚洲an天堂an在线观看| 99精品免费视频| 亚洲成人在线电影| 亚洲成人免费电影| 亚洲人成未满十八禁网站| 日本a级片免费看| 老司机精品视频免费| 亚洲精品自产拍在线观看| 男的把j放进女人下面视频免费| 亚洲高清在线播放| 免费在线看v网址| 久久精品国产亚洲av品善| 亚洲AV无码不卡在线观看下载| 国产精品1024在线永久免费 | 亚洲视频中文字幕在线| 五月婷婷综合免费| 欧洲亚洲综合一区二区三区| 中文字幕亚洲日韩无线码| 日韩精品内射视频免费观看| 亚洲AV男人的天堂在线观看| 五月婷婷亚洲综合| 99热这里只有精品免费播放| 亚洲精品无码av中文字幕| 亚洲精品成人网久久久久久| 性色午夜视频免费男人的天堂| 亚洲一区二区三区久久| 亚洲第一页综合图片自拍| 久久久久国产免费| 在线观看亚洲专区| 亚洲综合久久1区2区3区| 国产精品久免费的黄网站| 久久久久久久久久国产精品免费| 亚洲综合中文字幕无线码| ZZIJZZIJ亚洲日本少妇JIZJIZ| 亚州免费一级毛片| 无码的免费不卡毛片视频|