JavaBean的任務(wù)和設(shè)計(jì)注意事項(xiàng)
一、JavaBean的任務(wù):“Write once, run anywhere, reuse everywhere”,即“一次性編寫,任何地方執(zhí)行,任何地方重用”。這個(gè)任何實(shí)際上就是要解決困擾軟件工業(yè)的日益增加的復(fù)雜性,提供一個(gè)簡(jiǎn)單的、緊湊的和優(yōu)秀的問題解決方案。
1. 一個(gè)開發(fā)良好的軟件組件應(yīng)該是一次性地編寫,而不需要再重新編寫代碼以增強(qiáng)或完善功能。因此,JavaBean應(yīng)該提供一個(gè)實(shí)際的方法來增強(qiáng)現(xiàn)有代碼的利用率,而不再需要在原有代碼上重新進(jìn)行編程。除了在節(jié)約開發(fā)資源方面的意義外,一次性地編寫JavaBean組件也可以在版本控制方面起到非常好的作用。開發(fā)者可以不斷地對(duì)組件進(jìn)行改進(jìn),而不必從頭開始編寫代碼。這樣就可以在原有基礎(chǔ)上不斷提高組件功能,而不會(huì)犯相同的錯(cuò)誤。
2. JavaBean組件在任意地方運(yùn)行是指組件可以在任何環(huán)境和平臺(tái)上使用,這可以滿足各種交互式平臺(tái)的需求。由于JavaBean是基于Java的,所以它可以很容易地得到交互式平臺(tái)的支持。JavaBean組件在任意地方執(zhí)行不僅是指組件可以在不同的操作平臺(tái)上運(yùn)行,還包括在分布式網(wǎng)絡(luò)環(huán)境中運(yùn)行。
3.JavaBean組件在任意地方的重用說的是它能夠在包括應(yīng)用程序、其他組件、文檔、Web站點(diǎn)和應(yīng)用程序構(gòu)造器工具的多種方案中再利用。這也許是JavaBean組件的最為重要的任務(wù)了,因?yàn)樗荍avaBean組件區(qū)別于Java程序的特點(diǎn)之一。Java程序的任務(wù)就是JavaBean組件所具有的前兩個(gè)任務(wù),而這第3個(gè)任務(wù)卻是JavaBean組件獨(dú)有的。
JavaBean是可復(fù)用的平臺(tái)獨(dú)立的軟件組件,開發(fā)者可以在軟件構(gòu)造器工具中其直接進(jìn)行可視化操作。軟件構(gòu)造器工具可以是Web頁(yè)面構(gòu)造器、可視化應(yīng)用程序構(gòu)造器、GUI設(shè)計(jì)構(gòu)造器或服務(wù)器應(yīng)用程序構(gòu)造器。有時(shí),構(gòu)造器工具也可以是一個(gè)包含子一些bean的復(fù)合文檔的文檔編輯器。
JavaBean可以是簡(jiǎn)單的GUI要素,如按鈕或滾動(dòng)條;也可以是復(fù)雜的可視化軟件組件,如數(shù)據(jù)庫(kù)視圖,有些JavaBean是沒有GUI表現(xiàn)形式的,但這些JavaBean仍然可以使用應(yīng)用程序構(gòu)造器可視化地進(jìn)行組合。
一個(gè)JavaBean和一個(gè)Javaapplet相似,是一個(gè)非常簡(jiǎn)單的遵循某種嚴(yán)格協(xié)議的Java類。每個(gè)JavaBean的功能都可能不一樣,但它們都必須支持以下特征。一個(gè)bean沒有必須繼承的特定的基類或接口。可視化的bean必須繼承的類是java.awt.Component,這樣它們才能添加到可視化容器中去,非可視化bean則不需要繼承這個(gè)類。有許多bean,無論是在應(yīng)用程序構(gòu)造器工具中,還是在最后創(chuàng)建好的應(yīng)用程序中,都具有很強(qiáng)的可視化特征,但這并非每個(gè)bean必須的特征。
在使用Java編程時(shí),并不是所有軟件模塊都需要轉(zhuǎn)換成bean.Bean比較適合于那些具有可視化操作和定制特性的軟件組件。從基本上說,JavaBean可以看成是一個(gè)黑盒子,即只需要知道其功能而不必管其內(nèi)部結(jié)構(gòu)的軟件設(shè)備。黑盒子只介紹和定義其外部特征和與其他部分的接口,如按鈕、窗口、顏色、形狀、句柄等。
通過將系統(tǒng)看成使用黑盒子關(guān)聯(lián)起來的通訊網(wǎng)絡(luò),我們可以忽略黑盒子內(nèi)部的系統(tǒng)細(xì)節(jié),從而有效地控制系統(tǒng)的整體性能。作為一個(gè)黑盒子的模型,JavaBean有3個(gè)接口面,可以獨(dú)立進(jìn)行開發(fā)。
◆JavaBean可以調(diào)用的方法。
◆JavaBean提供的可讀寫的屬性。
◆JavaBean向外部發(fā)送的或從外部接收的事件。
二、JavaBean設(shè)計(jì)注意事項(xiàng):1.不要試圖在JavaBean返回的HTML中放置任何字體尺寸。
1.并不是所有的瀏覽器都相同。很多瀏覽器無法處理完整的字體尺寸。
2.不要試圖在JavaBean返回的HTML中放置任何腳本或者DHTML.向頁(yè)面直接輸出腳本或者DHTML相當(dāng)于自我毀滅,因?yàn)槟承g覽器版本在處理不正確的腳本時(shí)會(huì)崩潰(非常少但是有)。如果用戶的JavaBean在運(yùn)行時(shí)是動(dòng)態(tài)的推出復(fù)雜的HTML語(yǔ)言,用戶將陷入調(diào)試的噩夢(mèng)。另外,復(fù)雜的HTML將限制JavaBean的壽命和靈活性。
3.不要提供任何的選擇。
【編輯推薦】