偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Java歷史回顧:開發(fā)人員十大問答

開發(fā) 后端
近日來IBM欲收購Sun一事正逐漸成為事實,開發(fā)社區(qū)對Java等Sun產(chǎn)品的未來也猜測不一。本文為今年早些時候針對Java開發(fā)者們的一些問卷調(diào)查,對于理解Java在開發(fā)社區(qū)中的地位有著很大參考作用。

時到今日,Java已經(jīng)走過了 它輝煌的十幾年。我們邀請了世界各地的開發(fā)高手一同回顧Java語言發(fā)展的這十幾年,評析她今天所處的位置并預測其今后的發(fā)展趨勢。與會者(包括知名IT 企業(yè)Sun、IBM、BEA及Borland等)反映各異,但有一點是共同的——Java的地位將一如既往舉足輕重。

一、簡介

在過去的10幾年中,Java語言已經(jīng)變?yōu)橐粋€平臺,一個社團和一個生態(tài)系統(tǒng)。在這些環(huán)境下,軟件用戶、開源工程以及個體開發(fā)者等茁壯成長。今天,大約有四百五十萬Java開發(fā)者和大約1.4億臺設備上使用著Java。

我們不空談Java的成功故事。代替的是通過分發(fā)調(diào)查問卷(每發(fā)展一年提問一個問題)來搜集個人的Java使用經(jīng)驗,這些人大都是精于Java技術的開發(fā)者?;卮鹫甙ǜ鱾€層面的人,從咨詢師、作家到BEA、IBM、Sun等大公司的CTO和資深技術人員。

下面是一些我們收到的令人瞠目的回答。

1. 你是如何開始使用Java編程的?

Java吸引了每個人的注意,從程序開發(fā)人員到……

"當Java還稱為Oak的時候我就用它進行編程,大約是在1993年的下半年或者 是1994年的上半年。當時我在Sun Labs率領一個研究小組。一旦我們使用Java開發(fā),我們就注意到使用Java的最大優(yōu)點是,它能以一種合理的安全的方式從一個虛擬機遷移到另一臺虛擬機。"這是Jim Waldo(SunLabs的杰出工程師)的回答。

Rod Smith,作為IBM軟件開發(fā)小組中處理突發(fā)技術的副主席,寫道:"我們看到了,Java平臺是一種足夠好的技術,它具有在計算機工業(yè)界成為一支重大的 獨成系列的力量的潛力。我們認為,我們最好要趕上這班時代列車并采納Sun的Java技術而不再依賴于以前的模式-自己開發(fā)每一件東西。"

Ed Cobb,BEA Systems公司CTO辦公室架構標準的副主席,寫道:"我們可以選擇其它主流的面向?qū)ο笳Z言,但是Java提供了一種更好的組合特點使它適合于團隊環(huán)境下的大規(guī)模開發(fā)。"

"在過去十年中的大部分時間里,我受雇于Sun。因此,我不得不說,Java"突然來到"我的身邊。如果不是這一突然性的到來,我們也會需要另外一種似Java的東西來叩開業(yè)界中正迅速發(fā)展的網(wǎng)絡計算環(huán)境的大門。"-Rob Gingell,Cassatt Corporation的執(zhí)行副主席和CTO。

...對那些勤奮的計算機系的大學生們...

Michael Pilone,作為Blueprint Technologies的資深軟件工程師,他的回答是:"當時我盤算著我將來得找一份體面的工作,所以雖然我在大學中所學全部是C++,但是我還是另外自學了Java。"

"在我上碩士期間,我的指導教授讓我用Java工作,結(jié)果我用Java 1.0 beta版完成了我所有的功課。"-Raghu Donepudi,環(huán)球計算機公司的系統(tǒng)開發(fā)領導者。

...對那些熱衷于編程的狂熱者...

"我一畢業(yè)即用Java開始工作,我驚喜于Java的WORA的前景和Applets。"-Jack Herrington,作為Code Generation in Action (Manning)的作者和Code Generation Network的編輯。

"我甚至在1.0版本之前就開始學習Java了,因為其開發(fā)目標是作為微軟工具(VB和Visual C++)與Pascal語言的可選替代者",Laurent Ploix寫道,他是SunGard-Finance公司的工程總管和技術架構師。

"在1997年,我?guī)е槐臼謨宰鳛槎燃僮x物,在海灘度假的日子里,我沉浸在 Java的優(yōu)美之中。我轉(zhuǎn)向了Java,并宣布C++是一種傳統(tǒng)的語言,并發(fā)誓一旦選擇了Java,永不回頭。"-Vlad Patryshev,Borland公司Java Business Unit的前任R&D工程師。

