国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
[精華] []為什么要學(xué) Java?

[精華] []為什么要學(xué) Java?

 

[技術(shù)短文] 
為什么要學(xué) Java? 
如果你常玩計算機(jī),你可能知道 Java 是一個運(yùn)算平臺,而非咖啡或印尼的一個島。在 Java 技術(shù)誕生后的這五年,Java 變成了大家朗朗上口的名詞,種種的說法中,有些是事實,有也一些夸大不實。你可能會想知道:你該不該去學(xué) Java,我給你的答案是肯定的,請聽聽我的說法。 

Java 是什么? 
你必須先了解 Java 究竟是什么?當(dāng)人們提到「Java」,他們指的可能是: 

Java 程序語言:一個類似 C++ 或 Smalltalk 的對象導(dǎo)向程序語言。學(xué)習(xí) Java 程序語言類似學(xué)人類語言,都有一套規(guī)則和文法。 
Java 虛擬機(jī)器(JVM):用來執(zhí)行 Java 程序。JVM 有許多平臺的版本,比方說 Linux 和 Windows 版。有了 JVM,Java 程序就可以在不同的平臺上執(zhí)行,也就是所謂的「寫一次,到處都可執(zhí)行」。 
Java APIs(指的是函式庫的程序設(shè)計接口):是一組預(yù)先定義好的類別,可以在你的程序中直接使用。這些東西是免費(fèi)的,功能包含了像是檔案存取,網(wǎng)絡(luò)讀寫,圖形接口等等。 
當(dāng)人們提到「學(xué)習(xí) Java」,通常他們指的是 Java 語言和 API。大家可能對 JVM 所知不多,雖然對 JVM 有基本的認(rèn)識對 Java 的學(xué)習(xí)是很有幫助的。 


對象導(dǎo)向程序設(shè)計 
對象導(dǎo)向程序設(shè)計已經(jīng)廣為接受,凌駕于傳統(tǒng)的程序?qū)虺绦蛟O(shè)計。對象導(dǎo)向程序設(shè)計帶來許多額外的威力,但對象導(dǎo)向的學(xué)習(xí)曲線也較陡。如果你已經(jīng)懂一套對象導(dǎo)向語言,那么你學(xué) Java 就會容易多了。 

如果你不了解對象導(dǎo)向程序設(shè)計,你有一個漫長的旅程必須經(jīng)歷。以我自己來說,我花了約四年的光陰,才領(lǐng)悟了對象導(dǎo)向的精髓,不過這四年我的學(xué)習(xí)是蠻隨興的。如果你正在上好老師的課,或正埋首于一堆好書之中,或許可以縮短到幾個月就夠了。千萬別輕忽對象導(dǎo)向觀念的學(xué)習(xí),因為 Java 語法好學(xué),但是要寫出良好的對象導(dǎo)向程序可不容易。 

  
 

學(xué)習(xí) Java 的理由中,有些是技術(shù)性的,有些則是非技術(shù)性的。我先描述兩個程序的特色(垃圾搜集和例外處理),然后我告訴你:為什么在程序設(shè)計的領(lǐng)域中,Java 幾乎是必備的技能。我也會告訴你 Java 開發(fā)工具的信息和它們吸引人的售價。 

感謝老天,有「垃圾收集」真好! 
使用 C++,你可能一不小心就寫出會當(dāng)機(jī)的程序;如果使用 Java,情況就大不相同了。C++ 程序的頭號 bug 是內(nèi)存配置的失誤。C++ 的程序員很辛苦,必須直接配置一塊內(nèi)存,這塊內(nèi)存不用時還必須主動歸還。這聽起來簡單,做起來可不容易,所以 C++ 的程序常常會耗盡內(nèi)存。
Java 就不同了。雖然你仍需要主動配置內(nèi)存,但此內(nèi)存一旦不再使用時就會自動釋放,這就稱為「垃圾收集(garbage collection)」。垃圾收集機(jī)制使得寫程序時輕松許多,雖然因此執(zhí)行時效率稍微變差,但影響可能輕微得你根本感覺不到。 

例外處理機(jī)制讓程序更穩(wěn)固 
不管是什么程序語言,都可以輕易地寫出很糟糕的程序,但是使用 Java 想寫出很糟糕的程序就不容易了。原因之一是垃圾收集,原因之二是「例外處理機(jī)制」。良好的程序員寫出來的程序應(yīng)該在一些意外狀況發(fā)生時程序依然正常。檔案無法開啟,怎么辦?萬一讀檔讀到一半時出問題,怎么辦?如果你是用 C++ 或其它語言,你可能會疏于考慮而沒進(jìn)行這些意外狀況的處理。你可能會辯白:「我只是在試試看這樣寫能否行得通,我稍后會回過頭來把程序改得更周延」。但結(jié)果通常是:程序執(zhí)行正常后,你又會忙著寫新的程序,這么一拖后來就忘了回頭處理還不完整的部分。問題終究還是會爆發(fā)出來,你終究還是要面對爛攤子。
Java 強(qiáng)迫你在一遇到有可能出問題的地方就要準(zhǔn)備好因應(yīng)之道。Java 的 method 可以丟出例外,用來通知呼叫者程序出狀況了,這是相當(dāng)好的機(jī)制。即使你的程序要開啟檔案,你都必須在程序中寫好例外處理方式。 

