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

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

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

    冰浪

    哥已不再年輕 - 堅定夢想,畢生追求!
    posts - 85, comments - 90, trackbacks - 0, articles - 3
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    包結構也要精心設計

    Posted on 2007-07-26 20:46 冰浪 閱讀(1166) 評論(2)  編輯  收藏 所屬分類: Java

         今天開始做一個新的模塊,叫“時限監察”,這個模塊的功能是要對“辦件處理”的處理情況進行一個監察工作。也就是說兩者是緊密相關的。而我要做的工作就是針對辦件處理的結果或者說是記錄進行一個過濾匯總,并對有關的記錄進行處理。如某些辦件未能按時處理的,我就可以對此辦件記錄進行通知,提醒相關人員進行處理。
        首先說明一點的是,有一個VO對象,在公司的產品開發框架中是一個值對象,但這個值對象并不是簡單功能角色上的VO,而即做為數據持久化操作中與數據庫表進行對象關系映射的ORM Object,也是作用顯示層中的View Object,在這里我不討論此設計的優缺點,這不是我要說的方面。
        在辦件處理模塊,某同事已經創建了對應的VO,在這里我稱之為APVO吧,而我在時限監察模塊也需要用到它數據表中的數據,進行辦件情況的列表顯示,所以APVO對我而言是很有利用價值的,如果我能利用它,那我就需要重復創建此VO(或者說是其中大部分屬性)的工作了。對于此,我首先想到的是創建一個自己模塊的LMVO,并繼承APVO,這樣,我既可以擁有自己的私有成員,也可利用到APVO中的所需要成員屬性。如果這要求能夠實現,那么我就可減少不少工作量,而對于面向對象開發方法中也是常見的情況。
        正當我這么做時,卻發現了一個問題,APVO中的成員屬性的訪問域全是“private”類型的,這讓我大失所望,我無法繼承這些成員屬性!
        一般情況下,我們都習慣性將類成員變量的訪問域設為private類型,然后提供Setter和Getter方法,這樣的做法,我們也通常認為是比較安全的作法,是符合封裝性要求的。但這樣的做法,讓很多沒有必要進行private封裝的成員變量永遠地失去了再利用的可能。在這種情況下,如果我還是不想重寫這些成員變量的話,就只能是直接用APVO,并在其中加入我更多的成員變量,但這并不我所希望的。也許你會說,“不用繼承,可以用組合,而且組合優于繼承,不是嗎?”這句話本沒有錯,一般情況下可以這么法,而且最好這么做。但在某些情況,組合無法實現我的要求,就像在公司的開發框架中就無法進行,VO中的成員變量只能是簡單的數據類型,如String,這樣在進行數據庫操作時可以順利地對其取值和賦值,但如果組合了另一個VO對象的話,這個VO對象卻無法進行取值和賦值。
         所以,在設計類時,要考慮到類的復用,所以對其成員變量的訪問域控制上,不要一概地設成private。我們可以設為protected或者是默認訪問類型。單是這么做并不夠,我們還是要考慮安全性,也就是訪問控制。所以我們還要對其所在的包的結構進行設計。
         我們不要簡單地按功能模塊的方式來設計包,要考慮到模塊間的邏輯關系,讓有關系的模塊的包設計成“父子包”的形式,而不是按功能模塊簡單地設計成平行結構,這不利于類之間的交互,也只有這樣,我們在前面說的設計類成員變量的訪問域才變得有意義。
         如前面我提到的例子,我可以將我自己的包置于APVO所在包的子包下,再讓APVO的成員變量的訪問域聲明為protected,此時我將自己的LMVO繼承APVO,這不再行不通了!


    評論

    # re: 包結構也要精心設計  回復  更多評論   

    2007-07-27 09:11 by Robin's Java World
    不知所雲.

    # re: 包結構也要精心設計  回復  更多評論   

    2007-07-27 11:30 by dennis
    adapter or wrapper
    主站蜘蛛池模板: www.免费在线观看| 久久成人免费大片| 日本午夜免费福利视频| 亚洲女人18毛片水真多| 99在线精品免费视频九九视| 久久久无码精品亚洲日韩蜜臀浪潮 | 久久免费精彩视频| 91天堂素人精品系列全集亚洲| 无码人妻久久一区二区三区免费 | 四虎成人精品一区二区免费网站| 国产亚洲sss在线播放| 日韩精品成人无码专区免费| 亚洲熟妇自偷自拍另欧美| 国产在线19禁免费观看国产 | 国产成人在线观看免费网站 | 亚洲中文字幕无码久久综合网 | 国产成人精品免费午夜app| 亚洲av无码片区一区二区三区| 国产99视频精品免费观看7| 亚洲精品无码一区二区| 一级毛片直播亚洲| 三级毛片在线免费观看| 国产成A人亚洲精V品无码性色| 无码国产精品一区二区免费vr| 亚洲国产高清美女在线观看| 最近的免费中文字幕视频| 深夜特黄a级毛片免费播放| 亚洲一区AV无码少妇电影☆| 一级毛片免费播放| 亚洲国产系列一区二区三区| 午夜亚洲av永久无码精品| 久久九九全国免费| 亚洲日本va一区二区三区| 亚洲成a人片在线观看老师| 嫩草影院在线播放www免费观看| 亚洲精品美女久久久久9999| 国产伦精品一区二区三区免费迷 | 亚洲av一综合av一区| 成在人线AV无码免费| 有码人妻在线免费看片| 亚洲国产国产综合一区首页|