2.Java宣稱的"編寫一次,到處運行"效果怎么樣(WORA)?一直以來,WORA的重要性改變了多少?

"Java虛擬機,至少在概念上,是Java背后最強有力的思想。它的確實現(xiàn)了它許諾的輕便性。"-Bruce Tate,J2Life, LLC(一家Java技術咨詢公司)的主席。

"應用服務器和J2EE應用程序可以在多種平臺上良好地遷移。我認為在客戶端上實現(xiàn)WORA還是相當值得懷疑的,也許永遠不會實現(xiàn)。"-Michael Pilone

"它對我簡直是一個不可捉摸的平臺。"-Vlad Patryshev

"Java的早期成功根本上在于WORA。與其它可選擇工具相比,Java帶給了(并將進一步帶給)SI(系統(tǒng)集成商),ISV(獨立軟件開發(fā)商)和軟件工程師們一個根本不同的經(jīng)濟環(huán)境。"-Rod Smith

"Java在WORA方面的性能:a)比任何它之前的工具要好;b)就目前而言,與另外一些可選工具相比仍然要好得多;c)將作為Java價值的一個關鍵部分繼續(xù)保持下去。"-Rob Gingell

"WORA每次都帶給我極大的便利。我總是在Windows平臺上進行我的Java開發(fā);但是,我總是毫不費勁地把這些代碼發(fā)布到Solaris 或者Linux 環(huán)境中去。"-Eric Bruno,一個獨立的咨詢師,擅長于軟件架構,企業(yè)Java和C++開發(fā)。

"你可以把字節(jié)代碼轉(zhuǎn)換成MSIL(MS中間語言),而且你可以在J#中運行Java程序。這使我們可以針對我們產(chǎn)品的Java和.net環(huán)境只保留一份代碼即可。"-Michael R. Smialek,Knowledge Dynamics的主席和CEO

"我經(jīng)??鏦indows,Linux和Sun Solaris開發(fā),測試和發(fā)布Java代碼,而僅需對XML配置文件作較少的改動。但是,隨著面向服務的結(jié)構的出現(xiàn),WORA的重要性已經(jīng)減弱了。"-Kyle Gabhart,作家和獨立咨詢師

"象Perl,Ruby和Python等語言一樣輕便。"-Jack Herrington

"一些人認為,由于通用操作系統(tǒng)的數(shù)目的下降,WORA將變得不再如以前那么重要。事實上,即使只有兩種合理的可能的目標平臺存在,WORA就一直是重要的。"-Ed Cobb

二、客戶端Java及開發(fā)工具選擇

3.你用Java編寫過多少代碼?估計你將來的工作有多少會用Java實現(xiàn)?

幾乎所的的回答者聲稱Java是他們主要的產(chǎn)品編碼工具,大多數(shù)人選擇他們的Java使用率超過70%。沒有人認為他們下一步的Java開發(fā)使用率會降低。

"去年,我們利用Java 技術開發(fā)出了800多個商業(yè)產(chǎn)品。幾乎我們所有的中間件都依賴于Java運行時刻庫。"-IBM的Rod Smith

"在我們的顧客中,我們?nèi)钥吹骄哂锌梢灶A料的潛在需求的大量C/C++功能第一型的應用程序。他們經(jīng)常愿意用Java進行開發(fā),而Java虛擬機技術目前正發(fā)展到正好能夠處理這些類型系統(tǒng)的時候。

在Web應用程序開發(fā)中,我想,當人們的應用程序變得越來越大且越復雜時,我們將看 到針對動態(tài)類型語言會出現(xiàn)一點后推力作用。他們將經(jīng)受運行時刻類型異常--事實上,他們早已認識到,如果采用象Java一樣的強類型語言的話,這是可以避 免的。"-BEA公司的Ed Cobb

4.你用Java開發(fā)桌面應用和服務器應用的比例為多少?如果你開發(fā)過桌面應用程序,你更喜歡用SWT還是Swing,為什么?

Bruce Tate對這一問題的回答總結(jié)了所有其他人的觀點:"服務器端Java正是它應有的位置。"

至于,客戶端Java開發(fā),眾說紛紜...

"Swing太復雜,太不可預測,太難學。SWT則好一些,但一般而言,Java在用戶接口設計上很不成功。"-Tate,《Better, Faster, Lighter Java》和《Bitter Java》的作者

"我認為SWT有更好的方法,它鏈接到本地lib庫文件以達到加快速度和一致性的目的,但是我并不喜歡這些API,因為它們暴露出太多的老式的編碼技術。相比之下,Swing有一個更好些的API,但是其中充滿錯誤、性能低下且設計糟糕。"-Michael Pilone

