摘 要:互聯(lián)網(wǎng)作為一種工具已經(jīng)被廣泛地應(yīng)用到各行各業(yè),在滿足具體需求時(shí)需要采用特定的一種或幾種編程語(yǔ)言加以實(shí)現(xiàn)。在這些編程語(yǔ)言中使用最多的就是JAVA編程語(yǔ)言,文章將重點(diǎn)介紹JAVA語(yǔ)言在Web應(yīng)用開(kāi)發(fā)中擔(dān)當(dāng)?shù)慕巧褪褂眉记伞?/p>
關(guān)鍵詞:Web應(yīng)用開(kāi)發(fā);JAVA編程語(yǔ)言;應(yīng)用
JAVA編程語(yǔ)言順應(yīng)潮流隨著互聯(lián)網(wǎng)的興起而成長(zhǎng)壯大以其安全性、可移植性、多線程等特性贏得廣大開(kāi)發(fā)者的追捧。雖然JAVA在某些特定領(lǐng)域不是最優(yōu)解,但作為互聯(lián)網(wǎng)與產(chǎn)品需求間的銜接工具,JAVA仍然展現(xiàn)出其強(qiáng)大的適應(yīng)能力和表達(dá)能力,相信在未來(lái)的一段時(shí)間里它仍然有很強(qiáng)的生命力和強(qiáng)大的號(hào)召力。
1 Web應(yīng)用的特點(diǎn)
1.1 免安裝
與以往的C/S模式不同,若想使用Web應(yīng)用程序,你不再需要下載安裝專用的客戶端軟件,無(wú)論你在什么地方使用什么樣的網(wǎng)絡(luò)什么樣的操作系統(tǒng)這些都不會(huì)成為限制,只需要接入互聯(lián)網(wǎng)打開(kāi)瀏覽器輸入Web應(yīng)用的訪問(wèn)地址即可立即與服務(wù)端建立連接進(jìn)行信息的交互。
1.2 最新內(nèi)容
無(wú)需安裝專用的客戶端也就沒(méi)有客戶端版本限制的問(wèn)題更沒(méi)有客戶端升級(jí)過(guò)程。只要通過(guò)瀏覽器打開(kāi)Web應(yīng)用程序,呈現(xiàn)在用戶面前的總是最新的版本(此處可暫時(shí)忽略各級(jí)緩存造成的版本不同步問(wèn)題)。
1.3 跨平臺(tái)
當(dāng)下的Web訪問(wèn)通常是基于開(kāi)放的HTTP應(yīng)用層協(xié)議的,所以只要依照HTTP協(xié)議標(biāo)準(zhǔn)開(kāi)發(fā)Web瀏覽器就能與Web應(yīng)用交互信息。由于在不同的平臺(tái)都已經(jīng)有了比較成熟的瀏覽器Web已經(jīng)具備了類似于JAVA的“一次編寫(xiě)隨處可用”的特性,系統(tǒng)運(yùn)行環(huán)境不再是難以逾越的障礙。
1.4 開(kāi)放互聯(lián)
Web應(yīng)用程序可以通過(guò)鏈接將彼此聯(lián)系在一起,上一秒還在國(guó)內(nèi)門戶網(wǎng)站瀏覽下一秒可能就跳轉(zhuǎn)到了國(guó)外的某個(gè)新聞?wù)尽C恳粋€(gè)鏈接都能將用戶引導(dǎo)至相應(yīng)的內(nèi)容上,所有用戶都可以公平地訪問(wèn)內(nèi)容,并產(chǎn)生新的內(nèi)容。信息的傳播與獲取都只在彈指一揮間。
1.5 足夠快
無(wú)論是服務(wù)器、數(shù)據(jù)傳輸設(shè)備還是互聯(lián)網(wǎng)終端,硬件的進(jìn)步從來(lái)沒(méi)有停止過(guò),計(jì)算、傳輸、渲染速度提升都已超乎想象,如今一部手機(jī)的硬件參數(shù)已經(jīng)可以比肩三兩年前的筆記本電腦甚至是臺(tái)式機(jī)。硬件性能提升量的積累最終導(dǎo)致了一個(gè)質(zhì)的轉(zhuǎn)變:對(duì)于越來(lái)越多的軟件而言,Web應(yīng)用程序已經(jīng)足夠快,原生應(yīng)用在逐漸被替代,輕結(jié)構(gòu)的應(yīng)用程序原來(lái)越多。
2 JAVA語(yǔ)言在Web開(kāi)發(fā)中的優(yōu)勢(shì)
2.1 簡(jiǎn)單的語(yǔ)法
對(duì)于使用過(guò)C++、.NET甚至Javascript腳本語(yǔ)言的人而言上手JAVA不會(huì)非常困難,初學(xué)者總可以在JAVA中看到一些熟悉的影子。語(yǔ)法的通用性降低了學(xué)習(xí)的成本,這也是JAVA長(zhǎng)期登上TIOBE排行榜的原因之一,也是使用者眾多的原因之一。
2.2 平臺(tái)無(wú)關(guān)性
平臺(tái)無(wú)關(guān)起初是JAVA語(yǔ)言最大的賣點(diǎn),雖然這一特性不是JAVA首創(chuàng)但無(wú)疑是JAVA使這一設(shè)計(jì)理念在代碼界家喻戶曉。JAVA虛擬機(jī)與字節(jié)碼的組合使得支持JAVA虛擬機(jī)的系統(tǒng)都可以運(yùn)行JAVA程序,“一次編程到處運(yùn)行”從此真正地走進(jìn)大眾的視線之內(nèi)掌握在廣大程序員手中。
2.3 強(qiáng)大的類庫(kù)
對(duì)于很多JAVA開(kāi)發(fā)者而言所需要做的就是引用類庫(kù)拼裝優(yōu)秀的已有代碼,經(jīng)過(guò)二十幾年的發(fā)展JAVA編程語(yǔ)言基本上已經(jīng)擁有了覆蓋各行各業(yè)各種需求的類庫(kù)。如果你使用JAVA編程并且遇到了一個(gè)非常棘手的問(wèn)題,那么首先應(yīng)該想到的肯定不會(huì)是自己動(dòng)手去開(kāi)發(fā)一個(gè)功能完善的類庫(kù),所有的JAVA程序員都知道不再需要重復(fù)地造輪子。
2.4 豐富的框架
做JAVA開(kāi)發(fā)的程序員尤其是JAVA EE開(kāi)發(fā)的程序員幾乎不可能沒(méi)聽(tīng)說(shuō)過(guò)SSH框架,尤其是Spring,經(jīng)過(guò)十幾年的發(fā)展如今Spring已從一個(gè)輕量級(jí)的JAVA開(kāi)發(fā)框架成長(zhǎng)為全套的企業(yè)應(yīng)用解決方案,并將觸角延伸至移動(dòng)端,它是JAVA語(yǔ)言在互聯(lián)網(wǎng)行業(yè)廣泛應(yīng)用走向成熟的標(biāo)志也是開(kāi)發(fā)者學(xué)習(xí)各種設(shè)計(jì)模式的優(yōu)秀樣例。
2.5 成熟的中間件
Web中間件是一個(gè)能夠獨(dú)立運(yùn)行的平臺(tái),它為上層的Web應(yīng)用系統(tǒng)提供一個(gè)運(yùn)行環(huán)境,并通過(guò)標(biāo)準(zhǔn)的接口和API來(lái)隔離其支撐的系統(tǒng)。有了中間件程序員的職責(zé)劃分將更加清晰,開(kāi)發(fā)效率也邁上了一個(gè)新的臺(tái)階。在中間件的輔助下架設(shè)一個(gè)Web應(yīng)用將會(huì)是非常簡(jiǎn)單輕松的一件事。
3 JAVA語(yǔ)言在Web開(kāi)發(fā)中的價(jià)值
3.1 JAVA的角色
毫無(wú)疑問(wèn)JAVA語(yǔ)言勝任了早起Web開(kāi)發(fā)的大量工作,在Web開(kāi)發(fā)中JAVA可以編寫(xiě)客戶端小程序、編寫(xiě)網(wǎng)頁(yè)、處理Http請(qǐng)求、做業(yè)務(wù)邏輯處理、訪問(wèn)數(shù)據(jù)庫(kù)、對(duì)接消息中間件、訪問(wèn)緩存等等。不過(guò)我們也看到了前后端分離JSP在逐漸退出歷史舞臺(tái),還有已經(jīng)退出歷史舞臺(tái)的applet,所以JAVA語(yǔ)言也并不是什么都擅長(zhǎng)。如今,對(duì)于普通開(kāi)發(fā)者而言JAVA在Web開(kāi)發(fā)中更多地是承載業(yè)務(wù)邏輯。
3.2 Web開(kāi)發(fā)需要什么
不是每一個(gè)網(wǎng)站、服務(wù)端都需要應(yīng)對(duì)高并發(fā)、海量數(shù)據(jù)或滿足高度一致性、高度實(shí)時(shí)性的要求,這些苛刻的條件在Web開(kāi)發(fā)中通常也不會(huì)只采用一種語(yǔ)言去應(yīng)對(duì)解決。根據(jù)特定的場(chǎng)景使用合適的技術(shù)、架構(gòu),此外還要認(rèn)清一點(diǎn):“技術(shù)不是解決問(wèn)題的唯一途徑,業(yè)務(wù)的問(wèn)題也可以通過(guò)業(yè)務(wù)本身的合理安排來(lái)滿足”,只有這樣才能在Web開(kāi)發(fā)中擁抱變化適應(yīng)并生存。不使用JAVA一樣可以開(kāi)發(fā)出優(yōu)秀的Web應(yīng)用,今天如此未來(lái)更是如此,語(yǔ)言會(huì)隨著方法的持續(xù)改進(jìn)、經(jīng)驗(yàn)的總結(jié)、新思想的產(chǎn)生而發(fā)生翻天覆地的變化,即便沒(méi)有JAVA人們對(duì)信息化的需求依然存在。
4 JAVA語(yǔ)言在Web應(yīng)用開(kāi)發(fā)中的心得體會(huì)
在解決現(xiàn)實(shí)生活中的問(wèn)題時(shí)需要充分結(jié)合JAVA語(yǔ)言的具體特性,根據(jù)需求方面的具體要求對(duì)問(wèn)題域進(jìn)行深入的分析,并在開(kāi)發(fā)的過(guò)程中不斷提煉、認(rèn)識(shí)問(wèn)題域。在開(kāi)發(fā)Web應(yīng)用時(shí)更多的需要考慮系統(tǒng)的可用性、擴(kuò)展性、安全性、伸縮性,所以拘泥于某一種語(yǔ)言的特性或者語(yǔ)法并不利于解決問(wèn)題,跳出語(yǔ)言的限制去思考問(wèn)題更容易找到問(wèn)題的根源。進(jìn)階時(shí)需要對(duì)JAVA虛擬機(jī)有所了解,jstat、jstack等常用的命令將會(huì)在緊急時(shí)刻協(xié)助你解決重大的卡死問(wèn)題。學(xué)習(xí)JAVA語(yǔ)言在于不斷地積累,不斷地尋求挑戰(zhàn)即便是簡(jiǎn)單的代碼也有改進(jìn)的空間,尋找改進(jìn)空間的過(guò)程就是個(gè)人提高的捷徑。
5 結(jié)束語(yǔ)
JAVA語(yǔ)言是互聯(lián)網(wǎng)中眾多語(yǔ)言中的一種,在互聯(lián)網(wǎng)飛速發(fā)展過(guò)后JAVA語(yǔ)言大浪淘沙在TIOBE排行榜中穩(wěn)居前三,并且在嵌入式設(shè)備、桌面設(shè)備、企業(yè)服務(wù)器三大領(lǐng)域各有建樹(shù)。我們?cè)诜Q道其取得成績(jī)的同時(shí)也應(yīng)深受啟發(fā),唯有適應(yīng)市場(chǎng)變化滿足開(kāi)發(fā)者偏好并且有嚴(yán)格規(guī)范的標(biāo)準(zhǔn)才能在各行各業(yè)開(kāi)疆?dāng)U土?;ヂ?lián)網(wǎng)作為工具將與用戶日益豐富的信息化需求一路攜手更豐富易用的JAVA語(yǔ)言特性深入人們未來(lái)的生活。
參考文獻(xiàn)
[1]葉紅美.計(jì)算機(jī)軟件Java編程特點(diǎn)及其技術(shù)分析[J].電腦編程技巧與維護(hù),2017(02).
[2]劉亦.計(jì)算機(jī)軟件的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2015(23).
[3]阿布都拉·買買提.關(guān)于計(jì)算機(jī)軟件維護(hù)和管理的研究[J].信息與電腦(理論版),2015(17).
[4]許娜,劉景慧,劉敏,等.Java課程體系教學(xué)改革方案[J].中小企業(yè)管理與科技(上旬刊),2015(06).
[5]王晶晶.基于計(jì)算機(jī)軟件開(kāi)發(fā)的JAVA編程語(yǔ)言分析[J].河南科技,2013(02).
作者簡(jiǎn)介:籍慧文(1994-),男,漢族,山西晉中人,本科,研究方向:計(jì)算機(jī)、軟件工程。