明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

HTML、Swing還是XML,Java客戶端工具選擇?(一) [轉(zhuǎn)]

[摘要][前言:] Java軟件設(shè)計師和管理人員經(jīng)常會面臨這樣的難題:在開發(fā)應(yīng)用軟件的客戶端時,應(yīng)該在Swing、HTML、XML三種技術(shù)中選擇誰。在這篇文章中,我將把自己在這三種技術(shù)方面的經(jīng)驗與廣大讀者共享,并對在Java應(yīng)用軟件開發(fā)中選擇哪一種技術(shù)提出一些標(biāo)準(zhǔn)和技巧。在文章的最后,還會介紹一種整合Ja...
[前言:] Java軟件設(shè)計師和管理人員經(jīng)常會面臨這樣的難題:在開發(fā)應(yīng)用軟件的客戶端時,應(yīng)該在Swing、HTML、XML三種技術(shù)中選擇誰。在這篇文章中,我將把自己在這三種技術(shù)方面的經(jīng)驗與廣大讀者共享,并對在Java應(yīng)用軟件開發(fā)中選擇哪一種技術(shù)提出一些標(biāo)準(zhǔn)和技巧。在文章的最后,還會介紹一種整合Java Swing和HTML的新方法。



  與現(xiàn)有的技術(shù)相比,Java有明顯的優(yōu)點,因此它已經(jīng)在服務(wù)器端應(yīng)用軟件的開發(fā)中確立了主導(dǎo)地位。然而,由于每一個應(yīng)用程序都有幾種形式的用戶界面和前端的表達(dá)形式,我們中的許多人都對在客戶端采用Java技術(shù)有不好的印象,因此在客戶端的開發(fā)中采用HTML似乎已經(jīng)成為唯一的選擇了。

  實際情況是,在客戶端應(yīng)用程序的開發(fā)中不止只有HTML一種選擇,我們將在本文討論基于Java的應(yīng)用軟件開發(fā)中三種用戶界面的解決方案。我將首先討論HTML與JSP和servlet聯(lián)合使用的優(yōu)點和缺點,然后討論Java最初的目標(biāo)之一:通過GUI Applet實現(xiàn)交互式互聯(lián)網(wǎng)。最后,我們將討論XML以及由它所衍生出來的其他技術(shù)。

  JSP/Servlets環(huán)境下的HTML客戶端

  大多數(shù)讀者都曾編寫過servlet、開發(fā)過JSP應(yīng)用,清楚基于HTML的用戶界面的優(yōu)點和缺點。選擇HTML的最大的理由仍然是其廣泛的平臺適應(yīng)性,基本HTML的標(biāo)準(zhǔn)性很好,雖然比較枯燥,但它可以很好地完成工作。

  由于HTTP/HTTPS協(xié)議非常簡單,可以使開發(fā)的應(yīng)用程序很好地適應(yīng)各種網(wǎng)絡(luò)配置和防火墻。但這是有代價的,HTML缺乏與用戶的交互性,而且對用戶每個行為的響應(yīng)都需要與服務(wù)器進(jìn)行連接。作為一名編程人員,我們一直在追求簡單性,并使開發(fā)的軟件可以適合所有的瀏覽器?然而簡單性并不總是好的,簡單地說,與靜態(tài)HTML相比,JavaScript可以較好地實現(xiàn)不太復(fù)雜的交互性,但對于開發(fā)復(fù)雜的用戶界面而言,它還是不能勝任的。

  除非擁有高速的互聯(lián)網(wǎng)連接,否則你一定有過焦急的等待加載一個網(wǎng)頁的經(jīng)歷。盡管瘦客戶端提供了一些很好的非交互性的用戶界面,但傳統(tǒng)的胖客戶終端一般情況下都比它們更聰明。例如,Netscape Communicator和MS Outlook等電子郵件的前端就比基于互聯(lián)網(wǎng)的電子郵件工具具有更好的用戶親和性。

  用Java開發(fā)一個HTML前端應(yīng)用是一個很好的選擇,因為HTML提供了跨平臺的內(nèi)容傳輸能力。編程人員可以使用Java Servlets和JSP開發(fā)在任何操作系統(tǒng)平臺上運(yùn)行的服務(wù)器端應(yīng)用程序。同時考慮到眾多的Java API和它得到的廣泛的服務(wù)器開發(fā)商的支持,對于開發(fā)可伸縮互聯(lián)網(wǎng)站而言,Java是一種理想的選擇。

  總而言之,配合使用Servlets和JSP的HTML前端開發(fā)工具是開發(fā)靜態(tài)界面的很好的方式,但當(dāng)需要對用戶的行為作出快速反應(yīng)和需要對數(shù)據(jù)進(jìn)行高速處理的復(fù)雜應(yīng)用時,這種方式則不大理想。