"我更喜歡SWT...它比Swing更具本地化,Swing而可以說只是粗略地實現(xiàn)了本地化。"-Ed Cobb

"我寫Swing應用程序,然后使用Java Web Start來進行發(fā)布。我還沒有出賣過我的SWT型程序,因為它僅有有限的跨平臺支持并缺乏可靠的MVC設計。"-Kyle Gabhart

5.你使用的Java開發(fā)環(huán)境是什么?

很明顯,當前流行的Eclipse框架和集成開發(fā)環(huán)境是大多數(shù)對這一問題的回答,因為其是Windows和Linux平臺的主流環(huán)境。只有另外少數(shù)的回答者指定了其它幾個選擇:

"我選擇的平臺是WinXP Pro。在安裝了Cygwin和另外幾個開發(fā)工具后,你就可以得到一個具有硬件支持的非常有用的系統(tǒng)了。"-Michael Pilone

"我特別喜歡J2SE 5。說到IDE,我更喜歡JBuilder,其次是IDEA。IDEA中有一些巧妙的實現(xiàn),但是良好的經(jīng)典的Jbuilder具有我需要的任何東西。"-Vlad Patryshev

"我一直使用emacs開發(fā)而用println進行調(diào)試。最近我在使用NetBeans,已驚奇于它給我?guī)淼木薮髱椭?-Jim Waldo

"請不要使用EJB!"-Laurent Ploix

"Visual Café。"-Smialek

"在必要的時候,我都使用vi進行開發(fā)。"-Kyle Gabhart

#p#

三、開源,JCP和對Java的希望列舉

6.JCP和開源社群誰在Java更新上的貢獻更大?

"到目前為止,應該說是開源的貢獻更大。而JCP在進行實際的開發(fā)實踐之前,推崇標 準化的作用。EJB,日志以及持久性一直是JCP中的災難。實際上JCP在拋棄著Java的根基。很難的問題在拐彎抹角變得易于解決,而容易的問題反而在 變得越來越難于解決了。"-Bruce Tate

"開放源碼的執(zhí)行領導著開發(fā)過程,而JCP僅僅是定義了一些標準。"-Laurent Ploix

"如果說純粹的革新,我將選擇開源。當工程中存在漏洞需要補全時,開源是能夠迅速得到響應的。而JCP目前是一種太慢的方式,以至于根本跟不上工業(yè)發(fā)展的步伐。"-Michael Pilone

"多數(shù)的革新經(jīng)歷了JCP模式。但是,在過去的幾年中,我們看到了在開源模式中的活動不斷增加的跡象。"-Rod Smith (IBM)

"為使得開源運動進行下去,JCP值得廣泛的信任,它對于Java生態(tài)系統(tǒng)的發(fā)展起 到提供一個群落中心的作用。任何一些非JCP標準的開源工程已經(jīng)探索了各式各樣的思想-一些是糟糕的,一些卻取得了令人驚喜的成績。JCP可以說是一場偉 大的創(chuàng)新運動的火車頭。"-Ed Cobb (BEA)

"JCP本身僅僅是定義了一些標準及相應的說明書,這在已有的工程實現(xiàn)中被得到支 持。作為編程者,我們不想根據(jù)一段現(xiàn)成的Java編碼來指導我們編程,而要根據(jù)一套成熟的說明書進行開發(fā)。真正有用的編程最開始往往是零碎的代碼片斷,經(jīng) 常經(jīng)歷一個先有代碼然后有規(guī)范的說明書的過程。"-Rob Gingell

"我找到了開源的主動性,特別是從Apache到當前最具創(chuàng)新性的有用的軟件中找到的。"-Eric Bruno

7.Sun應該開放Java的源代碼嗎?

你知道這個問題肯定會出現(xiàn)在問卷之中的。

"這一點并不重要。Java在走自己路的過程中,自身已經(jīng)建設得足夠強大。"-Bruce Tate

"如果Sun在做這樣一件有益的工作,為什么要打擾他呢?"-Raghu Donepudi

"不應該。如果它實現(xiàn)開源,那么我們能夠看到Java的許多技巧,這最終將導致一些問題的出現(xiàn),例如我們現(xiàn)在使用應用程序服務器時所遇到的問題。"-Rahul Kumar Gupta

"是的。Sun拒絕這樣做的唯一原因就是,Java完全是他們自己的產(chǎn)品,他們使用它來使自己的公司得以維持下去。"-Jack Herrington

