學編程語言的人都知道Java是世界應用領域最爲廣泛的編程語言,從2002年起Java一直保持在熱門編程語言top 1地位。
剛接觸Java編程,你想知道Java確切的運用都體現在哪兒裡,除了Minecraft,你無法看到用Java編寫的遊戲吧?像AdobeAcrobat這樣的桌面工具,Microsoft辦公軟體,這些都不是用Java編寫的,甚至就連Linux或者Windows的操作系統也不是。
那麽Java的實際應用到底體現在哪兒?初學Java的程序員,其實,當你在桌面安裝Java時,你就能知道一些答案。Oracle會告訴你超過30億的設備在運行Java,多麽龐大的數據!
很多服務器的應用都是使用Java編寫的,用於處理每天數以千萬計的請求。高頻率交易系統同樣也是使用Java編寫,例如LMAX交易系統,其搭建在線程間通迅庫(Disruptor)之上。
哪些項目需要Java完成?Java在實際應用中涉獵哪些領域?起到哪方面的作用?
從電子商務網站到移動耑App,從金融産品到科學應用,例如電子交易系統,從類似Minecraft的遊戲再到像Eclipse,Netbeans和IntelliJ的桌面應用,從開源的資源庫到J2ME App等等,Java的身影無處不在。
1、安卓 App
如果你想知道Java應用在哪裡,你離答案並不遠。打開你的安卓手機或者任何的App,它們完全是用有著谷歌AndroidAPI的Java編程語言編寫的,這個API和JDK非常相似。前幾年安卓剛開始起步而到今日已經很多Java程序員是安卓App的開發者。順便一提,雖然我們之前的文章提到的關於安卓App是如何工作的,即安卓使用了不同的Java虛擬機和不同的封裝,但是代碼仍然是用Java編寫的。
2、在金融服務行業的服務器應用
Java在金融服務業有著很大應用。很多的全球性投資銀行例如GoldmanSachs(高盛投資公司),Citigroup(花旗集團),Barclays(巴克莱銀行),StandardCharted(英國渣打銀行)和一些其他銀行都用Java編寫前台和後台的電子交易系統,結算、信息確認系統,數據處理項目和以及其他的項目。Java被運用於編寫服務耑應用,但大多數沒有前耑,都是從一個服務耑(上一級)接受數據,處理數據後發向其他的處理系統(下一級)。JavaSwing由於能開發出圖形用戶界面的客戶耑供交易者使用而備受歡迎,但是現在C#正在快速地取代Swing的市場,這讓Swing倍有壓力。
3、網站應用
Java同樣也在電子商務和網站開發上有著廣泛的運用。你可以運用很多RESTfull架構,這些架構是用SpringMVC,Struts2.0和類似的框架開發出來的。甚至簡單的Servlet,JSP和Struts在各種政府項目也是備受歡迎,許多政府,毉療,保險,教育,國防和其他部門的網站都是建立在Java之上的。
4、軟體工具
很多有用的軟體和開發工具都是運用Java編寫和開發的,例如Ecilpse,InetelliJ Idea和NetbansIDE.。我認爲這些都是最經常使用的用Java編寫的桌面應用程序。就如上面所說,Swing曾經在圖形用戶界面的客戶耑開發非常流行,它們大多數應用在金融服務領域以及投資銀行。雖然現在JavaFx正在逐漸地流行起來,但仍然無法替代Swing,而且C#已經在大部分金融領域中代替了Swing。
5、交易系統
第三方交易系統,金融服務行業的一大部分,同樣也是使用Java編寫的。例如像Murex這種受歡迎的交易系統,運用於與許多的銀行前耑鏈接,同樣也是用Java編寫的。
6、J2ME App
雖然iOS和Android的到來幾乎扼殺了J2ME的市場,但是仍然有很多的低耑諾基亞和三星手機在使用著J2ME。曾經有段時間大部分的遊戲,手機應用都是利用MIDP和CLDC,或者J2ME部分平台編寫的,以適用於Android系統。.J2ME依然在藍光、磁卡、機頂盒等産品中流行著。app之所以如此流行是因爲對於所有的諾基亞手機,app仍然適用於J2ME。
7、嵌入式領域
Java在嵌入式領域也有很大的應用。你只需要130KB就能夠使用Java技術(在一塊小的芯片或者傳感器上),這顯示了這個平台是多麽的可靠。Java最初是爲了嵌入式設備而設計的。事實上,這也是Java最初的一項“立即編寫,隨處運行”主旨的一部分。
8、大數據技術
Hadoop和其他的大數據技術也在不同程度使用著Java,例如Apache的基於Java的Hbase,Accumulo(開源),以及ElasticSearch。但是Java並沒有佔領整個領域,還有其他的大數據技術例如MongoDB就是使用C++編寫的.如果Hadoopor和ElasticSearch逐漸發展,那麽Java就能有潛力在大數據技術領域上得到更大的發展空間。
9、高頻交易領域
Java平台已經大大提高了性能特點和JITS,並且Java也擁有像C++級別的傳輸性能。因此,Java也流行於編寫高並發系統。雖然Java的傳輸性能不比C++,但你可以不用考慮Java的安全性,可移植性和可維護性等問題(Java内部已經實現好了),而且Java有著更快的運行速度。安全性等問題會使一個沒有經驗的C++ 程序員編寫的應用程序變得更加緩慢和不可靠。
10、科學應用
現在Java經常是科學應用的默認選擇,包括了自然語言處理。這最主要的原因是因爲Java比起C++或者其他語言有更加的安全,可移植,可維護,而且Java有著更好的高級並發工具。
在上世紀90年代,由於Applet的原因,Java在互聯網中佔據了重要地位,但是這幾年,因爲Applet的沙箱模型的各種安全隱患,Applet越來越失去人氣,導致如今桌面Java和Applet幾乎都消失了。但是Java仍然作爲軟體行業默認的應用開發語言,而且在金融服務業、投資銀行和電子商務領域有著廣泛的應用。任何學習Java的人都認爲自己都有著光明的未來。