1. 程式人生 > >學習java主要運用在哪些地方呢?

學習java主要運用在哪些地方呢?

對於初學者,剛剛開始學習Java,你可能會想Java用在什麼地方。你可能會想,除了《我的世界》這款遊戲外其他遊戲很少用Java開發,桌面工具如Adobe Acrobat、Microsoft Office也沒有用Java開發,甚至作業系統Linux、Windows也沒用。那麼人們到底會在什麼地方用到Java呢?

 

Oracle聲稱超三十億的裝置上執行著Java,那是一個巨大的數字,不是嗎?大多數公司用一種或者其他方式使用Java。很多伺服器端使用Java來處理每天數十百萬的請求,高頻率的交易應用同樣也使用Java,例如LMAX交易程式,這套程式基於他們開創性的執行緒間通訊庫——Disruptor。

 

什麼種類的專案使用Java開發?在哪些領域內Java是佔統治地位的?現實生活中Java到底用在什麼地方?

 

現實生活中的Java應用

 

在現實生活中,很多地方都用到了Java,從商業上的電子商務網站到安卓App,從科學應用到經濟應用,如電子交易系統,從遊戲如《我的世界》到桌面應用,如Eclipse、Netbeans、Interllij,從開源類庫到J2ME應用。

 

讓我們更詳細地看一下它們。

 

1)安卓應用

 

如果你想弄清楚Java用在什麼地方,你離這個目標不是太遠。

 

開啟你的安卓手機和任何一款App,它們是使用Java語言、基於Google Android API(和JDK類似)開發的。

 

數年的安卓支援已經有了很大提高,並且很多Java程式設計師已經成為了安卓app開發者。

 

順便提一下,像我們之前在how Android app works這篇文章中說到的那樣,安卓使用不同的java虛擬機器、不同的包,但是程式碼仍是用Java寫的。

 

2)金融業伺服器的應用

 

在金融服務中Java有很重要的應用。很多全球投資銀行像高盛、花旗、巴克萊、標準渣打銀行等其他銀行使用Java來開發前臺和後臺電子交易系統,提供解決方案和確認系統以及資料處理專案等等。

 

Java大多數用在開發伺服器端的應用,幾乎不用來開發前端,前端是從一個伺服器接受資料,然後處理它並把它傳送給其他程序。

 

Java Swing對交易員來說在開發胖客戶端的GUI方面還是很受歡迎的,但是現在C#很快地在這個領域獲得了市場佔有率,Java Swing在這方面被擠壓喘不過氣來。

 

3)Java Web應用

 

Java在電子商務和Web應用領域也是有很多的應用。

 

現在有很多使用Spring MVC、Structs2.0和類似框架開發的RESTful風格的服務。甚至件一個簡單的依賴Servlet、JSP和Structs開發的web應用在各種各樣的政府專案中很受歡迎。

 

政府的很多部門如衛生局、保險部門、國防部等部門都有他們使用Java開發的web應用。

 

4)軟體工具

 

很多有用的軟體和開發工具是用Java開發的,例如Eclipse、InetelliJ、Netbeans IDE。

 

我認為大多數使用的桌面應用也是用Java開發的。所以有一段時間,Swing在開發胖客戶端方面非常流行,尤其是在金融行業和投資銀行。

 

現在,Java FX正逐漸受到歡迎,但是仍不能成為Swing的替代品,而C#在金融領域內已經幾乎代替了Swing。

 

5)交易應用

 

第三方應用交易應用,作為更大的金融服務業的一部分也使用Java開發。

 

流行的交易應用像Murex也是用Java開發的,很多銀行都使用它們來連線前後端。

 

6)J2ME應用

 

雖然iOS和Android的出現幾乎抹殺了J2ME的市場,但是在低終端Nokia和使用J2ME的三星手機方面還是有很大的市場。

 

有一段時間,安卓上可用的遊戲、軟體幾乎全都是用MIDP、CLDC ,他們是J2ME平臺的一部分。

 

J2ME在一些產品如藍光光碟、機頂盒等等。WhatsApp很受歡迎的一個原因是因為對所有Nokia手機的J2ME平臺來說是可用的。

 

7)嵌入式領域

 

在嵌入式領域,Java也是有很大應用的。它展示了平臺是多麼的強大,你僅需130Kb就能使用Java技術(在智慧卡或者感測器上)。

 

起初,Java是為嵌入式裝置而設計的。實際上,這是Java最初“一次編寫,到處執行”初衷的一個部分,現在看起來獲得了成功。

 

8)大資料技術

 

Hadoop和其他大資料技術以這樣或那樣的方式使用著Java,例如Apache依賴Java的HBse和Accumulo(開源)以及ElasticSearch。

 

但是Java在該領域並不佔統治地位,因為有其他技術如MongoDB是用C++開發的。

 

如果Hadoop或者ElasticSearch發展壯大的話,Java在這個發展的領域有可能獲得主要的佔有率。

 

9)高頻率的交易領域

 

Java平臺在現代JIT技術的幫助下,它的效能特性已經有了很大提升,傳送效能已經到了C++水平。

 

由於這個原因,Java在開發高效能系統方面還是很受歡迎的,效能與機器語言相比稍差一些,但是你可以安全地折衷——輕便、可維護帶來更快地速度。對一個缺乏經驗的C++程式設計師來說,只能使應用變得更慢和不可靠。

 

10)科學應用

 

現在,對於科學應用來說Java經常作為一個預設的選擇,包括自然語言處理。這種現象的主要原因是Java更安全、輕便、易維護,並且與C++和其他語言相比有更好的高階併發工具。

 

在九十年代,Java由於Applet在因特網領域佔有重要地位,但是幾年後,由於Applet沙箱模式的各種安全問題,Applet失去了風頭。現在,桌面Java和Applet幾乎滅亡。

 

Java作為軟體開發公司預設的開發語言,在金融服務行業、投資銀行和電子商務web應用領域獲得了很大應用,任何學習Java的人員都會為自己贏得光明的未來。

 

Java 8更加強了一個信念——在未來的幾年,Java在軟體開發領域繼續佔有重要地位。