"一方面,開源的思想是很有吸引力的,因為它將導致更多的錯誤在很短的時間內(nèi)就得以修改。另一方面,它可能導致分支分派的不匹配的JAVA虛擬機的出現(xiàn)。"-Michael Pilone

"不。我不相信一群普普通通的所謂天才人物就能取代那些負責管理極為健全的基本概念的大家們的科學思想-其中的大多數(shù)人甚至還不能明白這個問題。"-Vlad Patryshev

"開源社團的加入將會加速創(chuàng)新并推動該平臺的競爭性。"-Rod Smith(IBM)

"我們需要一個開源Java的主要原因是確保該平臺的生命力。如果將來Sun公司發(fā)生什么事情的話,開源的Java將列入我們的保險計劃中。"-Ed Cobb(BEA)

"我認為是應該的?!_源’Java并不要求Sun做什么事情,它只是要求另外一些公司或個人做一些事情。’開源’Java是不可避免的。我建議Sun積極地實現(xiàn)這一不可避免并為此帶來的益處做一些工作。"-Rob Gingell

"我對此并不關心"-Kyle Gabhart

8.你希望Java有怎樣的改進?

"從較低層次上,Java需要代碼的模塊化,擴展和一個更具動態(tài)化的模型,以及還需要增加很多的功能以使得應用程序開發(fā)更為容易,因為你不可能僅僅利用庫來實現(xiàn)一切。"-Bruce Tate

"內(nèi)省機制(用一個類來分析JavaBean的特性)使用起來太難且過于繁重。"-Laurent Ploix

"需要加入代碼使用許可證機制。"-Greg Magnusson,Cyborg Spiders的Web技術開發(fā)的奠基者

"應該提供由開發(fā)者來進行內(nèi)存管理的功能。"-Raghu Donepudi

"應該加入運算符重載功能。"-Jack Herrington

"目前迫切需要在Java中加入Jar版本機制。我記不清有多少次遇到XML分析庫沖突或者日志庫沖突了。"-Michael Pilone

"類對象。十年了,沒有任何改變。有大量的類對象需要加上去。"-Vlad Patryshev

"Java平臺目前已經(jīng)變得過于復雜。我們認為Java社團需要做出更好的工作來滿足獨立的和中小型的商業(yè)需要,這也是為了Java繼續(xù)發(fā)展、繁榮和成功的目的。"-Rod Smith(IBM)

"Java非常需要一個更為強壯的模塊化的系統(tǒng)。當前,我們所擁有的是一些.jar文件,其結(jié)果是成了’.jar文件地獄’。但是今天還很難描述一個互有聯(lián)系的模塊化的系統(tǒng)。"-Ed Cobb

"我原先希望Java能夠?qū)崿F(xiàn)的,過去的Java并沒有做到:關于日期和時間問題上有好幾處從一開始就是錯誤的;RMI/IIOP的引入在理論上是正確的但完全沒有必要;它自一開始就是自我封閉的。"-Rob Gingell

"對于類的加載和對象的Java運行時刻類型的關系的處理是一個錯誤,現(xiàn)在我們還在為之付出代價。你不可能真正確定出是否你的程序在編譯時刻是類型安全的。而且,如果你在做適當動態(tài)的任何操作,你經(jīng)常需要對一個給定類的正確加載作出猜測分析。"-Jim Waldo

"垃圾回收簡直是個噩夢。它有可能使得沒有經(jīng)過良好訓練的,懶散的編程人員進入到這個工業(yè)領域中。"

"Java需要增加的另外一些功能有:操作符重載;預編譯指令(#define,等等);把聲明與定義(頭文件和源文件)相分離的能力;唯一的、非本機的機器標志符(用于認證之目的)。"-Michael Smialek

"迫切需要加入Code-Behind(頁面代碼分離)技術?。?!ASP.net和頁面代碼分離技術所帶來的重用性與靈活性是巨大的。我希望JSP 3.0能夠朝這個方向發(fā)展。"-Kyle Gabhart

"我更愿意使用Java對象來存取操作系統(tǒng)而不是用JNI(Java本機接口),因為大多數(shù)的Win32/Linux API都包含在Java中了。"-Alexi Jordanov,OSGi技術公司ProSyst Bulgaria的項目領導者

四、Java帶給人們的最偉大的禮物與Java的未來

9.Java對軟件社群最大的貢獻是什么?

我們收到的大部分反映結(jié)果認為是平臺獨立性,Java平臺和該語言本身的創(chuàng)建以及他們創(chuàng)建的各種社團。

