国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Java的組件技術(shù)-JavaBean
軟件開發(fā)的一個(gè)真正目的利用編碼方面的投資,以便在同一公司或不同公司的其它開發(fā)中復(fù)用編碼。近年來,編程人員投入大量精力建立可復(fù)用軟件。早期用在面向?qū)ο缶幊谭矫娴呐σ呀?jīng)在Java等編程語言的開發(fā)中充分實(shí)現(xiàn),軟件可以不多費(fèi)任何工作就運(yùn)行在各種平臺(tái)上。
但是,Java并不是自動(dòng)使軟件可以復(fù)用,Java代碼寫得很好,使其他開發(fā)人員很容易改變,但復(fù)用軟件的目標(biāo)是讓開發(fā)人員不必重新編譯程序就能使用。此外,真正的復(fù)用是開發(fā)人員連自己的代碼也不用重新編譯就可以將編碼集成到自己的設(shè)計(jì)中。
當(dāng)JavaSoft發(fā)表Java編程語言時(shí),它并沒有意識(shí)到Java對(duì)軟件開發(fā)將產(chǎn)生的巨大影響。但隨著Web技術(shù)的飛速發(fā)展以及對(duì)交互性軟件技術(shù)需求的增長(zhǎng),JavaSoft開始意識(shí)到了Java的發(fā)展?jié)摿ΑS谑荍avaSoft開始開發(fā)一些用于處理當(dāng)前軟件開發(fā)者所面臨問題的Java相關(guān)技術(shù),其中一種技術(shù)就是JavaBean技術(shù),這種技術(shù)是為了實(shí)現(xiàn)對(duì)綜合軟件組件技術(shù)的需求而開發(fā)的。JavaBean是一種專門為當(dāng)前軟件開發(fā)者設(shè)計(jì)的全新的組件技術(shù),它為軟件開發(fā)者提供了一種極佳的問題解決方案。 JavaBean的任務(wù)
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的設(shè)計(jì)目標(biāo)及其如何被實(shí)現(xiàn)
現(xiàn)在我們來看一實(shí)現(xiàn)JavaBean的一些具體的主要設(shè)計(jì)目標(biāo):
1.緊湊而方便的創(chuàng)建和使用
JavaBean緊湊性的需求是基于JavaBean組件常常用于分布式計(jì)算環(huán)境中,這使得JavaBean組件常常需要在有限的帶寬連接環(huán)境下進(jìn)行傳輸。顯然,為了適應(yīng)傳送的效率和速度,JavaBean組件必須是越緊湊越好。另外,為了更好地創(chuàng)建和使用組件,就應(yīng)該使其越簡(jiǎn)單越好。通常為了提高組件的簡(jiǎn)易性和緊湊性,設(shè)計(jì)過程需要投入相對(duì)較大的功夫。
現(xiàn)在已有的組件軟件技術(shù)通常是使用復(fù)雜的API,這常常搞得開發(fā)者在創(chuàng)建組件時(shí)暈頭轉(zhuǎn)向。因此,JavaBean組件必須不僅容易使用,而且必須便于開發(fā)。這對(duì)于組件開發(fā)者而言是至關(guān)重要的,因?yàn)檫@可以使得開發(fā)者不必花大量功夫在使用API進(jìn)行程序設(shè)計(jì)上,從而更好地對(duì)組件進(jìn)行潤(rùn)飾,提高組件的可觀賞性。
JavaBean組件大部分是基于已有的傳統(tǒng)Java編程的類結(jié)構(gòu)上的,這對(duì)于那些已經(jīng)可以熟練地使用Java語言的開發(fā)者非常有利。而且這可以使得JavaBean組件更加緊湊,因?yàn)镴ava語言在編程上吸收了以前的編程語言中的大量?jī)?yōu)點(diǎn),已經(jīng)使開發(fā)出來的程序變得相當(dāng)有效率。
2.完全的可移植性
JavaBean API與操作基礎(chǔ)的獨(dú)立于平臺(tái)的Java系統(tǒng)相結(jié)合,提供了獨(dú)立于平臺(tái)的組件解決方案。因此,組件開發(fā)者就可以不必再為帶有Java applet平臺(tái)特有的類庫(kù)而擔(dān)心了。最終的結(jié)果都將是計(jì)算機(jī)界共享可重復(fù)使用的組件,并在任何支持Java的系統(tǒng)中無需修改地執(zhí)行。
3.繼承Java的強(qiáng)大功能
現(xiàn)有的Java結(jié)構(gòu)已經(jīng)提供了多種易于應(yīng)用于組件的功能。其中一個(gè)比較重要的是Java本身的內(nèi)置類發(fā)現(xiàn)功能,它可以使得對(duì)象在運(yùn)行時(shí)彼此動(dòng)態(tài)地交互作用,這樣對(duì)象就可以從開發(fā)系統(tǒng)或其開發(fā)歷史中獨(dú)立出來。
對(duì)于JavaBean而言,由于它是基于Java語言的,所以它就自然地繼承了這個(gè)對(duì)于組件技術(shù)而言非常重要的功能,而不再需要任何額外開銷來支持它。
JavaBean繼承在現(xiàn)有Java功能中還有一個(gè)重要的方面,就是持久性,它保存對(duì)象并獲得對(duì)象的內(nèi)部狀態(tài)。通過Java提供的序列化(serialization)機(jī)制,持久性可以由JavaBean自動(dòng)進(jìn)行處理。當(dāng)然,在需要的時(shí)候,開發(fā)者也可以自己建立定制的持久性方案。
4.應(yīng)用程序構(gòu)造器支持
JavaBean的另一個(gè)設(shè)計(jì)目標(biāo)是設(shè)計(jì)環(huán)境的問題和開發(fā)者如何使用JavaBean創(chuàng)建應(yīng)用程序。JavaBean體系結(jié)構(gòu)支持指定設(shè)計(jì)環(huán)境屬性和編輯機(jī)制以便于JavaBean組件的可視化編輯。這樣開發(fā)者可以使用可視化應(yīng)用程序構(gòu)造器無縫地組裝和修改JavaBean組件。就像Windows平臺(tái)上的可視化開發(fā)工具VBX或OCX控件處理組件一樣。通過這種方法,組件開發(fā)者可以指定在開發(fā)環(huán)境中使用和操作組件的方法。
5.分布式計(jì)算支持
支持分布式計(jì)算雖然不是JavaBean體系結(jié)構(gòu)中的核心元素,但也是JavaBean中的一個(gè)主要問題。
JavaBean使得開發(fā)者可以在任何時(shí)候使用分布式計(jì)算機(jī)制,但不使用分布式計(jì)算的核心支持來給自己增加額外負(fù)擔(dān)。這正是出于JavaBean組件的緊湊性考慮的,無疑分布式計(jì)算需要大量的額外開銷。
JavaBean和Java
雖然JavaBean和Java之間已經(jīng)有了明確的界限,但在某些方面JavaBean和Java之間仍然存在著非常明顯的混淆。Java確實(shí)是能夠?yàn)橛脩魟?chuàng)建可重用的對(duì)象,但它卻沒有管理這些對(duì)象相互作用的規(guī)則或標(biāo)準(zhǔn)。JavaBean通過指定定義對(duì)象之間交互作用的機(jī)制,以及大部分對(duì)象需要支持的常用行為,如持久性和實(shí)際處理等,建立了自己需要的組件模型。
雖然當(dāng)前的Java組件模型也可以運(yùn)行得很好,但在傳送真正的可重用性和交互操作性上仍然非常有限,Java用戶需要做的最多的一件事就是創(chuàng)建applet并使得它們?cè)赪eb 頁面上相互通訊,這并非易事。JavaBean提供了一個(gè)框架包,使用這個(gè)包進(jìn)行通訊就容易得多了。
JavaBean組件能夠通過定義好的標(biāo)準(zhǔn)屬性改進(jìn)性能??傮w而言,JavaBean充分發(fā)展了Java applet的功能,并結(jié)合了Java AWT組件的緊湊性和可重用性。
JavaBean組件的基本概念
JavaBean是可復(fù)用的平臺(tái)獨(dú)立的軟件組件,開發(fā)者可以在軟件構(gòu)造器工具中其直接進(jìn)行可視化操作。
軟件構(gòu)造器工具可以是Web頁面構(gòu)造器、可視化應(yīng)用程序構(gòu)造器、CUI設(shè)計(jì)構(gòu)造器或服務(wù)器應(yīng)用程序構(gòu)造器。有時(shí),構(gòu)造器工具也可以是一個(gè)包含子一些bean的復(fù)合文檔的文檔編輯器。
JavaBean可以是簡(jiǎn)單的CUI要素,如按鈕或滾動(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ā)。
1. JavaBean可以調(diào)用的方法。
2. JavaBean提供的可讀寫的屬性。
3. JavaBean向外部發(fā)送的或從外部接收的事件。
JavaBean組件的開發(fā)環(huán)境
普通JavaBean組件是要分布在各自環(huán)境中,所以它們應(yīng)該能夠適應(yīng)各種環(huán)境。雖然我們無法事先預(yù)知JavaBean要運(yùn)行的確切環(huán)境,但以下兩點(diǎn)是可以確定的:
1. bean必須能夠在一個(gè)應(yīng)用程序構(gòu)造器工具中運(yùn)行。
2. bean必須可以在產(chǎn)生的應(yīng)用程序的運(yùn)行環(huán)境中使用。
設(shè)計(jì)環(huán)境
第一點(diǎn)說明的是bean必須可以在設(shè)計(jì)環(huán)境(design environment)中運(yùn)行。在設(shè)計(jì)環(huán)境中,bean應(yīng)該提供設(shè)計(jì)信息給應(yīng)用程序構(gòu)造器工具并允許終端用戶制定bean的外  觀和行為。
在傳統(tǒng)的軟件構(gòu)造活動(dòng)中,必須通過編譯、鏈接之后才能看到應(yīng)用程序的最終運(yùn)行結(jié)果;而利用JavaBean設(shè)計(jì)的軟件中,則沒有這種明確的界限。使用JavaBean,就可以非常直觀地設(shè)計(jì)應(yīng)用程序軟件,在設(shè)計(jì)過程中賦予軟件生機(jī)。而且,這個(gè)過程更加容易重復(fù)開發(fā),設(shè)計(jì)思想更加容易變成原型。
運(yùn)行環(huán)境
第二點(diǎn)說明的是bean必須可以在運(yùn)行環(huán)境(run-time environment)中使用。在這個(gè)環(huán)境中,對(duì)設(shè)計(jì)信息和定制的需求并不重要。一個(gè)組件的設(shè)計(jì)環(huán)境信息和設(shè)計(jì)環(huán)境中編寫的代碼通??赡苁欠浅>薮蟮?。
因此,我們可能需要在bean的設(shè)計(jì)環(huán)境方面和運(yùn)行環(huán)境方面作一個(gè)明確的區(qū)分,這樣,就可能需要在運(yùn)行環(huán)境中不使用bean的任何設(shè)計(jì)環(huán)境代碼來配置這個(gè)bean。所以,JavaBean就必須分別支持運(yùn)行環(huán)境接口的類庫(kù)和設(shè)計(jì)環(huán)境接口的類庫(kù)。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JavaBean
學(xué)習(xí)Java Bean
POJO和javabean的區(qū)別
J2EE的體系結(jié)構(gòu)
J2EE‘S EJB Technology
Java編程語言中EJB技術(shù)的詳細(xì)說明
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服