關(guān)于軟件復(fù)用領(lǐng)域中一些詞的定義

程學(xué)先
在代碼類軟件復(fù)用領(lǐng)域中有子程序、宏、函數(shù)、類、方法、軟構(gòu)件、軟部件、組件等等名詞,關(guān)于它們的定義有許多不同的說法。
一、百度詞條或當(dāng)前各類文獻(xiàn)中的定義
1 類
1)類是一種復(fù)雜的數(shù)據(jù)類型,它是將不同類型的數(shù)據(jù)和與這些數(shù)據(jù)相關(guān)的操作封裝在一起的集合體。類具有更高的抽象性,類中的數(shù)據(jù)具有隱藏性,類還具有封裝性。類的結(jié)構(gòu)(也即類的組成)是用來確定一類對(duì)象的行為的,而這些行為是通過類的內(nèi)部數(shù)據(jù)結(jié)構(gòu)和相關(guān)的操作來確定的。這些行為是通過一種操作接口來描述的(也即平時(shí)我們所看到的類的成員函數(shù)),使用者只關(guān)心的是接口的功能(也就是我們只關(guān)心類的各個(gè)成員函數(shù)的功能),對(duì)它是如何實(shí)現(xiàn)的并不感興趣。而操作接口又被稱為這類對(duì)象向其他對(duì)象所提供的服務(wù)。類的定義格式一般地分為說明部分和實(shí)現(xiàn)部分。說明部分是用來說明該類中的成員,包含數(shù)據(jù)成員的說明和成員函數(shù)的說明。成員函數(shù)是用來對(duì)數(shù)據(jù)成員進(jìn)行操作的,又稱為“方法”。實(shí)現(xiàn)部分是用來對(duì)成員函數(shù)的定義。概括說來,說明部分將告訴使用者“干什么”,而實(shí)現(xiàn)部分是告訴使用者“怎么干”。
2)類是對(duì)一群有共同特征的事物或事件的集合。而類對(duì)象就是類的實(shí)例化。一個(gè)類的所有對(duì)象對(duì)應(yīng)同一個(gè)類對(duì)象。如現(xiàn)實(shí)世界中的動(dòng)物是一種類,植物也是一種類,可以理解人就是動(dòng)物類的一種對(duì)象,草是植物類的一種對(duì)象。類對(duì)象的生成過程,包括對(duì)象的聲明、實(shí)例化和初始化。實(shí)例化一個(gè)對(duì)象就是通過new運(yùn)算符為對(duì)象分配空間(類屬于復(fù)合數(shù)據(jù)類型,在聲明對(duì)象時(shí),系統(tǒng)并沒有為對(duì)象分配空間,用戶需要應(yīng)用new完成分配空間的任務(wù))。既可以在聲明對(duì)象時(shí)實(shí)例化(創(chuàng)建)對(duì)象,也可以先聲明對(duì)象,然后再創(chuàng)建。
2 軟部件
1) 概念或功能相對(duì)獨(dú)立的一個(gè)或一組相關(guān)模塊定義為一個(gè)軟部件。可重用的軟部件有的可以不加修改直接使用,有的需要修改后再用。可重用軟部件應(yīng)具有清晰的結(jié)構(gòu)和注解,應(yīng)具有正確的編碼和較低的時(shí)/空開銷。各種可重用軟部件還可以按照某種規(guī)則存放在軟部件庫中,供軟件工程師選用。
2)計(jì)算機(jī)軟件部件CSU(Computer SoftwareComponent)是計(jì)算機(jī)軟件單元(Computer SoftwareUnit)。例如,操作系統(tǒng)是一種控制計(jì)算機(jī)不同部件運(yùn)行的軟件。
3 軟構(gòu)件
1) 構(gòu)件(component)是可復(fù)用的軟件組成成份,可被用來構(gòu)造其他軟件。構(gòu)件具有相對(duì)獨(dú)立的功能和可復(fù)用價(jià)值。它可以是被封裝的對(duì)象類、類樹、一些功能模塊、軟件框架 (framwork)、軟件構(gòu)架(或體系結(jié)構(gòu)Architectural)、文檔、分析文件、設(shè)計(jì)模式 (Pattern)等。構(gòu)件分為構(gòu)件類和構(gòu)件實(shí)例,通過給出構(gòu)件類的參數(shù),生成實(shí)例,通過實(shí)例的組裝和控制來構(gòu)造相應(yīng)的應(yīng)用軟件。
2)軟件成分包括程序代碼、測(cè)試用例、設(shè)計(jì)文檔、設(shè)計(jì)過程、需求分析文檔、軟件構(gòu)件的可信×××、甚至領(lǐng)域知識(shí),通常把這種可復(fù)用的軟件成分稱為軟件構(gòu)件,簡(jiǎn)稱軟構(gòu)件或者構(gòu)件。
3)將現(xiàn)有系統(tǒng)模塊封裝起來,等到有新的類似需求時(shí)可以不必重復(fù)開發(fā),可以把事先封裝好的系統(tǒng)模塊直接組裝進(jìn)去,這樣封裝的、易于復(fù)用的軟件稱為構(gòu)件。要達(dá)到這一目的就必須進(jìn)行域分析,以確定軟件的體系結(jié)構(gòu)、框架和構(gòu)件,從而快速實(shí)例化出一系列適應(yīng)性很強(qiáng)的軟件產(chǎn)品族(Product Family),在特定領(lǐng)域進(jìn)行軟件復(fù)用相對(duì)容易取得成功。這是由特定領(lǐng)域本身的相對(duì)內(nèi)聚性和穩(wěn)定性所決定的。內(nèi)聚性保證了領(lǐng)域有足夠的共性,可以通過分析、抽象這種共性;穩(wěn)定性保證了領(lǐng)城工程的投資可以獲得足夠的回報(bào)。領(lǐng)城工程就是創(chuàng)建可復(fù)用構(gòu)件的活動(dòng),并在領(lǐng)城中尋求共性和變化性,然后將其表示出來,在設(shè)計(jì)和實(shí)現(xiàn)構(gòu)件時(shí)加以利用,來支持新應(yīng)用系統(tǒng)的建立。
這一定義的典型例如青鳥工程,青鳥領(lǐng)域工程方法是在青鳥工程的研究和開發(fā)工作的基礎(chǔ)上,吸收當(dāng)前領(lǐng)域工程的研究和實(shí)踐活動(dòng)中的一些成果而形成的。它是一種面向?qū)ο蟮念I(lǐng)城工程方法,描述了領(lǐng)域工程中各個(gè)階段的活動(dòng)和產(chǎn)品,并給出了相應(yīng)的指南,其中強(qiáng)調(diào)了對(duì)領(lǐng)域范圍的確定、結(jié)合設(shè)計(jì)模式進(jìn)行領(lǐng)城設(shè)計(jì)、組織特定領(lǐng)域的可復(fù)用構(gòu)件庫等方面的問題。
青鳥領(lǐng)域工程分為三個(gè)主要的階段。即領(lǐng)域分析、領(lǐng)域設(shè)計(jì)和領(lǐng)城實(shí)現(xiàn)。領(lǐng)域分析的主要產(chǎn)品是領(lǐng)域分析模型,它包括領(lǐng)城豁求定義、領(lǐng)城面向?qū)ο蠓治銎逍?領(lǐng)城OOA模型)、領(lǐng)城術(shù)語字典三個(gè)部分。領(lǐng)域設(shè)計(jì)的主要產(chǎn)品是特定領(lǐng)域的軟件體系結(jié)構(gòu)(DSSA), DSSA表示為面向?qū)ο笤O(shè)計(jì)棋型(OOD模型)。領(lǐng)域?qū)崿F(xiàn)的主要產(chǎn)品是特定于領(lǐng)城的可復(fù)用構(gòu)件庫。在各個(gè)階段的產(chǎn)品之間存在可追蹤性。
4)其他定義
(1)1996年ECOOP(European Conference on object--Oriented Programming) 將軟件構(gòu)件定義為:一個(gè)具有規(guī)范接口和確定的上下文依賴的組裝單元,它能夠被獨(dú)立部署或被第三方組裝。
(2)美國(guó)卡內(nèi)基。梅隆大學(xué)的軟件工程研究所的構(gòu)件定義:“構(gòu)件是一個(gè)不透明的功能實(shí)體,能夠被第三方組織,且符合一個(gè)構(gòu)件模型”。
(3)Szyperski將構(gòu)件定義為:可單獨(dú)生產(chǎn)、獲取、部署的二進(jìn)制單元,它們之間可以相互作用構(gòu)成一個(gè)功能系統(tǒng)。
(4)CMU/SEI把構(gòu)件定義為:一個(gè)不透明的功能實(shí)現(xiàn);能夠被第三方組裝;還符合一個(gè)構(gòu)件模型。
(5)從編寫程序代碼這個(gè)狹義的角度來描述一個(gè)構(gòu)件:構(gòu)件是一些二進(jìn)制代碼,它隱藏了內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)。它們是二進(jìn)制代碼的形式,但都符合一種模型--構(gòu)件模型,且具有可插拔性。
(6)從使用側(cè)面給出定義:一個(gè)軟件構(gòu)件是可執(zhí)行軟件的一個(gè)可分離的單元;只能通過構(gòu)件的接口來訪問它的服務(wù);可以與其他構(gòu)件實(shí)現(xiàn)互操作;為了能與其他構(gòu)件一同工作,必須能得到其接口的細(xì)節(jié);該構(gòu)件的應(yīng)用需要某種環(huán)境的支持。
(7)構(gòu)件是為了復(fù)用目的而針對(duì)性開發(fā)的軟件實(shí)體,是一個(gè)獨(dú)立發(fā)布的功能部分,可以通過它的接口訪問它的服務(wù)。它體現(xiàn)了包裝、服務(wù)、完整性等觀點(diǎn)。利用軟構(gòu)件技術(shù)開發(fā)應(yīng)用系統(tǒng),一般是先構(gòu)筑系統(tǒng)的總體框架,然后構(gòu)造各個(gè)構(gòu)件,并依次把構(gòu)件安裝到系統(tǒng)中去。大部分應(yīng)用系統(tǒng),在功能上有類似之處,因而利用軟件的復(fù)用技術(shù)就可以把開發(fā)過程大大簡(jiǎn)化。在開發(fā)之初就應(yīng)該準(zhǔn)備軟件構(gòu)件類集合,如可以搜集一些已經(jīng)開發(fā)出的應(yīng)用系統(tǒng)的總體設(shè)計(jì)、規(guī)范、局部流程以及某些人機(jī)界面、通用功能模塊、簡(jiǎn)化開發(fā)工具。采用構(gòu)件軟件不需要重新編譯,也不需要源代碼并且不局限于某一種編程語言。該過程叫做二進(jìn)制復(fù)用(Binary Reuse),因?yàn)樗墙⒃诮涌诙皇窃创a級(jí)別的復(fù)用之上的。雖然軟件構(gòu)件必須遵守一致的接口,但是它們的內(nèi)部實(shí)現(xiàn)是完全自動(dòng)的。因此,可以用過程語言和面向?qū)ο笳Z言創(chuàng)建構(gòu)件。
由于構(gòu)件技術(shù)是由基于面向?qū)ο蠹夹g(shù)而發(fā)展起來的,與面向?qū)ο蟮脑O(shè)計(jì)中的對(duì)象相類似,它們都是針對(duì)軟件復(fù)用,都是被封裝的代碼,但它們之間仍存在很大差異。在純面向?qū)ο蟮脑O(shè)計(jì)中,對(duì)象(類)、封裝和繼承三者缺一不可,但對(duì)構(gòu)件可以沒有繼承性,只要實(shí)現(xiàn)封裝即可;從構(gòu)件和對(duì)象的生成方式上,對(duì)象生成屬于實(shí)例化的過程,比較單一,而生成構(gòu)件的方式較多;構(gòu)件是設(shè)計(jì)的概念,與具體編程語言無關(guān),不像對(duì)象屬于編程中的概念,要依賴于具體的編程語言;在對(duì)構(gòu)件操作時(shí)不允許直接操作構(gòu)件中的數(shù)據(jù),數(shù)據(jù)真正被封裝了。而對(duì)象的操作通過公共接口部分,這樣數(shù)據(jù)是可能被訪問操作的;對(duì)象對(duì)軟件復(fù)用是通過繼承實(shí)現(xiàn)的,構(gòu)件對(duì)軟件復(fù)用不僅可以通過繼承還可以通過組裝時(shí)的引用來實(shí)現(xiàn)。因此,構(gòu)件不是對(duì)象,只是與對(duì)象類似。
4、組件
1)組件就是對(duì)象。C++ Builder中叫組件,Delphi中叫部件,而在Visual BASIC中叫控件。組件是對(duì)數(shù)據(jù)和方法的簡(jiǎn)單封裝。C++Builder中,一個(gè)組件就是一個(gè)從TComponent派生出來的特定對(duì)象。組件可以有自己的屬性和方法。屬性是組件數(shù)據(jù)的簡(jiǎn)單訪問者。方法則是組件的一些簡(jiǎn)單而可見的功能。
對(duì)象管理小組(ObjectManagementGroup,OMG)的“建模語言規(guī)范”中將組件定義為:“系統(tǒng)中一種物理的、可代替的部件、它封裝了實(shí)現(xiàn)并提供了一系列可用的接口。一個(gè)組件代表一個(gè)系統(tǒng)中實(shí)現(xiàn)的物理部分,包括軟件代碼(源代碼,二進(jìn)制代碼,可執(zhí)行代碼)或者一些類似內(nèi)容,如腳本或者命令文件。”
自己開發(fā)的組件通常有三種類型:復(fù)合組件(CompositeControls),擴(kuò)展組件(Extended Controls),自定義組件(Custom Controls)。
復(fù)合組件:將現(xiàn)有的各種組件組合起來,形成一個(gè)新的組件,將集中組件的性能集中起來。
擴(kuò)展組件:在現(xiàn)有組件的組件的基礎(chǔ)上派生出一個(gè)新的組件,為原有組件增加新的性能或者更改原有組件的控能。
自定義組件:直接從System.作windows.Forms.Control類派生出來。Control類提供組件所需要的所有入門性能,包括鍵盤和鼠標(biāo)的事件處理。
組件與構(gòu)件之間有細(xì)致的區(qū)別。組件是封裝粒度小的構(gòu)件。C++ Builder中叫組件,Delphi中叫部件,而在Visual BASIC中叫控件。組件是對(duì)數(shù)據(jù)和方法的簡(jiǎn)單封裝。C++ Builder中,一個(gè)組件就是一個(gè)從TComponent派生出來的特定對(duì)象。組件可以有自己的屬性和方法。屬性是組件數(shù)據(jù)的簡(jiǎn)單訪問者。方法則是組件的一些簡(jiǎn)單而可見的功能。使用組件可以實(shí)現(xiàn)拖放式編程、快速的屬性處理以及真正的面向?qū)ο蟮脑O(shè)計(jì)。VCL和CLX組件是C++Builder系統(tǒng)的核心。
2)來自卡耐基梅隆大學(xué)的定義:組件是一個(gè)不透明的功能實(shí)體,能夠被第三方組裝,且符合一個(gè)構(gòu)件模型。
3)計(jì)算機(jī)百科全書:組件是軟件系統(tǒng)中具有相對(duì)獨(dú)立功能、接口由契約指定、和語境有明顯依賴關(guān)系、可獨(dú)立部署、可組裝的軟件實(shí)體。
4)軟件構(gòu)件著作中定義組件是一個(gè)組裝單元,它具有約定式規(guī)范的接口,以及明確的依賴環(huán)境。構(gòu)建可以被獨(dú)立的部署,由第三方組裝。它是對(duì)邏輯的封裝,不限于圖形元素。即我們可以把if做成組件、把一個(gè)倒計(jì)時(shí)做成組件、把一段動(dòng)畫做成組件、把路由做成組件、把數(shù)據(jù)架構(gòu)做成組件,而這些并不能稱為控件。
組件具備單個(gè)可移植性,即“隨加載隨用”,不需要為其準(zhǔn)備復(fù)雜的基礎(chǔ)條件(如引入樣式、引入框架等)。然而這一點(diǎn)現(xiàn)有那些所謂組件庫做得并不好,技術(shù)上也不大現(xiàn)實(shí)
組件是聲明式定義的,而非命令式。
組件與傳統(tǒng)開發(fā)框架的大區(qū)別就是統(tǒng)一了圖形元素與非圖形元素。在這個(gè)概念下,包括router、ajax、module loader、timer、animation、interval等都是組件,共享統(tǒng)一的生命周期管理和對(duì)外接口,且都是聲明式地進(jìn)行組合。
5)軟件組件開發(fā)主要是開發(fā)與維護(hù)系統(tǒng)構(gòu)造過程中用到的組件。將軟件組件作為一個(gè)單獨(dú)的過程,目的是將組件作為構(gòu)造軟件的“零部件”。隨著軟件技術(shù)的不斷發(fā)展及軟件工程的不斷完善,軟件組件將會(huì)作為一種獨(dú)立的軟件產(chǎn)品出現(xiàn)在市場(chǎng)上,供應(yīng)用開發(fā)人員在構(gòu)造應(yīng)用系統(tǒng)時(shí)選用。
6)從軟件模型的角度考慮,
人們希望把龐大的應(yīng)用程序分割成為多個(gè)模塊,每個(gè)模塊完成獨(dú)立的功能,模塊之間協(xié)同工作。這樣的模塊我們稱為組件。這些組件可以進(jìn)行單獨(dú)開發(fā)、單獨(dú)編譯、單獨(dú)測(cè)試;把所有的組件組合在一起得到了完整的系統(tǒng)。許多人都認(rèn)為,未來的應(yīng)用程序都將利用組件實(shí)現(xiàn)。一個(gè)組件可以實(shí)現(xiàn)多個(gè)組件接口,而一個(gè)特定的組件接口也可以被多個(gè)組件來實(shí)現(xiàn)。 組件接口必須是能夠自我描述的。這意味著組件接口應(yīng)該不依賴于具體的實(shí)現(xiàn)
從以上分析可以看出,以上定義十分繁雜,彼此存在交叉或矛盾,定義不夠清晰,對(duì)于學(xué)習(xí)與使用不利。
二、中文字義
從1989辭海縮印本可以查到關(guān)于某些詞的和上面某些定義有關(guān)的解釋。
1、類:把相類的事物概括為一類。
2、對(duì)象:觀察或思考的客體,也指行動(dòng)的目標(biāo)。
3、函數(shù):簡(jiǎn)述如下:當(dāng)自變量改變時(shí)函數(shù)有確定的值與之對(duì)應(yīng)。
4、構(gòu)件:1)機(jī)構(gòu)的組成單元,如滑塊機(jī)構(gòu)中的曲柄、連桿、滑塊和機(jī)架。構(gòu)件是研究機(jī)械運(yùn)動(dòng)時(shí)經(jīng)過抽象和概括而形成的概念,它是一個(gè)和其相鄰構(gòu)件有相對(duì)運(yùn)動(dòng)的剛體。2)結(jié)構(gòu)物的組成單元。如梁、柱、板、大型板材等。
5、部件:機(jī)器中的一個(gè)組成部分,由若干零件裝配而成。
6、組:結(jié)合、構(gòu)成。
組裝:把零件組合起來構(gòu)成部件,或把部件與零件組合起來構(gòu)成器誡或裝置。
在2002現(xiàn)代漢語詞典中解釋構(gòu)件1)是組成機(jī)構(gòu)的單元,可以是一個(gè)零件,也可以是許多零件構(gòu)成的剛體。2)是組成建筑物某一結(jié)構(gòu)的單元,例如梁、柱。
從這些名詞的中文解釋可見,組件是一個(gè)大的籠統(tǒng)的概念,可以是零件的組合、可以是構(gòu)件的組合、也可以是部件的組合,涵蓋構(gòu)件與部件;構(gòu)件也是較為籠統(tǒng)的概念,可以是零件、可以是多個(gè)零件、可以是零件與部件的組合,涵蓋部件的概念;而部件是比較明確的概念,就是零件組合而成的機(jī)器的組成部分。
為適應(yīng)軟件生產(chǎn)工業(yè)化等應(yīng)用的需要,為方便學(xué)習(xí)與討論,建議站在程序員角度對(duì)這些名詞進(jìn)行統(tǒng)一的定義,要求盡量一詞一意,在借用中文詞匯時(shí),不妨作適當(dāng)限定,形成軟件復(fù)用領(lǐng)域的專用詞匯。
三、站在程序員角度進(jìn)行定義。
1、語句
語句是組成具有一定功能的程序的基本單位,其主要內(nèi)容由某具體語言的指令和操作數(shù)構(gòu)成,指令說明做什么,操作數(shù)說明怎樣做并向操作提供所需要的信息。
2、子程序
子程序是能被其他程序調(diào)用,在實(shí)現(xiàn)某種功能后能自動(dòng)返回到調(diào)用程序去的程序。它由多條語句構(gòu)成,按固定的格式寫成,可在主程序中用指令調(diào)用執(zhí)行,執(zhí)行時(shí)程序指針轉(zhuǎn)移到子程序執(zhí)行,其最后一條指令一定是返回指令,使能保證重新返回到調(diào)用它的程序中去。可約定若干變量傳遞參數(shù),當(dāng)參數(shù)不同時(shí),子程序的功能及運(yùn)行結(jié)果可不相同。
可以建立子程序庫,存放多個(gè)子程序,應(yīng)用時(shí)在不同程序中打開子程序庫,應(yīng)用轉(zhuǎn)子語句及子程序名可調(diào)用子程序,重復(fù)執(zhí)行其中語句。
3、函數(shù)
函數(shù)是允許設(shè)置固定的參數(shù)的子程序,其格式包括函數(shù)頭與括號(hào)括起的參數(shù)描述。在定義時(shí)的參數(shù)稱為形式參數(shù),調(diào)用時(shí)直接用函數(shù)名調(diào)用,并給出具體參數(shù)值,稱為實(shí)際參數(shù)。當(dāng)實(shí)際參數(shù)不同時(shí),函數(shù)的功能及運(yùn)行結(jié)果可不相同。
可以建立函數(shù)庫,在不同程序中打開函數(shù)庫,應(yīng)用函數(shù)名調(diào)用并執(zhí)行函數(shù)程序,重復(fù)執(zhí)行其中語句。
4、宏
宏是能被其他程序調(diào)用的程序,由多條語句按固定的格式寫成,在主程序中調(diào)用時(shí)宏名相當(dāng)于指令,在預(yù)編譯時(shí)根據(jù)預(yù)定義的規(guī)則將宏中的語句等內(nèi)容轉(zhuǎn)換成對(duì)應(yīng)的內(nèi)容嵌入到主程序調(diào)用處,之后在執(zhí)行程序時(shí)可以復(fù)用宏中的內(nèi)容。在宏定義時(shí)可以按格式定義形式參數(shù),在調(diào)用時(shí)以實(shí)際參數(shù)替代形式參變量,使每次執(zhí)行的功能、結(jié)果不同。
5、方法
類似于子程序,在“類”中定義,調(diào)用時(shí)用類名或?qū)ο竺狱c(diǎn)加方法名調(diào)用。方法可以有自己的參數(shù),可以沒有。如果方法有自己的參數(shù)(變量),在調(diào)用時(shí)系統(tǒng)會(huì)分配一定的空間給予這些變量,并帶入實(shí)際參數(shù)值,此時(shí)的表現(xiàn)與格式與函數(shù)相似。
6、類
類是可被復(fù)用的程序,由一到多個(gè)方法組合而成,在每個(gè)類中可以定義多個(gè)變量,在運(yùn)行時(shí)會(huì)被分配一定的空間。類被集中到類庫中保存,在應(yīng)用時(shí)只要打開類庫就可復(fù)用類的方法與變量,在JAVA語言環(huán)境下,類以CLASS文件形式保存,類庫實(shí)際上是文件夾。
在程序中可以復(fù)用類中的方法與變量,復(fù)用時(shí)采用的一種方法是以類名加方法名調(diào)用類的方法,類似于子程序執(zhí)行過程,其中變量按某約定范圍使用。另一種方法是復(fù)制類的定義在內(nèi)存中,用另外的名字命名,稱為對(duì)象,同時(shí)為變量另外分配空間。可以用對(duì)象名加點(diǎn)加方法名或?qū)ο竺狱c(diǎn)加變量名進(jìn)行訪問,實(shí)現(xiàn)復(fù)用,運(yùn)行結(jié)束時(shí)釋放在內(nèi)存中所占用的空間。
可以在程序中對(duì)類局部進(jìn)行修改后形成一個(gè)子類,所依據(jù)的類稱為父類。在程序中可以訪問新定義的方法與變量,也可訪問未被修改的父類中的方法與變量,稱為繼承。(采用某種方法也能訪問在子類中被修改了的原來的父類中的方法與變量。)
7、控件
是一種包括界面設(shè)計(jì)與實(shí)現(xiàn)的特殊的類,是對(duì)數(shù)據(jù)和方法的封裝,提供了一系列可用的接口。它可以有自己的屬性和方法。屬性是控件數(shù)據(jù)的簡(jiǎn)單訪問者,方法則是控件的一些簡(jiǎn)單而可見的功能。
8、軟部件
軟部件將一到多個(gè)類及若干語句組合為可執(zhí)行程序文件,可被應(yīng)用系統(tǒng)控制器直接調(diào)用,成為應(yīng)用系統(tǒng)組成部分。在編譯時(shí)部件的全部?jī)?nèi)容被編譯到系統(tǒng)中。在調(diào)用時(shí)可以定義不同的參數(shù),在編譯時(shí)根據(jù)參數(shù)內(nèi)容選用其中不同的功能并表現(xiàn)出不同的性能,使得同一軟部件在使用不同參數(shù)被調(diào)用時(shí)有不同的程序表現(xiàn)。在執(zhí)行時(shí)常被分配一個(gè)進(jìn)程,安排一定空間。
通用軟部件可簡(jiǎn)稱為軟部件,是實(shí)現(xiàn)軟件生產(chǎn)工業(yè)化、建立軟件生產(chǎn)線的基本單位。采用從上而下方式設(shè)計(jì),首先對(duì)所知的一切實(shí)際應(yīng)用系統(tǒng)進(jìn)行需求分析,設(shè)計(jì)不同的但數(shù)量有限的軟部件程序覆蓋全部應(yīng)用。每個(gè)部件程序集成多個(gè)功能與多種性能,相當(dāng)于多道程序,可以通過實(shí)際參數(shù)值使被編譯時(shí)實(shí)現(xiàn)不同功能、表現(xiàn)不同性能。
軟部件可存放到部件庫中,部件庫實(shí)際上只是一個(gè)文件夾,在其中存放了多個(gè)部件程序文檔。
應(yīng)用軟部件技術(shù)開發(fā)應(yīng)用系統(tǒng),可先將部件庫中所需要的軟部件文件拷貝到系統(tǒng)文件夾中,設(shè)計(jì)并建立數(shù)據(jù)模型,選擇不同部件,設(shè)置必要的參數(shù),構(gòu)筑系統(tǒng)的控制器,就能全自動(dòng)地建立應(yīng)用系統(tǒng)。
可以對(duì)軟部件文件進(jìn)行修改,修改后成為完全獨(dú)立的部件文檔,存放到部件庫中,與原部件文件不存在邏輯、繼承關(guān)系,可以與原部件并行地被使用。
9、軟構(gòu)件
軟構(gòu)件將一到多個(gè)類及若干語句組合封裝為軟件實(shí)體,是一個(gè)獨(dú)立發(fā)布的功能部分,可以通過它的接口訪問它的服務(wù)。它體現(xiàn)了包裝、服務(wù)、完整性等觀點(diǎn)。利用軟構(gòu)件技術(shù)開發(fā)應(yīng)用系統(tǒng),一般是先構(gòu)筑系統(tǒng)的總體框架,然后構(gòu)造各個(gè)構(gòu)件,并依次把構(gòu)件安裝到系統(tǒng)中去, 通過組裝時(shí)的引用實(shí)現(xiàn)復(fù)用。
可將領(lǐng)域構(gòu)件稱為軟構(gòu)件。領(lǐng)域構(gòu)件采用自下而上方式設(shè)計(jì),首先對(duì)某一領(lǐng)域進(jìn)行分析,歸納與綜合該域中一到多個(gè)應(yīng)用程序設(shè)計(jì)為一個(gè)軟構(gòu)件。
10、組件
組件是不被稱為軟構(gòu)件和軟部件的將一到多個(gè)類及若干語句組合封裝而成的軟件實(shí)體。
四、結(jié)束語
以上定義是我們的初步設(shè)想,希望廣泛接受批評(píng)意見并修改后能得到大家認(rèn)可,并形成最終定義。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
新聞標(biāo)題:關(guān)于軟件復(fù)用領(lǐng)域中一些詞的定義-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://www.chinadenli.net/article16/dcscgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、響應(yīng)式網(wǎng)站、企業(yè)網(wǎng)站制作、網(wǎng)站改版、企業(yè)建站、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容