黃雅瓊 江西旅游商貿(mào)職業(yè)學院
所謂構(gòu)件是組成軟件系統(tǒng),并能實現(xiàn)特定功能的模塊,它可以重復使用無需二次開發(fā),也可以與其他軟件構(gòu)成新的軟件。1995年Ian.oraham提出的構(gòu)件定義如下:構(gòu)件代表軟件系統(tǒng)中的部分物理設施,包含軟件代碼(可執(zhí)行代碼,源代碼,二進制代碼等),用于與軟件銜接的接口規(guī)范或代碼。構(gòu)件的表現(xiàn)形式是一種程序代碼包組成,其設計的邏輯性十分緊密,并具有規(guī)范的接口。如Ada的Package、Smalltalk-80和C++的class和數(shù)據(jù)類型都可歸類于構(gòu)件范疇。盡管其函數(shù),代碼可重復使用,但是卻不能成為一個構(gòu)件。構(gòu)件技術(shù)是軟件是否可以重復使用開發(fā)的關(guān)鍵,也是軟件開發(fā)中的重要研究對象。
構(gòu)件技術(shù)是將一些可以重復使用的軟件構(gòu)件結(jié)合到一起組成一個新的軟件系統(tǒng)的計算機軟件技術(shù)。通過構(gòu)件技術(shù)的運用,相關(guān)的軟件開發(fā)人員可以對軟件進行有效的復用,減少不必要的重復開發(fā),不但將軟件開發(fā)時間大大的縮減了,還降低了軟件開發(fā)的投入成本。1968年Mcllroy在《大量生產(chǎn)的軟件構(gòu)件》的論文中,提出“軟件組裝生產(chǎn)線”的思想。并以“搭積木”的方式開始生產(chǎn)軟件。通過分析傳統(tǒng)工業(yè)的生產(chǎn)模式,可以發(fā)現(xiàn)這些發(fā)展模式都是以標準零部件(構(gòu)件)基于一定的標準生產(chǎn)組裝出來的。(Software Reuse)軟件復用通常指軟件自身可以重復使用,開發(fā)代碼、函數(shù)可以重復使用。構(gòu)件的組裝是軟件實現(xiàn)工業(yè)化發(fā)展的必經(jīng)之路。通過對構(gòu)件的開發(fā),長期積累的可復用的構(gòu)件組成構(gòu)件庫,以構(gòu)件組裝的形式快速而有效的構(gòu)建軟件系統(tǒng),實現(xiàn)“搭積木”的方式生產(chǎn),使軟件系統(tǒng)具有了‘彈性’,可重復使用性。
當前的應用系統(tǒng)已發(fā)展成可在內(nèi)聯(lián)網(wǎng)和互聯(lián)網(wǎng)上的客戶端能利用遠程訪問的分布式系統(tǒng)與多層次異構(gòu)系統(tǒng)。構(gòu)件的軟件開發(fā)技術(shù)就是將一個軟件分成若干部分,分別開發(fā),并將開發(fā)的各個模塊組裝到一起的開發(fā)模式。這是一種利用構(gòu)件生產(chǎn)軟件的全新結(jié)構(gòu)模式。讓軟件系統(tǒng)分為獨立的多個部分,利用增量的方式開發(fā)軟件。此種體系結(jié)構(gòu)讓構(gòu)件技術(shù)實現(xiàn)了以下目標:可以利用第三方提供的、內(nèi)部開發(fā)的又或者是市場上購買的現(xiàn)成構(gòu)件,對應用軟件系統(tǒng)進行集成與定制。系統(tǒng)都應當具備靈活簡便的升級能力與系統(tǒng)模塊的維護更新能力。由此可見,構(gòu)件技術(shù)從根本上解決了軟件系統(tǒng)的復用性和異構(gòu)性。
自從構(gòu)件技術(shù)面世,軟件的發(fā)展進程得到了翻天覆地的變化。構(gòu)件技術(shù)將分析與設計等高層次上的重用給予了實現(xiàn)。從軟件開發(fā)方法本身來說,構(gòu)件技術(shù)將軟件的開發(fā)從原來的應用系統(tǒng)開發(fā)漸漸的轉(zhuǎn)變成如今的集成式應用系統(tǒng)。創(chuàng)建一個系統(tǒng)往往需要重復使用很多已有的構(gòu)件,這些被重復使用的構(gòu)建可能是之前的人員在不同的系統(tǒng)下開發(fā)的各種用途的構(gòu)件。在此情況下,此應用系統(tǒng)的開發(fā)過程就是對已有構(gòu)件進行探索性的結(jié)合。總體來說,以前的軟件開發(fā)過程就是串行的,一步步遞增的,一點點向上的;構(gòu)件軟件技術(shù)就是并行的,最終匯聚到一起完善的過程,并實現(xiàn)構(gòu)件可復用。
縱觀當前構(gòu)件技術(shù)的發(fā)展,終于覓得了解決此難題的突破口,將現(xiàn)實與應用業(yè)務實現(xiàn)了分離,實質(zhì)就是將數(shù)據(jù)與邏輯實現(xiàn)了分離,提供接口或連接件建立關(guān)聯(lián)的協(xié)調(diào)行為,讓軟件開發(fā)方法變成構(gòu)件集成的方法。所以,軟件方法學的中心應為建立關(guān)聯(lián)的方法,面向協(xié)調(diào)行為的設計。總結(jié)起來,構(gòu)件的軟件開發(fā)方法學包含以下幾方面:對構(gòu)件有明確的定義,關(guān)于構(gòu)件的定義需要對構(gòu)件技術(shù)進行標準的描述與規(guī)范。在開發(fā)應用軟件系統(tǒng)時應先按照構(gòu)件的情況對需要開發(fā)的軟件系統(tǒng)進行相應的分割,包括分配不同的開發(fā)人員。還需要伴隨有能夠?qū)ζ錁?gòu)件進行檢驗并生成文檔的軟件工具,保證構(gòu)件的完整性、規(guī)范性、邏輯性和使用性。總而言之,傳統(tǒng)的軟件方法學就是在設計上或者草稿上從上往下一步步進行,為重復使用提供更多實際性的輔助。然而構(gòu)件技術(shù)的軟件方法學則有很多的方法非常豐富,能夠隨插隨用,基于軟件系統(tǒng)的體系結(jié)構(gòu),以相關(guān)聯(lián)的接口為核心,將不同的構(gòu)件集成到一起,進行充分的結(jié)合起來進行軟件開發(fā)。
第一,是以項目為基礎,基于構(gòu)件的軟件方法,這種方法確保構(gòu)件的開發(fā)具有固定的資金,并把構(gòu)件庫存在的風險有效分散,促使每個構(gòu)件組成部分沒有絕對的風險,因此項目能在短時間內(nèi)獲得成效。然而此方法的缺點就是無法進行正式的復用,并且沒有足夠標準的過程,進而極易影響項目工程的后期。
第二,開發(fā)的代價小是基于COTS構(gòu)件的軟件開發(fā)的顯著優(yōu)點,不但投資少,而且質(zhì)量也能得到應有保證,能對市場的更新變化給予實時應對,可是缺少較為成熟的構(gòu)件市場是它的缺點,因其實用性不強,風險較大,進而致使此方法不利于演化,造成一定的缺憾。
第三,關(guān)于產(chǎn)品線工程的開發(fā),此方法具有比較完整的體系,同時具有相對較高的復用率,讓產(chǎn)品的質(zhì)量得到應有的保證,以及能在完成產(chǎn)品后將成本快速的降低。可是此方法存在的問題是需要一支專業(yè)、強而有力的軟件工程隊伍監(jiān)工工程全程,還需要軟件開發(fā)人員具備過硬的專業(yè)技術(shù)手段。此外因為核心資產(chǎn)開發(fā)技術(shù)難度系數(shù)較大,致使新產(chǎn)品的研發(fā)與實時更新都有一定程度的難度,而且必須有長期的資金供應。
綜上可知,伴隨軟件開發(fā)工程的興起與發(fā)展,先進完善的軟件開發(fā)技術(shù)的需求日益增加,但是傳統(tǒng)方式的軟件開發(fā)技術(shù)與社會的發(fā)展步伐產(chǎn)生脫節(jié)現(xiàn)象,無法滿足當前社會發(fā)展的需求,所以基于構(gòu)件的軟件開發(fā)便應運而生。對于嶄新的構(gòu)件技術(shù)應用于軟件開發(fā)中必須按照實際項目工程開發(fā)的具體情況與原有的現(xiàn)實條件給予科學合理的分析探究,選用最合適的開發(fā)方法對工程項目實行處理,進而推進項目的總體進度。
[1]吉才盈,代飛,李彤.軟件開發(fā)中的活動博士挖掘[J].計算機科學.2016.43(6):167-172.
[2]黃君雄,葉世平,郭煦.Android軟件開發(fā)關(guān)鍵問題研究[J].福建電腦.2016.32(8):70-73.