轉蔡學鏞:該學Java或.NET,歡迎大家討論,要對事不對人呵
原文連結
該學Java或.NET
翔威國際高階工程師蔡學鏞 06/11/2003
自從.NET問世以來,程式員都很關心的一個問題是“該學Java或.NET”。我也在掙扎,該“該繼續Java的研究,或者該開始準備培養.NET的知識”。當然,最好是能兩者兼顧,但是每個人的時間都很有限,想要兼顧兩者,其實不太容易。投入在.NET的時間越多,所能花費在Java的時間自然就少了,反之亦然。在資訊爆炸的時代,重要的不是資訊的取得,而是資訊的抉擇。資訊太多,時間太少,如果不能慎選適合的技術,只會平白浪費許多時間,斫喪自己的競爭力。
由於我喜新厭舊的個性使然,過去這兩年半,我著實花了不少時間在.NET上,對於.NET的認識越來越深,也修正了對於.NET原先的一些誤解,漸漸的認同.NET的許多技術理念。姑且不論我們對於微軟是褒是貶,單純就技術本身來看,.NET的確是很卓越的。
我並不是唯一一個這樣想的人。以“Thinking in Java”等技術書籍廣受歡迎的Bruce Eckel也是如此。他原本認為C和.NET只是Java的模仿者,並無新意,但是在深入瞭解之後,才發現C和.NET其實是改良版的Java,不管在各方面,都有比Java更突出之處。當我看到Bruce Eckel說出這樣的話,我感覺他說出了我的心聲。
下面,我試圖從許多不同的角度,簡單地比較Java和.NET。
從技術的觀點
通常新的技術會比舊技術更好,因為新技術可以從舊技術學到優點,且新技術可以摒除舊技術的缺點。NET比Java誕生的時間晚了六年,許多方面都比Java先進,當然是無庸置疑。
我的意思並不是Java這六年停滯不前,事實上,Java一直在進步中,只是有許多縫縫補補、修修改改的地方。例如,XML是在這六年之間出現的技術,所以.NET對於XML的整合可以說是天衣無縫,但Java是後來才把XML整合進來,且整合的程度比不上.NET。
從歷史的觀點
以史為鏡,可以知興替。如果你瞭解近二十年的軟體產業發展史,你會發現微軟挫敗的機會很小,即使是在頭幾場戰役失敗,也會在整場戰爭中獲勝。換句話說,.NET挫敗的機會不大。在Office軟體大戰中,WordPerfect、Ami Pro、Lotus 123如今安在?在作業系統大戰中,OS/2也已經銷聲匿跡。在瀏覽器大戰中,Navigator如今只整剩下小小的疆土。你一定可以舉出更多這樣的例子。
從市調的觀點
分析機構如Meta Group和IDC皆預測,在Windows Server 2003推出之後,未來幾年市佔率會大幅提高。我認為,在longhorn推出之後(2006年?),PC更是會全面.NET化。由於“精通”.NET知識可能需要費時兩三年以上,技術人員應該儘量提早學習.NET以為因應。
三年前(2000年)學習.NET恐怕有點太早,三年後(2006年)學習.NET恐怕有點太晚,而現在學習.NET正是時候,不會太早,也不會太晚。學會之後,可以立刻投入市場對於.NET技術的人力需求。
從行銷的觀點
任何人都不能否定微軟行銷功力的厲害。平面的行銷,包括在電子時報、IT Home等資訊媒體,甚至連商業週刊等非資訊媒體,都看得到相關的廣告。動態的行銷,包括PDC、TechEd.、修練講座、產品發表會…等活動,直接走入人群,接觸客戶。電子的行銷,包括MSDN中英文網站、微軟TechNet Flash新聞信…等,提供技術新知。
另外,還有多得拿不完的教學光碟,讀不完的線上檔案,看不完的Microsoft Press出版品…。我發現,微軟的作法和另一家公司的作法大相逕庭。微軟給我們一堆技術資訊,要什麼有什麼,但另一家公司卻常常把資訊當成“傳家寶”,捨不得釋放出來給大眾,連透過內部管道都還不見得拿得到,“好像很不希望有人學習他們正大力推廣的技術”。
從銷售指標的觀點
關於某個城市的消費者物價指數,麥香堡指標(BigMac Index)是一個很有名也很簡易的評估指標。我也發明了一個類似的指標,稱為天瓏指標(TenLong Index),可以用來評估IT技術的熱門程度。天瓏書局是臺灣最大的IT圖書門市,它的技術書籍銷售量,對於判斷技術的熱門程度,有一定程度的參考價值。
2002年全年和2003年上半年,天瓏書局在.NET書籍的銷售量都不高,但是在2003年下半年之後,.NET書籍已經有相當不錯的表現,這意味著最近準備採用.NET技術的公司已經增加了。
我記得在Java推廣初期,由於大家對於Java認知不夠,所以對於Java有許多FUD存在。現在微軟在推廣.NET上,也遭遇到許多FUD,這是微軟目前必須極力消除的障礙。如果你對於.NET也存有這些FUD,你不妨嘗試著去破除這些FUD,就如同七八年前破除Java的FUD一樣。你將會發現,就目前來說,.NET是一個非常有潛力的技術,值得投入。
該學Java或.NET
翔威國際高階工程師蔡學鏞 06/11/2003
自從.NET問世以來,程式員都很關心的一個問題是“該學Java或.NET”。我也在掙扎,該“該繼續Java的研究,或者該開始準備培養.NET的知識”。當然,最好是能兩者兼顧,但是每個人的時間都很有限,想要兼顧兩者,其實不太容易。投入在.NET的時間越多,所能花費在Java的時間自然就少了,反之亦然。在資訊爆炸的時代,重要的不是資訊的取得,而是資訊的抉擇。資訊太多,時間太少,如果不能慎選適合的技術,只會平白浪費許多時間,斫喪自己的競爭力。
由於我喜新厭舊的個性使然,過去這兩年半,我著實花了不少時間在.NET上,對於.NET的認識越來越深,也修正了對於.NET原先的一些誤解,漸漸的認同.NET的許多技術理念。姑且不論我們對於微軟是褒是貶,單純就技術本身來看,.NET的確是很卓越的。
我並不是唯一一個這樣想的人。以“Thinking in Java”等技術書籍廣受歡迎的Bruce Eckel也是如此。他原本認為C和.NET只是Java的模仿者,並無新意,但是在深入瞭解之後,才發現C和.NET其實是改良版的Java,不管在各方面,都有比Java更突出之處。當我看到Bruce Eckel說出這樣的話,我感覺他說出了我的心聲。
下面,我試圖從許多不同的角度,簡單地比較Java和.NET。
從技術的觀點
通常新的技術會比舊技術更好,因為新技術可以從舊技術學到優點,且新技術可以摒除舊技術的缺點。NET比Java誕生的時間晚了六年,許多方面都比Java先進,當然是無庸置疑。
我的意思並不是Java這六年停滯不前,事實上,Java一直在進步中,只是有許多縫縫補補、修修改改的地方。例如,XML是在這六年之間出現的技術,所以.NET對於XML的整合可以說是天衣無縫,但Java是後來才把XML整合進來,且整合的程度比不上.NET。
從歷史的觀點
以史為鏡,可以知興替。如果你瞭解近二十年的軟體產業發展史,你會發現微軟挫敗的機會很小,即使是在頭幾場戰役失敗,也會在整場戰爭中獲勝。換句話說,.NET挫敗的機會不大。在Office軟體大戰中,WordPerfect、Ami Pro、Lotus 123如今安在?在作業系統大戰中,OS/2也已經銷聲匿跡。在瀏覽器大戰中,Navigator如今只整剩下小小的疆土。你一定可以舉出更多這樣的例子。
從市調的觀點
分析機構如Meta Group和IDC皆預測,在Windows Server 2003推出之後,未來幾年市佔率會大幅提高。我認為,在longhorn推出之後(2006年?),PC更是會全面.NET化。由於“精通”.NET知識可能需要費時兩三年以上,技術人員應該儘量提早學習.NET以為因應。
三年前(2000年)學習.NET恐怕有點太早,三年後(2006年)學習.NET恐怕有點太晚,而現在學習.NET正是時候,不會太早,也不會太晚。學會之後,可以立刻投入市場對於.NET技術的人力需求。
從行銷的觀點
任何人都不能否定微軟行銷功力的厲害。平面的行銷,包括在電子時報、IT Home等資訊媒體,甚至連商業週刊等非資訊媒體,都看得到相關的廣告。動態的行銷,包括PDC、TechEd.、修練講座、產品發表會…等活動,直接走入人群,接觸客戶。電子的行銷,包括MSDN中英文網站、微軟TechNet Flash新聞信…等,提供技術新知。
另外,還有多得拿不完的教學光碟,讀不完的線上檔案,看不完的Microsoft Press出版品…。我發現,微軟的作法和另一家公司的作法大相逕庭。微軟給我們一堆技術資訊,要什麼有什麼,但另一家公司卻常常把資訊當成“傳家寶”,捨不得釋放出來給大眾,連透過內部管道都還不見得拿得到,“好像很不希望有人學習他們正大力推廣的技術”。
從銷售指標的觀點
關於某個城市的消費者物價指數,麥香堡指標(BigMac Index)是一個很有名也很簡易的評估指標。我也發明了一個類似的指標,稱為天瓏指標(TenLong Index),可以用來評估IT技術的熱門程度。天瓏書局是臺灣最大的IT圖書門市,它的技術書籍銷售量,對於判斷技術的熱門程度,有一定程度的參考價值。
2002年全年和2003年上半年,天瓏書局在.NET書籍的銷售量都不高,但是在2003年下半年之後,.NET書籍已經有相當不錯的表現,這意味著最近準備採用.NET技術的公司已經增加了。
我記得在Java推廣初期,由於大家對於Java認知不夠,所以對於Java有許多FUD存在。現在微軟在推廣.NET上,也遭遇到許多FUD,這是微軟目前必須極力消除的障礙。如果你對於.NET也存有這些FUD,你不妨嘗試著去破除這些FUD,就如同七八年前破除Java的FUD一樣。你將會發現,就目前來說,.NET是一個非常有潛力的技術,值得投入。
相關文章
- 求一.NET算術演算法.歡迎朋友們都進來討論討論.演算法
- C語言寫的磁碟排程演算法,歡迎大家來討論C語言演算法
- 既然大家如此熱烈討論 AI,那我來問一下,該如何學習 AIAI
- 關於最近學習的Less預編譯語言的筆記,歡迎大家一起探討~編譯筆記
- 歡迎學習LinuxLinux
- 如何講授和學習《軟體創新設計》課程,歡迎討論,敬請指正
- 學習 Java 你出過哪些錯?歡迎留言Java
- blog開張,歡迎大家來做客
- 桌面桌布分享【歡迎大家參與】
- 孩子要學Python了,別慌,它們或對你有幫助Python
- 個人實踐的基於 Laravel 的論壇,歡迎大家給予建議和評測Laravel
- 【GoLang 那點事】你眼中的異常和錯誤有什麼區別?歡迎留言討論Golang
- 個人部落格半成品展示,還有一些閒言碎語,歡迎大家一起來討論
- 對容器映象的思考和討論
- [125]討論資訊比對-盤點與對賬
- 遷移學習:該做的和不該做的事遷移學習
- Python語言如此受歡迎 學習Python要多長時間Python
- 相對於PHP,為什麼大家喜歡Python?PHPPython
- HHDESK新功能釋出,歡迎大家使用
- 應該要PHP轉Java了。。。PHPJava
- 成為前端,你不該學的東西,以及不該做的事兒!前端
- 討論:學習Java是否一定要學習前端常識麼?Java前端
- 歡迎大家觀顧【圖靈教育社群】圖靈
- 大家好啊,歡迎來到我的部落格
- 介面測試平臺,歡迎大家體驗
- 讓人工智慧學會幽默,人機對話不尷尬人工智慧
- 分享一下自己的簡歷, 拋磚引玉歡迎討論
- Java轉行學Python難不難?JavaPython
- 慕尼黑工業大學:研究發現榴蓮臭味或對人體有害
- 或許不該把《LOL手遊》與《王者榮耀》放到對立面了
- 歷史對話整理:古代戰爭討論
- [轉帖]2024-4-23 群討論:Java堆空間OutOfMemoryError該怎麼辦JavaError
- 追熱點不僅姿勢要對,工具也要對
- 歡迎大家關注我的公眾號啊
- 有興趣瞭解一下審批工作流歡迎來討論!!!!!
- 對於Linux,我們應該學什麼?Linux
- 對於效能測試的一些想法,歡迎交流
- mysql語句大全-工作中常用整理(歡迎大家在評論區繼續補充)MySql
- 對初學ERP人員的建議