到處都是 Java 
到處都可見到 Java,這是一大好處。如果你靠寫程序為生,你可能遲早都會接觸到 Java。Java 已經(jīng)漸漸地滲透到各領(lǐng)域,你可以寫出 Java servlet,將其掛在 Apache 或其它網(wǎng)頁服務(wù)器上,你可以寫出 Java applet,在網(wǎng)頁瀏覽器上執(zhí)行。你甚至可以用 Java 寫出數(shù)據(jù)庫的 stored procedure,然后安裝到 Oracle 8i 上。
我打賭,你身邊使用 Java 的同事也會漸漸多起來。1997 年開始,許多大學(xué)已經(jīng)用 Java 取代 C 當(dāng)作程序設(shè)計教學(xué)的語言。如此一來,Java 變成了程序員共通的語言。如果學(xué)習(xí) Java 所為你帶來的唯一好處是方便和同事溝通,那么也值得。
最后,我要提的是:「寫一次,到處都可執(zhí)行」。Java 早期版本(1.0 和 1.1)比較無法完全跨平臺,但現(xiàn)在就好多了。如果你想散布一個程序到多個平臺,又不想改寫大部分的程序,那么 Java 是絕佳的選擇。Java 2 現(xiàn)在已經(jīng)可以在 Linux、許多 Unix、和 Windows 上執(zhí)行了。
MacOS 9 的 Java 仍在 1.1 時代。然而,Apple 的下一代操作系統(tǒng) OS X 是以 Unix 為核心,這使得移植軟件的過程大大簡化了。我不知道 Apple 官方的說法為何,但是在今年三月的時候,我就已經(jīng)看到 OS X developer release 3 上面執(zhí)行著 Java 2。我很有自信 Java 2 將可以在 Linux、OS X、和 Windows 上執(zhí)行,這樣已經(jīng)涵蓋了大部分的計算機(jī)世界。 

Java 免費(fèi) 
Sun 提供 Java 相關(guān)的工具,讓你可以開發(fā)與執(zhí)行 Java 程序。你無須支付授權(quán)費(fèi),你也不用花錢買 Java 開發(fā)工具。當(dāng)然,Sun 這么做自有他們的如意算盤,Scott McNealy(Sun 的老板)恨不得能征服世界,但是不管怎樣,我們的的確確是不用付錢給任何人就可以享受 Java。
而且,Java 的 API 是珍貴的寶藏,讓我們可以輕易地寫出功能強(qiáng)大的程序。想寫網(wǎng)絡(luò)程序?已經(jīng)有 API 了!想連接數(shù)據(jù)庫?已經(jīng)有 API 了!想寫 GUI 程序?已經(jīng)有 API 了!或者是想做數(shù)字影像處理、音樂文件處理、字符串剖析、數(shù)字簽章?通通有 API 了!身為一個程序員,有這么多好用的 API 真的是再高興不過的事了,這些 Java API 讓我們不用「重新發(fā)明輪子」,省卻不少功夫。Java 有這么廣泛、標(biāo)準(zhǔn)、先進(jìn)的 API,簡直是讓 C++ 程序員忌妒死了。C++ 程序員常要花時間學(xué)一些 C++ 類別庫(比方說 MFC),然后到 Linux 上又得歸零學(xué)另一套(因為 Linux 上沒有 MFC)。一旦你學(xué)會了某 Java API,到哪兒都一樣不會變動,不用重學(xué)。
最后,Java 的信息文件都可從網(wǎng)站上免費(fèi)取得。如果你有網(wǎng)絡(luò)而且有空,你可以直接透過網(wǎng)絡(luò)學(xué)習(xí)對象導(dǎo)向、Java 語言、以及 Java API。Sun 在網(wǎng)站上放了一大堆很棒的線上教材。如果你習(xí)慣看書來學(xué)習(xí),市面上有一堆 Java 的書可以參考(比方說,我寫的 Learning Java)。 

日光浴 
Java 比其它語言來得有趣許多。Java 程序語言有許多「防呆裝置」讓你不會在程序中犯下大錯,所以你可以很快地把程序?qū)懲?,而如果使用其它語言必須要花更多時間。一份有趣的資料顯示:用 Java 寫程序比用其它語言快了四到十倍。我知道這聽起來很不可思議,不過你可以問問周遭懂 Java 的人看看。不用花很多時間找 bug,意味著你可以在海灘上休息更久,意味著你可以接受陽光的日光浴而非「屏幕的日光浴」。用 Java 為你賺進(jìn)的銀兩為自己買一副太陽眼鏡吧! 

本文作者:Jonathan Knudsen(著有「Learning Java」、「Java 2D Graphics」等書)
本文譯者:蔡學(xué)鏞

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
漫談EJB(1)
JNI官方規(guī)范中文版——簡介
從Java談軟件開發(fā)流程
DNA 比對,讓 C# 認(rèn)祖歸宗
用 XML 設(shè)計一個你自己的程序語言
第2章 Java程序設(shè)計的基本概念
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服