資陽(yáng)住房和城鄉(xiāng)建設(shè)廳網(wǎng)站煙臺(tái)網(wǎng)站建設(shè)
所屬章節(jié):
第2章. 計(jì)算機(jī)系統(tǒng)基礎(chǔ)知識(shí)
? ? ? ? 第3節(jié). 計(jì)算機(jī)軟件
? ? ? ? ? ? ? ? 2.3.7 軟件構(gòu)件
1. 概述
構(gòu)件又稱為組件,是一個(gè)自包容、可復(fù)用的程序集。構(gòu)建是一個(gè)程序集、或者說(shuō)是一組程序的集合。這個(gè)集合可能會(huì)以各種方式體現(xiàn)出來(lái),如源程序或二進(jìn)制代碼。這個(gè)集合整體向外提供統(tǒng)一的訪問(wèn)接口,構(gòu)件外部只能通過(guò)接口來(lái)訪問(wèn),而不能直接操作構(gòu)建的內(nèi)部。構(gòu)件的兩個(gè)最重要的特性是自包容與可重用。
2. 軟件構(gòu)件的組裝模型
隨著軟件構(gòu)件技術(shù)的發(fā)展,人們開(kāi)始嘗試?yán)密浖?gòu)件進(jìn)行搭積木式的開(kāi)發(fā),即構(gòu)件組裝模型。在構(gòu)件組裝模型中,當(dāng)經(jīng)過(guò)需求分析定義出軟件功能后,將對(duì)構(gòu)件的組裝結(jié)構(gòu)進(jìn)行設(shè)計(jì),將系統(tǒng)劃分成一組構(gòu)件的集合,明確構(gòu)件之間的關(guān)系。在確定了系統(tǒng)構(gòu)件后,則將獨(dú)立完成每一個(gè)構(gòu)件,這時(shí)既可以開(kāi)發(fā)軟件構(gòu)件,也可以重用已有的構(gòu)件,當(dāng)然也可以購(gòu)買或選用第三方的構(gòu)件。構(gòu)件是獨(dú)立的、自包容的,因此架構(gòu)的開(kāi)發(fā)也是獨(dú)立的,構(gòu)件之間通過(guò)接口相互協(xié)作。
構(gòu)件組裝模型的一般開(kāi)發(fā)過(guò)程分為以下4步:
(1)設(shè)計(jì)構(gòu)件組裝;
(2)建立構(gòu)件庫(kù);
(3)構(gòu)建應(yīng)用軟件;
(4)測(cè)試與發(fā)布。
構(gòu)件組裝模型的優(yōu)點(diǎn)如下:
(1)構(gòu)件的自包容性讓系統(tǒng)的擴(kuò)展變得更加容易;
(2)設(shè)計(jì)良好的構(gòu)件更容易被重用,降低軟件開(kāi)發(fā)成本;
(3)構(gòu)件的粒度較整個(gè)系統(tǒng)更小,因此安排開(kāi)發(fā)任務(wù)更加靈活,可以將開(kāi)發(fā)團(tuán)隊(duì)分成若干組,并行地獨(dú)立開(kāi)發(fā)構(gòu)件。
構(gòu)件組裝模型也有明顯的缺點(diǎn):
(1)對(duì)構(gòu)件的設(shè)計(jì)需要經(jīng)驗(yàn)豐富的架構(gòu)設(shè)計(jì)師,設(shè)計(jì)不良的構(gòu)件難以實(shí)現(xiàn)構(gòu)件的優(yōu)點(diǎn),降低構(gòu)件組裝模型的重用度;
(2)在考慮軟件的重用度時(shí),往往會(huì)對(duì)其它方面做出讓步,如性能等;
(3)使用構(gòu)件組裝應(yīng)用程序時(shí),要求程序員能熟練地續(xù)航我構(gòu)件,增加了研發(fā)人員的學(xué)習(xí)成本;
(4)第三方構(gòu)件庫(kù)的質(zhì)量會(huì)最終影響到軟件的質(zhì)量,而第三方構(gòu)件庫(kù)的質(zhì)量往往是開(kāi)發(fā)團(tuán)隊(duì)難以控制的。