"有兩點:它使得更廣泛的用戶群可以接受垃圾收集語言;圍繞該語言涌現(xiàn)出了各種集成開發(fā)環(huán)境。"-Jack Herrington

"Java真正地震撼了許多東西,這包括迫使微軟設計出新的產(chǎn)品,諸如Visual Studio的進一步改進和.NET產(chǎn)品的出現(xiàn)等。由于Netscape選擇了Java,這使得客戶瀏覽器能夠執(zhí)行JavaScript。它使當今世界服 務器端開發(fā)也邁出了巨大的一步,受此技術影響的站點數(shù)以百萬計。"-Michael Pilone

"數(shù)百萬的學生不需要學習C++。"-Rob Gingell

"能使多家廠商貫徹實施的標準化API的建立。很多廠家競相提供該標準化接口的最好實現(xiàn),這給業(yè)界創(chuàng)造高質(zhì)量的解決方案帶來了強大發(fā)展動力。"-Kyle Gabhart

".NET"-Michael Smialek

10.Java的未來會如何?

"任何一種語言總是存在其有限的技術領先周期,Java也不例外。在某種意義上看,能超過Java技術會是一種非常有趣的事情。" - Bruce Tate

"當桌面和膝上電腦要被手持設備取代時,我們可能需要一種更簡單的更強有力的語言。"-Raghu Donepudi

"C#具有擠垮Java的潛力,它是一種更好的語言。"-Jack Herrington

"微軟在通過.NET以一種令人難以置信的速度發(fā)展。由于擁有Windows操作系統(tǒng)的大量客戶端用戶,所以他們比Java具有更大的優(yōu)勢。"-Michael Pilone

"在一些新技術被編程世界接受之前,至少要經(jīng)過幾年的時間。例如,看起來不超過5%的Java程序員能掌握Java泛型編程。請問,又有多少人可以掌握Lock/Condition?"-Vladimir Patryshev

"當技術朝著圍繞交互性的結(jié)構化(如面向服務的結(jié)構化)方向發(fā)展的時候,Java語言將繼續(xù)作為一種語言在計算機工業(yè)發(fā)展中占有重要地位。"-Rod Smith

"在某種意義上看,Java 虛擬機體系所要求的限制可能有點太嚴肅了。但是,任何一種新的挑戰(zhàn)者虛擬機登上舞臺并用之取代Java平臺都是一件很好的事情。"-Ed Cobb

"實際上我們可以開發(fā)出許多種不同的語言,其中一些可能與我們熟知的Java根本不同,但是仍舊保持應用程序二進制接口(ABI)。這是為什么Java將會保持長時期的重要性的原因。"-Rob Gingell

"Java將繼續(xù)作為一股巨大的力量存在于IT業(yè)中,但是一些瞄準市場的腳本語言將會在某些行業(yè)中進一步發(fā)展壯大。"-Doug Tillman,Grainger.com站點Java和Python技術的開發(fā)者

"任何一個人,只要他在該界業(yè)干過多年,都不會相信,存在一種技術會對要推翻自己的更新、更快或者更有效的技術產(chǎn)生免疫力。"-Kyle Gabhart

【編輯推薦】

  1. 漫步云端 Java開發(fā)者的新選擇
  2. Apache對JavaEE 6說“不”
  3. 愚人節(jié)的笑話?不再有Java 7?
責任編輯:yangsai 來源: 賽迪網(wǎng)
相關推薦

2011-03-31 10:22:41

Java開發(fā)

2020-06-28 09:56:48

.NET開發(fā)工具

2018-05-08 12:00:33

開發(fā)代碼Swift

2021-11-21 22:43:10

Java開發(fā)框架

2020-06-05 14:38:25

開發(fā)人員職位開發(fā)

2016-10-18 10:45:00

開發(fā)開源

2016-10-14 19:30:21

云計算云數(shù)據(jù)庫數(shù)據(jù)庫

2019-07-02 14:27:31

編程語言開發(fā)

2016-11-09 13:46:00

云數(shù)據(jù)庫

2012-07-13 09:18:29

2024-08-12 08:00:00

人工智能開發(fā)AI編程助理

2022-01-21 10:18:53

VSCode擴展插件

2012-10-11 09:12:02

2020-07-01 07:42:11

JavaScript開發(fā)技術

2015-07-09 10:18:36

Android開發(fā)工具

2023-02-26 01:47:13

2010-02-24 13:45:40

Python開發(fā)人員

2025-07-04 04:00:00

2022-03-14 14:11:22

Java開發(fā)編程語言

2015-06-04 14:41:37

WebPython框架
點贊
收藏

51CTO技術棧公眾號