學習java語言思想 瞭解java語言優勢

來源:互聯網
上載者:User

雖然Java技術是那麼的誘人,前景也似乎非常光明,但是不是已經有了C、C++等廣泛應用並且大獲成功的語言了嗎?微軟不是又在大力推廣他們的.Net技術嗎?LISP、Prolog等人工智慧語言在北美洲、歐洲的金融領域不是也有很大的應用嗎?學習Java編程,是不是一個明智的選擇呢?

帶著這些問題,讓我們來看看Java的優勢。

1.免費!

Sun免費提供用來開發Java應用程式的一切,你不必付任何的版稅。或許你會將信將疑:資本家搞共產了?實際上,Sun在Java上的收益確實不大,遠遠比不過壟斷Java應用伺服器技術的IBM和BEA公司,似乎有替別人做嫁衣之嫌。對此,Sun董事長、總裁兼首席執行官Scott McNealy是這樣解釋的:“Sun並沒有用Java賺錢,這就像使用英語不用上稅一樣,Sun並不通過Java本身來盈利,而是把Java應用到了業務中。”原來是放長線釣大魚!

與Java本身相比,Java API更是可貴的免費財富。想使用Socket操作網路?API中有;想串連到SQL資料庫?API中有;想給應用程式一個漂亮的使用者介面?API中有;想要處理數字圖形、播放音樂、解析字串或者建立數位簽章?API中全都有。

最後,Java發展了那麼多年,優秀的Java教程、技術網站數不勝數。Sun本身就提供了免費的教程,足夠自學的了。你可以在 http://java.sun.com/docs/books/tutorial/information/download.html下載這個教程。Bruce Eckel大師的名作Java編程思想(Thinking in java)更是不可不讀的佳作,許多狂熱愛好者甚至把它當做聖經一樣一頁一頁仔細揣摩。你可到作者的首頁http://www.BruceEckel.com免費下載此書的電子版。機械工業出版社也有引進台灣技術作家候捷的中譯本,可惜不是免費。

或許你會問,有了那麼多優秀的教程,還要你這個Java咖啡館幹什麼呢?嗯哼,雖然那些教程和技術文章是如此優秀,但並不適合初學者。Java咖啡館目的就在於協助你打好Java技術的基礎,掌握Java技術的主要脈絡,協助你邁出進入Java世界的第一步!

2.跨平台

“一次編寫,隨處運行”,Java系統可以運行在不同的作業系統和硬體上。隨著Linux的持續增長以及Mac OSX完全支援Java技術,跨平台的特性變得越來越有分量。

由於Java跨平台,Java API自然也是平台統一的。對程式員而言,沒有比統一的API函數能夠讓他們更欣慰的了——已經有了圓形的輪子,何必再從頭髮明輪子呢?我們拿Java API與C++的類庫相比便可以知道它的可貴之處。有Windows編程經驗的C++程式員肯定經曆過被MFC(Microsoft Foundation Classes,微軟基底類別庫)折磨的日子,學習曲線陡峭,沒有若干個月根本無法開始生產,一段時間不接觸遺忘率又高。據說,即使在微軟公司內部,除了MFC開發小組,誰都不樂意用它。即便你熟悉了MFC,能夠順利開發Windows應用程式,如果你要編寫一個Linux應用程式,MFC又派不上用場了,你必須學習Linux下C++開發的一套庫函數。還有UNIX、FreeBSD、Mac OS……你學得過來嗎?反觀Java API,作業系統,你愛誰是誰,只要編寫一次便可隨處運行!

3.在學術界獲得了強有力的支援

由於免費、跨平台、Java語言本身技術先進,在高校中,Java 已經成為許多學科研究、課程和計算的慣用語言,用Java做上機作業,一般都是鼓勵的。據我所知,北大、清華許多院系的研究生入學考試都可以用Java語言答題。實際上,用Java來完成這些工作,大多數情況下要比用C或其他語言簡潔得多,你可以把注意力集中在演算法等核心部分,從而獲得更高分數。

掌握Java技術的學生一般有更多的工作機會課餘兼職,拿到更高報酬,不但減輕家裡的負擔,更可以讓自己早日進入社會鍛煉。所以,如果你還在求學,學習Java,一定沒錯的。

4.簡單

與C++等語言相比較,文法上Java是簡單的。

謝天謝地,Java提供了記憶體回收機制。以往C++的開發中,最容易出錯誤的地方便是記憶體管理,申請的記憶體用完以後必須釋放,否則可使用的記憶體資源越來越少,直至耗盡系統資源而造成死機。而Java系統中,你可以任意申請記憶體,Java系統會在適當的時候自動釋放無用的記憶體資源。這個神奇的機制叫做“記憶體回收”,節約了許多調試錯誤的時間。

