• <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>

            Binormal

            The genuine programmers use C++

             

            軟件復(fù)用級別之我見

            ????? 軟件復(fù)用程度的級別可以按以下準則來衡量(級別從低到高):
            (1)函數(shù):將那些重復(fù)或者類似的程序集中起來放在函數(shù)里,對外提供參數(shù)以利復(fù)用,是功能型的重用;
            (2)實在類:將若干經(jīng)常使用的函數(shù)集中起來,將函數(shù)的參數(shù)轉(zhuǎn)化為類的成員變量,自定義構(gòu)造和銷毀函數(shù),是資源型的重用;
            (3)抽象類:使用純虛函數(shù)對外提供接口,這些接口僅僅聲明了基類的功能,而將實現(xiàn)拖延到子類中去,是強調(diào)可變性的資源型重用;
            (4)包:將若干耦合度較大的類集中起來,統(tǒng)一地對外提供接口,是一種有機的資源型重用;
            (5)模板:將變量的類型通用化,它是一種強調(diào)通用性的資源型重用,可以應(yīng)用在上面四個層次上;
            (6)組件:封裝了數(shù)據(jù)和方法的可執(zhí)行代碼,上面五種都屬于代碼級的復(fù)用,而組件屬于軟件級的重用。

            posted on 2006-09-19 14:28 Binormal 閱讀(984) 評論(2)  編輯 收藏 引用

            評論

            # 通用軟部件 2007-08-11 10:41 yuxianm

            推薦一篇文章:
            摘自《通用軟部件應(yīng)用范圍與邊界》
            原文引用地址:http://www.sciencenet.cn/blog/user_content.aspx?id=4643
            原作者:程學先等
            對通用軟部件(簡稱部件)作清晰的界定將有利于部件技術(shù)的發(fā)展。1、部件是粗粒度的可通用于各個系統(tǒng)的代碼封裝體。部件是應(yīng)用系統(tǒng)的頂級模塊,是包括模塊級人機交互界面、數(shù)據(jù)控制(包括數(shù)據(jù)完整性約束、安全性控制)、數(shù)據(jù)變換、通信、代碼變換、簡單數(shù)據(jù)處理操作等代碼的封裝體,它的每一次復(fù)用將建立系統(tǒng)的一個程序模塊。相比較而言,對象,是類的復(fù)用(不為通用于不同程序的復(fù)用而設(shè)計的類,例如JAVA中大量類,不在本文中討論),是類的實例。類是單個數(shù)據(jù)級(數(shù)據(jù)項、域、單表)的人機交互界面、數(shù)據(jù)域完整性控制、簡單操作控制(消息驅(qū)動)等代碼的封裝體,它的每一次復(fù)用將建立程序模塊中一個控件。為了使類能通用于任何程序,調(diào)用時需要給出接口參數(shù),例如名稱、所代表的數(shù)據(jù)、其原始模板(生成該控件的類的名稱及相關(guān)特性)、位置與形狀等幾何與圖形特征、域完整性約束條件、控件的操作特性等等,這些內(nèi)容用“屬性”來表示。為讓它能被用到不同程序中去并實現(xiàn)不同的功能,利用許多方法來實現(xiàn)。這些方法在復(fù)用到其他地方時,代碼常要由程序員填寫,這些手工填寫的內(nèi)容一般不能復(fù)用。盡管從類派生生成對象的過程需要人工操作,存在大量無法復(fù)用的部分,但是該技術(shù)對于提高程序設(shè)計效率與質(zhì)量發(fā)揮了大家都公認的作用。而部件將一個模塊中所有控件都封裝了進去,處理好了控件間數(shù)據(jù)相互聯(lián)系的問題;它包括了數(shù)據(jù)變換與通信接口等內(nèi)容,也就處理好了模塊對外的聯(lián)系,有些還封裝了全部數(shù)據(jù)操作代碼。這些內(nèi)容對于程序員與用戶都是一個黑盒,在設(shè)計時無須考慮其內(nèi)部的實現(xiàn),使設(shè)計簡化,統(tǒng)一設(shè)計的接口參數(shù)變量不到20個,(如果有數(shù)據(jù)完整性控制等特殊要求再另外通過常規(guī)接口參數(shù)表、數(shù)據(jù)變換接口參數(shù)表(字典表)、通信接口參數(shù)表等傳遞控制信息)。這些將使利用部件技術(shù)構(gòu)建的系統(tǒng)具有更高的代碼復(fù)用率。但是,一個系統(tǒng)要求完全復(fù)用是十分困難的,一般在后臺進行業(yè)務(wù)邏輯和數(shù)據(jù)處理的部分,例如復(fù)雜的查詢、特殊的導出、復(fù)雜統(tǒng)計與報表、數(shù)據(jù)分析、編制計劃或其他決策支持程序,還需要人工設(shè)計補充。 2、軟件復(fù)用無止境,軟件發(fā)展與軟件復(fù)用研究始終緊密聯(lián)系在一起。部件技術(shù)也會遇到面向?qū)ο蠹夹g(shù)同樣的問題:部件的代碼冗余會更大,處理速度會進一步受到影響,適用范圍會更小。但是也一定會促進計算機理論與技術(shù)的發(fā)展,會將計算機應(yīng)用的范圍與應(yīng)用的深度再向前推進,將要求部件技術(shù)自身不斷向前發(fā)展,軟件復(fù)用實現(xiàn)的難度會越來越大,但發(fā)展不會停止。在自適應(yīng)工資管理系統(tǒng)一文中看到該設(shè)計不僅可以復(fù)用到其他行業(yè)的工資管理上,還可以用到各種單一主數(shù)據(jù)表、所有處理都以字段為基本單位的其他系統(tǒng)或子系統(tǒng)中,可以看成是系統(tǒng)級或子系統(tǒng)級的復(fù)用產(chǎn)品,但它是不能被稱為部件的,也不要求封裝。關(guān)于部件的研究還僅僅是開始,需要我們更多地去投入與研究。 3、在設(shè)計部件時要盡可能地將非復(fù)用部分獨立出來。關(guān)于數(shù)據(jù)處理的部分變化很多,要想所有處理代碼都來自復(fù)用是不現(xiàn)實的,只能逐步積累,慢慢提高這一部分的復(fù)用率。這一部分的設(shè)計往往還需要以往的設(shè)計方法。但是,為了取得較強的適應(yīng)性與可擴展性,提高程序設(shè)計效率,應(yīng)當盡可能地將這一部分代碼從部件封裝體中剝離出來、形成相對獨立的部分。在復(fù)雜查詢程序與復(fù)雜報表設(shè)計時我們考慮了這一問題。可以設(shè)計這樣的部件:該部件封裝了界面等等內(nèi)容,只將處理代碼放到數(shù)據(jù)庫中,這一部分內(nèi)容允許程序員與用戶自己維護,在復(fù)用時從數(shù)據(jù)庫中直接按程序號(記錄號)取出存放的代碼并執(zhí)行。這樣,程序員操心的將只是若干面向過程代碼,工作量與設(shè)計難度將都下降。也具有很大意義。
              回復(fù)  更多評論   

            # re: 軟件復(fù)用級別之我見[未登錄] 2007-08-13 13:07 shilei230

            軟件復(fù)用無止境,存在著一個粒度的問題。一個基本的原則就是:封裝變化,依賴抽象。所以通過面向?qū)ο蠖皇敲嫦驒C器的方式來解決問題,就能夠在問題域把變化隔離出來,從而獲得一個穩(wěn)定的框架。這篇文章講的就是這個意思。  回復(fù)  更多評論   

            導航

            統(tǒng)計

            常用鏈接

            留言簿(2)

            隨筆檔案

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久人人爽人人爽人人av东京热| 亚洲精品乱码久久久久久久久久久久 | 久久精品国产精品亚洲下载| 人妻丰满?V无码久久不卡| 波多野结衣久久一区二区| 99久久人妻无码精品系列| 色天使久久综合网天天 | 久久无码国产专区精品| 久久国产精品久久久| 亚洲欧美精品一区久久中文字幕 | 欧美午夜精品久久久久久浪潮| 久久精品麻豆日日躁夜夜躁| 免费一级欧美大片久久网 | 久久99国产精品久久| 久久久久亚洲AV片无码下载蜜桃| 天天久久狠狠色综合| 亚洲精品tv久久久久久久久| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久99国产乱子伦精品免费| 久久无码国产| 国产精品免费久久久久久久久 | www.久久热| 久久国产热精品波多野结衣AV| 久久免费大片| 久久婷婷五月综合色99啪ak| 久久国产午夜精品一区二区三区| 狠狠狠色丁香婷婷综合久久五月 | 99久久www免费人成精品| 99久久99这里只有免费费精品| 7777精品久久久大香线蕉| 7777精品伊人久久久大香线蕉| 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 久久精品国产福利国产琪琪| 国产综合精品久久亚洲| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 久久国产欧美日韩精品免费| 久久精品亚洲男人的天堂| 九九久久精品国产| 狠狠久久综合伊人不卡| 久久精品二区| 亚洲国产精品无码久久久久久曰|