Java在現實生活中都用在哪些專案??

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

Java到底有沒有現實世界的應用?好吧,其實並不是只有你一個人對這個問題感到困惑。很多程式設計師在開始Java之前或者在畢業時選擇Java作為程式語言時也問過相同的問題。順便說一下,你可以通過在你計算機上安裝Java獲得Java在哪些地方使用的相關線索。Oracle聲稱超三十億的裝置上執行著Java,那是一個巨大的數字,不是嗎?大多數公司用一種或者其他方式使用Java。很多伺服器端使用Java來處理每天數十百萬的請求,高頻率的交易應用同樣也使用Java,例如LMAX交易程式,這套程式基於他們開創性的執行緒間通訊庫——Disruptor。在這篇文章中,我們將會看到一些更精確的例子。什麼種類的專案使用Java開發?在哪些領域內Java是佔統治地位的?現實生活中Java到底用在什麼地方?

工具/原料

Java開發工具

MyEclipse、mysql、tomcat等

方法/步驟

現實生活中的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在這個發展的領域有可能獲得主要的佔有率

注意事項

理性選擇Java開發!

相關問題答案