在Java中,要寫出低劣的代碼也不是一件容易的事情。一方面,記憶體回收機制堵住了記憶體流失的可能性,另一方面就是異常捕捉機制,它強迫你做最壞的打算。編寫程式時,難免會遇到一些意外,比如檔案無法開啟、網路讀取失敗等特殊情況。在C++等語言中是依靠傳回值來判斷的,如果一句句地檢查傳回值,那實在是太麻煩了。從而,程式員習慣性地忽略傳回值的檢查,並安慰自己一切都會好起來的。這便埋下了隱患。在Java中,Java的方法可以拋異常,而你必須應答異常,即使你不想進行任何操作。比如編寫開啟檔案的代碼,你不得不響應異常以防意外發生,否則程式根本不能夠通過編譯。未雨綢繆,使得Java系統更穩健。

5.公司專屬應用程式的成熟平台

這是Java技術目前最活躍的兩大領域之一。我們在前面Java技術介紹中已經提到了不少,這裡僅關注跟我們切身相關的優勢。

Java技術的公司專屬應用程式旨在提升企業競爭力,所以Java技術受到了企業的欣賞,市場份額是同類技術中最大的。同時,Java開放標準,所以供應商眾多。市面上有許多的應用伺服器、工具與構件可以選擇,從高端的BEA WebLogic、IBM WebSphere等商業軟體,到Tomcat、JBoss等開源的免費工具,一應俱全。作為Java技術的初學者,不需要任何花費就能夠進行Java公司專屬應用程式的自我培訓,以後若參與Java的商業項目開發,便可以無縫地把軟體移植到高端的商業平台上去。反觀.Net,想免費自學,不盜版是不可能的啦。

最後談談Java和Web服務。Web服務是軟體互操作曆史上的裡程碑,是技術發展的重要方向,是你絕不能不瞭解的技術。Sun公司是Java語言的發明者,而作為一個開放的跨平台的技術體系,Java在Web服務的開發方面起著非常重要的作用。Sun被接納為促進Web服務互動組織WS-I的董事成員後,作為活躍的參與者和業界的領導者,對Web服務互通性的促進,有著相當重要的意義,也為Java技術的含金量加上了關鍵的砝碼。

6.無線應用

這是Java技術目前最活躍的另一個領域,旨在提供更多、更方便的個人化服務的Java手機應用。未來幾年內,勢必將出現移動通訊電訊廠商和行動裝置應用軟體的巨大商機和激烈競爭,並且該趨勢很可能與電子政務、電子商務等其他發展相互影響。Java在手機市場的專有性和Java本身的開放性和標準性,使得越來越多的企業加入了Java陣營。

中國也不例外。2003年James Gosling博士首次來到中國,其中重要的一項工作便是與中國聯通結盟。

黃糖故事

Java之父——James Gosling博士

James Gosling博士以“Java技術之父”聞名於世。他是Java技術的創始人,作為Sun研究院院士,親手設計了Java語言,完成了Java技術的原始編譯器和虛擬機器。在他的帶領下,Java現已成為互連網的標準編程模式以及分布式企業級應用的事實標準,其跨平台的技術優勢為網路計算帶來了劃時代的變革。目前,Gosling博士積極致力於軟體開發工具的研究,以使軟體開發工具的功能更強大,更容易為開發人員所使用,確保應用、服務開發的迅速完成。

實際上,手機遊戲開發也是一項不錯的職業與機遇,成功的例子已經不在少數哦。

7.開放的Java社團——Java Community Process,JCP

JCP是一個讓Java出名的功臣。JCP創造了一個開放型論壇,讓同好在此交換意見,探索、定義新的平台,群策群力。Java歡迎競爭,因為只有這樣才能最大限度地提高領域內的技術,這點與對手微軟.Net技術大相徑庭。在Java的舞台上有很多演員,任何人都可以參與到JCP的過程中去,協助Sun決定Java的發展和未來,同時也挑戰自己的影響力。從而,你可以發現Java世界中新的名詞層出不窮,遠遠走在規範之前。而在微軟.Net技術的舞台上,你只能看到一個演員,那就是微軟自己。

8.開源組織或者非盈利機構的支援

開源組織是無政府主義的夢想——沒有政體,沒有所屬權,言論與行動自由,僅僅依靠渴望共用與交流的信仰及無私奉獻來維繫。Java世界中,開源組織與非盈利機構發揮到了極致,許多出色的工具都出自它們之手。比如JUnit、Cactus、Tomcat、Struts、JBoss、Eclipse、ANT、Xerces、Hibernate、Axis、AspectJ等等,許多工具還會出現在我們的咖啡館中,扮演重要的角色。

Java世界中,便宜無好貨絕對不成立,這些工具擁有足以和商業軟體媲美的品質,很多商業IDE還整合了這些工具。對Java程式員而言,生活不單單會變得輕鬆,更重要的,你能夠看到希望,有為大家貢獻自己力量的機會!



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.