iT邦幫忙

0

[每日一問](29)該學Java還是該學.NET?

  • 分享至 

  • xImage

Java和.NET是台灣業界程式開發兩大主流,對於有心想以程式開發當作職業的人,你覺得該如何在這兩者之間選擇?或者你有什麼更好的建議?

iT邦小財神請大家來聊一聊囉。

問題到期時,回答獲得最多推的人,iT邦小財神將贈送儲值500元的iThome icash卡給這位人氣王哦。

詳細辦法快看每日一問活動頁

另外,還這些問題可以搶答:
每日一問女性IT人員在職場環境中,會被當成男生來用嗎?
每日一問瀏覽器「我的最愛」中,IT人都放了哪些網站?
每日一問IT人要如何才能拿到百萬年薪?
每日一問如果遇到態度不佳的使用者,你會如何處理呢?
每日一問甫出校園的IT人,該如何作好職涯規劃呢?
每日一問你用過價格高的嚇人的IT產品嗎?

看更多先前的討論...收起先前的討論...
magita iT邦新手 3 級 ‧ 2008-05-12 15:47:33 檢舉
小財神 總算問了個像樣的問題
我昨天還在懷疑小財神應該不是 IT人 應該是圈內人(8掛圈)?
xxxyyyzzz iT邦研究生 1 級 ‧ 2008-05-12 16:56:08 檢舉
個人認為應該以學習.net為主要方向
魯大 iT邦高手 1 級 ‧ 2008-05-12 17:08:16 檢舉
個人認為.net才是學習的方向
jhwang iT邦好手 10 級 ‧ 2008-05-12 17:14:32 檢舉
我比較喜歡 Java 說,大學跑去選修 Java,因為覺得比較屌...
不過我現在沒在寫程式,所以我是來亂的
cyrilwang iT邦新手 3 級 ‧ 2008-05-12 18:34:58 檢舉
這裡有一篇討論Java被其他語言(平台)瓜分市場的報導,不過在企業市場Java仍有其優勢與之前強大的占有率。企業市場的工具並不是說換就換,所以這方面對Java是比較不用擔心的。

http://www.infoworld.com/archives/emailPrint.jsp?R=printThis&A=/article/08/02/21/08NF-java-react_1.html
wordsmith iT邦高手 1 級 ‧ 2008-05-14 18:16:02 檢舉
我想會問這種問題的人,通常背後想問的是,學哪一種技術比較不會被淘汰,或是學哪一種技術的前途、收入會比較好。

對高手而言,學什麼都快,學什麼也都有辦法,不過這個行業不是只有高手,還有很多初入行的,或是想轉換跑道的IT人,他們才會想要知道這種問題的解答。

事實不管學哪種技術,一定都有高成就和低成就的人,而以兩個陣營都各自擁有如此廣泛的開發人員和使用的企業,一時之間也不會說衰退就衰退。不過在台灣本地,會不會出現比較明顯的趨勢,例如說微軟的開發人員越來越多,或是企業採用微軟的技術越來越多這樣的情況產生。

或者各位IT人身邊學習.net的人越來越多,或是從事Java開發工作的人薪水比較高等等。如果大家能分享這些資訊,我想對於想入行的人,就有一定的參考價值了。

像前面有人說,.NET的文件和資源比較多,我覺得這個資訊就很有幫助。我也常看微軟有辦一些免費的研討會或提供線上資源,這些對開發人員都是很友善了。

不過我自己是不太喜歡龐大Visual Studio,不過話說回來,近年來的IDE個個都胖得要死,像我自己較常用基於Eclipse的Apatana,也是肥得要死,本來想說換了個新筆電跑起來會比較快,結果也沒差多少(離題了...)。
davistai iT邦大師 1 級 ‧ 2008-05-15 09:21:38 檢舉
很好奇,為什麼antijava大沒有在這兒回答??
既然你誠心誠意的發問了
我就大發慈悲的告訴你

答案一:因為我已經 check out 了
答案二:因為答案一,所以不必再勉強自己回答這種沒什麼營養的問題了 ^_^
pcmike27 iT邦新手 4 級 ‧ 2008-05-16 12:14:02 檢舉
請問什麼是check out?
davistai iT邦大師 1 級 ‧ 2008-05-17 23:11:57 檢舉
唔@@
不過,您的冷知識不知跑那兒去了??
doz iT邦好手 8 級 ‧ 2008-05-18 15:17:50 檢舉
話說回來

有out 就有in,咩...
antijava....有空就回來check check in吧
http://ithelp.ithome.com.tw/question/10001989
搜尋一下就有啦..
davistai iT邦大師 1 級 ‧ 2008-05-19 16:49:21 檢舉
antijava大好像不怎麼認為這是好問題的樣子 :P
jan0939 iT邦研究生 2 級 ‧ 2008-05-19 16:59:04 檢舉
拼得很激烈喔...
funkent iT邦高手 1 級 ‧ 2008-05-19 19:49:11 檢舉
想不到大家資源(分身)這麼豐富,竟然拼到三強鼎立,第一次出現打延長賽。
amber093100 iT邦研究生 1 級 ‧ 2008-05-19 20:38:51 檢舉
三強都好厲害,朋友真多
funkent iT邦高手 1 級 ‧ 2008-05-19 21:36:45 檢舉
該是要多交一些朋友的時候囉XD
skite iT邦大師 5 級 ‧ 2008-05-19 23:12:52 檢舉
看誰的免費E-mail帳號多,衝啊!!!
鐵殼心 iT邦高手 1 級 ‧ 2008-05-20 09:46:54 檢舉
最新消息...三強各得ㄧ分
延長賽持續進行中.
funkent iT邦高手 1 級 ‧ 2008-05-20 22:57:24 檢舉
大家覺得可以衝到多高,不如大家來幫忙上百推,三強上百推應該夠棒吧
skite iT邦大師 5 級 ‧ 2008-05-20 23:02:04 檢舉
沒看過這麼精彩的PK戰,原來IT邦有這麼多人啊~ XD
funkent iT邦高手 1 級 ‧ 2008-05-20 23:03:52 檢舉
IT不多人的話ITHome怎麼活阿,大家來三強百推吧
skite iT邦大師 5 級 ‧ 2008-05-20 23:10:46 檢舉
喔喔喔!fillano打出一隻滿貫彈,再下4城!
鐵殼心 iT邦高手 1 級 ‧ 2008-05-20 23:14:59 檢舉
大逆轉耶
比A-Rod厲害!
davistai iT邦大師 1 級 ‧ 2008-05-21 10:37:30 檢舉
Tecksin大,我突然超懷念您的杜鵑窩理論^^而且一下子擠進不少人哩..
davistai iT邦大師 1 級 ‧ 2008-05-21 10:40:49 檢舉
能學到那一種都好, 兩種都學豈不更佳? 但如果您忒喜歡某一種,就認真去學, 學成精, 至於未來如何, 交給自由市場去決定吧!! 像 antijava 大早在名字就已表明他是屬意那一方了, 好樣兒的!!
lukechang iT邦研究生 1 級 ‧ 2008-05-21 12:53:00 檢舉
F大大 我知道您今晚又準備呼朋引伴 來給他一夜長大 一夕變天
我拭目以待 別讓我失望
鐵殼心 iT邦高手 1 級 ‧ 2008-05-21 13:29:09 檢舉
歡迎本尊 分身 影子 代言人 一起加入IT杜鵑窩的行列
魯大 iT邦高手 1 級 ‧ 2008-05-21 13:58:42 檢舉
是杜鵑窩,還是你tecksin大的後宮??
mmm12345 iT邦研究生 1 級 ‧ 2008-05-21 15:12:31 檢舉
不能在長大了,會爆的
mmm12345 iT邦研究生 1 級 ‧ 2008-05-21 15:13:25 檢舉
需要朋友幫忙的快通知
mmm12345 iT邦研究生 1 級 ‧ 2008-05-21 15:46:36 檢舉
又延長,如朋友夠多的一天時間趕快去從0推到第一
魯大 iT邦高手 1 級 ‧ 2008-05-21 18:39:32 檢舉
這樣會不會太累啦..
從0推到第一..
這太明顯了啦..
skite iT邦大師 5 級 ‧ 2008-05-21 18:47:03 檢舉
這應該是IT邦有史以來第一個超過50推的…
lukechang iT邦研究生 1 級 ‧ 2008-05-21 19:04:52 檢舉
50推 那只能請養樂多了 請藍山咖啡鐵定會賠死
skite iT邦大師 5 級 ‧ 2008-05-21 19:31:23 檢舉
雖然我也有推,不過可以不用請我啦,這樣有省到嗎? 呵呵
funkent iT邦高手 1 級 ‧ 2008-05-21 21:02:00 檢舉
朋友不夠多,真心的朋友就那幾個,剩下都是酒肉,好朋友都用光囉,有沒有新朋友幫忙支持我阿 XXD
funkent iT邦高手 1 級 ‧ 2008-05-21 21:05:33 檢舉
TO skite大大

您的支持好比千軍萬馬,有您這一票我已經滿足了,雖然朋友不夠用,但是得到您這一票,就算做牛做馬也會好好為IT邦幫忙貢獻知識。
funkent iT邦高手 1 級 ‧ 2008-05-21 21:07:14 檢舉
沒那麼多真心朋友啦,沒有一推要換20的藍山,來25個朋友我就賠本啦XXD
magita iT邦新手 3 級 ‧ 2008-05-21 21:44:04 檢舉
我只說跟以前比起來是個像樣的問題 沒說是好問題
從許多爭議的問題與回答 管理員都不處理 IT邦的專業著實令人感到憂心
也許過2天 IT邦變成討論巧克力的論壇 管理員都不會發現
davistai iT邦大師 1 級 ‧ 2008-05-21 23:44:20 檢舉
嗯,了解^^
至於您所提的問題已經po出來了,應該更會瞧見的^^
魯大 iT邦高手 1 級 ‧ 2008-05-22 11:11:38 檢舉
這算是奉承還是諂媚
好大一顆定心丸..
skite大,不要噎著啦..
funkent iT邦高手 1 級 ‧ 2008-05-22 11:13:32 檢舉
skite大對it邦的貢獻大家有目共睹阿(堪稱最佳解達人)
mmm12345 iT邦研究生 1 級 ‧ 2008-05-22 14:30:36 檢舉
三人蓄勢待發,準備衝刺,差距甚小,誰能勝出,拭目以待.
mmm12345 iT邦研究生 1 級 ‧ 2008-05-22 14:33:41 檢舉
那如果今天又延長,號召IT邦友另推一個新人,不然很無趣
davistai iT邦大師 1 級 ‧ 2008-05-22 14:46:26 檢舉
說得好緊張喔,不知道現在賭盤多大啦^^
mmm12345 iT邦研究生 1 級 ‧ 2008-05-22 14:55:32 檢舉
看來會跟每日一問(30)一樣,來到最後60秒最多朋友,推推推........,贏了

賭盤......這不能賭【人為操作,有黑道介入】
pudding iT邦新手 4 級 ‧ 2008-05-22 15:39:07 檢舉
最後是cafequeen的一票搞定,不知道她是java還是.net的呀
魯大 iT邦高手 1 級 ‧ 2008-05-22 15:43:00 檢舉
cafequeen的一票值500元 iCash一張..
brianc iT邦研究生 1 級 ‧ 2008-05-22 15:43:50 檢舉
喔,原來是cafequeen投出致勝的一球...要請喝咖啡啦
lukechang iT邦研究生 1 級 ‧ 2008-05-22 16:18:42 檢舉
shen129 對不起 我晚了一步 想不到就是天堂與地獄之遙
davistai iT邦大師 1 級 ‧ 2008-05-22 16:46:53 檢舉
好好笑喔^^那麼嚴重??
davistai iT邦大師 1 級 ‧ 2008-05-22 16:47:49 檢舉
想不到,cafequeen是為了解決此場風雨而重出江湖?
mmm12345 iT邦研究生 1 級 ‧ 2008-05-22 17:03:08 檢舉
恭喜賀喜最後一張icash在cafequeen幫忙下由fillano獲勝
lukechang iT邦研究生 1 級 ‧ 2008-05-22 17:15:47 檢舉
fillano 煩請盡速回覆IT邦幫忙 您的聯絡方式
大夥都在等您 才能開伙
jan0939 iT邦研究生 2 級 ‧ 2008-05-22 17:17:44 檢舉
啊,結束了啊? 到底那一方獲勝? .NET 還是 JAVA?
小財神 站方管理人員 ‧ 2008-05-22 17:35:09 檢舉
恭禧fillano 榮獲本題的人氣王~

iT邦小財神將贈送fillano 價值500元的icash卡一張。

我們將以Email聯絡後續的寄送獎品程序。
funkent iT邦高手 1 級 ‧ 2008-05-22 19:24:45 檢舉
想不到沒有到百推就勝出,遺憾阿
PS:才能開伙是什麼意思阿?
lukechang iT邦研究生 1 級 ‧ 2008-05-22 20:49:05 檢舉
拿到ICash以後 我的中午要靠7-11的涼麵維生
大家不是嗎?
還是都要拿去買藍山咖啡?
funkent iT邦高手 1 級 ‧ 2008-05-22 22:05:34 檢舉
我的icash已經花掉一半囉 XXD藍山不便宜ㄚ
fillano iT邦超人 1 級 ‧ 2008-05-23 09:58:27 檢舉
謝謝大家。

疑,要跟誰聯絡阿?
......fortune也沒留下聯絡方式阿
恭喜你啦,應該是會用email連絡吧!
davistai iT邦大師 1 級 ‧ 2008-05-27 09:49:12 檢舉
Fillano大,恭喜恭喜,您這張iCash可真是印證了真金不怕火煉,好樣兒的!!
pqr0007 iT邦研究生 1 級 ‧ 2009-01-01 18:03:16 檢舉
...thanks...
doesjudas iT邦新手 2 級 ‧ 2009-05-27 15:56:01 檢舉
受夠 MS 的話, Java 應該還是首選.
小弟的吃飯工具卻不是這兩種.(用了一點點Java)
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
143
fillano
iT邦超人 1 級 ‧ 2008-05-12 16:14:19
最佳解答

這個問題大有問題耶,雖然大家也大致上知道意思,但總覺得這樣比較有點怪。

首先,.net應該是指microsoft以他的common language runtime包裝好的程式庫,可以使用這個程式庫的語言有vb、c#、vc、甚至jscript、f#、j#等等。而Java就是一個語言而已。

如果要比較,c#是一個非常新穎的語言,微軟在他身上下了不少功夫,拿它跟java比我覺得可以比較,也各有優點。拿vc跟java比,也是各有擅場。

至於.net,我想沒東西可以跟他比,因為除了微軟,沒有一家在做這種萬有的程式庫。另一個好處是不用花錢。

java的library可以算另一種類型,有非常多的廠商開發非常多的東西,可以自取所需,有的要花錢,有的不用花錢。連執行java的虛擬機器都有許多廠商在做哪。除了sun的hotspot,至少還有ibm、bea、甚至開放源碼的例如apache.org的harmony或是gnu的gij等等。

到底要使用怎樣的技術,我想到頭來還是習慣以及願打願挨的問題,該學哪個?對初學者大概算是重要問題,但是如果已經熟悉十種語言,那只是多一個可以利用的工具罷了。另外通常更重要的還是專案的考量,有許多軟體並不是在windows作業系統上面跑的。到底要用哪個語言與技術平台,最後還不就是專案的需求罷了。

126
yha88800
iT邦好手 3 級 ‧ 2008-05-12 15:39:07

自從.NET問世以來,程式員都很關心的一個問題是「該學Java或.NET」。我也在掙扎,該「該繼續Java的研究,或者該開始準備培養.NET的知識」。

當然,最好是能兩者兼顧,但是每個人的時間都很有限,想要兼顧兩者,其實不太容易。資訊太多,時間太少,如果不能慎選適合的技術,只會平白浪費許多時間。

我著實花了不少時間在.NET上,對於.NET的認識越來越深。姑且不論我們對於微軟是褒是貶,單純就技術本身來看,.NET的確是很卓越的。

下面簡單地比較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資訊媒體,甚至連商業週刊等非資訊媒體,都看得到相關的廣告。動態的行銷,包括修練講座、產品發表會…等活動,直接接觸客戶。電子的行銷,包括MSDN中英文網站、微軟TechNet Flash新聞信…等,提供技術新知。

從銷售指標的觀點

關於某個城市的消費者物價指數,麥香堡指標(BigMac Index)是一個很有名也很簡易的評估指標。我也發明了一個類似的指標,稱為天瓏指標(TenLong Index),可以用來評估IT技術的熱門程度。天瓏書局是台灣最大的IT圖書門市,它的技術書籍銷售量,對於判斷技術的熱門程度,有一定程度的參考價值。

2002年全年和2003年上半年,天瓏書局在.NET書籍的銷售量都不高,但是在2003年下半年之後,.NET書籍已經有相當不錯的表現,這意味著最近準備採用.NET技術的公司已經增加了。

70
john651216
iT邦研究生 1 級 ‧ 2008-05-12 15:46:07

未來是以.net為主,應該以學習.net為主要方向

111
funkent
iT邦高手 1 級 ‧ 2008-05-12 18:05:33

原文來自:MS net
Java 平台和 .NET 主要有兩個層次上的明顯差異:基礎技術上的差異,以及基礎理念的差異。
技術上的差異
在結構部分,.NET是屬於第三代的網際網路,而Java是屬於第二代的網際網路。
第一代的網際網路只能瀏覽—僅提供靜態的資訊,人們只能使用瀏覽器來觀看靜態的網頁資訊(例如電子佈告欄)。

第二代的網際網路著重於與人們互動的應用程式—使用者可以建立自訂的購物籃或者自行訂閱入口頻道以獲取資或影響交易行為。

第三代的網際網路則網路上的應用程式可與其它應用程式產生互動—例如,你的連絡人管理程式(contact management)可與你的行事曆程式互動,並協助你排定與客戶在Toledo的會談,接下來行事曆程式會與班機預訂程式聯繫,這時侯你的全球使用者喜好設定(universal user preferences)將幫你預定合適的班機,接著與你的牙醫更改你當天早上的預約。而你只要直接與你的連絡人管理程式(contact management)連線,所有其它的應用程式都會與其它應用程式產生互動,為你做好妥善安排。

.NET是語言獨立的平台,開發人員可以自由選擇他們熟悉的程式語言來開發應用程式,並可以與其它程式語言開發的應用程式產生互動。反之,Java是一種特殊規格的語言,意即它不能提供開發人員語言的選擇性。Java元件 (Java beans) 更不能與其他的程式語言開發的應用程式相容。

.NET以XML與SOAP所為基礎開發的環境。以實際標準來監督實際標準架構。反之,Java沒有任何正式標準架構,而是完全由個別單一的廠商,昇陽(Sun)所擁有和控制。
· .NET的設計是用來讓企業可以完全掌控利用其現有的資料,無需分化或取代,而Java則要這麼做。運算系統分類與資料儲存、IT資源的稀少性與市場即時性的壓力都是現實的因素,然而.NET把這些因素都考慮在內了。
理念的差異
打從一開始的時侯,當微軟董事長比爾蓋茲表達出「每家每戶的桌上都要有電腦」的願景時時,微軟即將其思考核心放在每個人都要使用電腦上。這個思考核心以今日公司的新願景來闡述,即是「透過功能強大軟體服務,讓每個使用者無論在任何時間、任何地點,以任何裝置都能夠即時取得所需要的資訊以達事半功倍的效果。」,而發展.NET的目的正是在使這個願景夢想成真。
在微軟的願景中,電腦操作要簡單、售價要合理,從小朋友到銀行的出納員乃至於退休的銀髮族都會使用電腦來使生活更為方便,軟體則必須便宜且豐富,並不斷更新,讓每個人都付得起而且願意使用。
開發人員的需求也一直占有相當重要的部份。早期在Microsoft BASIC時代,他們是微軟的最早的顧客及愛用者,從那時起,開發人員的數量便不斷成長。微軟瞭解開發人員對於問題都有不同的解決方式,對於應用程式也有不同的優先考慮。 在微軟的眼中,他們必須要選擇他們所專精的語言,無論COBOL、SmallTalk、LISP、BASIC、C、 C++、Eiffel、Prolog、Pascal或其他的語言。他們都必須利用最好的工具來符合他們的需求,並花時間建立新的應用程式,讓人們可以獲得更多的效能,過更好的生活。相反的,他們不應該花太多的時間一次又一次地重覆寫著相同的應用程式,這樣的做法只是一直在執行過時的軟體而已,一點利益也沒有。簡而言之,微軟對程式開發人員的最大支援是能創造最高產質,使得他們能夠建立更新更好的應用程式。
另一種完全相反的觀念是,無論它是否可運用在處理手邊棘手的問題,或是是否可以迎合開發人員的偏好或技巧,程式設計者都希望使用單一的程式語言來開發產品。開發出的應用程式都期待著能被建置在大型、昂貴的電腦上面運作,而事實上,這些設備所需的價格絕不是一般小型企業或個人所能負擔起的。程式設計者去依其習性去鑽研程式某種程式語言以利其解決問題的做法已經不妥當了。反之,想要繼續在這樣的觀點下發展的程式設計者需要專精一種特定的程式語言─一種來自一個大公司(昇陽,Sun)的特別的概念下的語言,其公司的核心事業是架構在賣價格昂貴、專為少數族群設計的伺服器,而不是創造價格合理、適用大眾的電腦。這就是Java代表的意義。
追根究底之後,Java與.NET最大的不同點是源於一個簡單的問題:電腦是要給所謂菁英份子使用或是給每個人使用?

所以 .NET +1

70
jcck20008
iT邦研究生 1 級 ‧ 2008-05-13 04:35:33

我想是 。NET
雖然 都訴求的是平台獨立 但是得靠廠商開發
昇陽好像沒有微軟強

72
richardhsieh
iT邦研究生 4 級 ‧ 2008-05-13 08:05:30

個人覺得還是要看環境
說實話我是硬體的,但是有一點點的軟體,可是我現在的環境,逼我去學的是JAVA 跟LOTUSSCRIPT,學甚麼還是要應用到實踐面上,即使Jave或是.NET學得很好,也要有環境來實踐跟應用,不然就會成為伊卡吊詭(Icarus Paradox),把自己侷限在Java或是.NET裡。

72
aliceyeh
iT邦新手 2 級 ‧ 2008-05-13 09:00:15

學什麼都好, 只要深入的懂一種語言, 基礎打穩了, 要進入其他語言就不困難, 如果經驗不多, 最好是從.NET 著手, 支援比較充足, 進入的速度比較快, 經驗夠的人, 直接從 Java 入行是比較好的, 畢竟 .NET 的包袱頗重, 延習 VB6 及 C++ 的傳統下來, 感覺上在程式語法的規劃不夠清晰, 頗亂的, 不容易理解OO語言的精神, Java 的語法就沒有那麼多包袱, 由 Java 的語言來建立OO的觀念是比較理想的, 但是很多東西SDK是不支援的, 各家支援又不一致, 就必須要靠自己來, 對於初學者來說, 不只是困難重重的問題而已。

126
shen129
iT邦新手 1 級 ‧ 2008-05-13 10:07:49

個人覺得該學的是物件導向設計程式的精神和設計的方式.

每種語言的基礎都跳脫不了變數/運算子/迴圈/邏輯運算....等基礎, 這方面應該沒什麼難度和差異, 頂多就是每種語言的不同特性(像是python特殊的list表示方式), 這些花點時間熟悉應該就能上手. API則多使用和多看文件, 畢竟每種語言的API命名和參數都不同, 再來挑個好用的IDE工具(.net應該只有一種能挑), 和熟悉一些framework, 把這些東西都用的順手, 也算達到了完成第一階段了

接下來的是跟語言無關的部分, 也是值得花時間投資的部分(同時也是經驗的累積, 但要累積這樣的經驗, 也得自己能到達這個境界才行), 這部分是可以套用在任何語言上的, 就是轉換自己的思維成物件導向設計的概念, 配合某些領域累積的經驗(domain know-how), 然後逐漸的將這些東西融合在一起, 若能導出一些pattern來符合各種情況更好....如果能做到這樣, 我想使用java或是.net, 學習曲線應該也不高了

56
macosorawate
iT邦新手 2 級 ‧ 2008-05-13 12:57:16

Java..NET.都是一樣的.凡是與網路相關的你都一定要學.不然你無法作一個真正的網路工作人員.尤其是網路上的作業系統.你一定要懂.不然你無法掌控網路上的所有應用工作.一般的程度.你必須知道網路的工作程序.網路是由網站驅動的.不是由網頁直接驅動的.WATER.0911115854.( macosorawater@pchome.com.tw ). http://www.macosorawater.pchome.com.tw .小禮.Thanks. 11111111 .

66
maoyang
iT邦新手 4 級 ‧ 2008-05-13 14:57:44

建議是先學Java, 有Java的基礎, 學.Net其實很快, Java可以應用的產業很廣, 從Desktop application(support Windows, Linux, Mac OS), Web application(也是support Windows,Linux,Mac OS), J2ME手機, Google的Android官發開發語言也是Java, .Net大概只能在MicroSoft的平台, .Net跨平台雖然有solution(Mono)可是還不太成熟, 所以從Java的支援度, 可想像Java的重要性, Google在找人才時, 至少要會C/C++/Java. 看到這裡您心中應該對Java會有些心動. 至於會Java是否可以找到好工作, 我認為這就看自己的功力了.

MaoYang

56
jamesjan
iT邦高手 1 級 ‧ 2008-05-14 17:23:45

這種問題從 .Net 推出之後就一直困擾著想要從事或已經從事程式開發的人,對資深的Developer來說,程式語言不是問題,因萬變不離其宗;獨孤九劍就那麼九式,但使劍的人真的非用劍不可嗎?招式瞭然於心又何必在乎手裡拿的是什麼?

如果你是企業內部的開發人員,你會有選擇性嗎? 不管用哪一種語言,是不是最後都要跟資料庫打交道? 那資料庫的 Store Procedured 要不要會?
老闆要的東西,.Net or Java? Who cares!! 專心把工作做好再說吧

山不在高,有仙則名;水不在深,有龍則靈

wordsmith iT邦高手 1 級 ‧ 2008-05-14 18:01:18 檢舉

我覺得對資深的人當然意義不大,高手都有一套自己判準的方法了,這種問題通常剛起步的程式開發人員才會有彷徨。

bizpro iT邦大師 1 級 ‧ 2009-06-05 09:45:32 檢舉

"如果你是企業內部的開發人員,你會有選擇性嗎? "
同意. 這也是台灣採用.Net的人會比較多, 不過, 新生的一代可不一樣了.

62
lukechang
iT邦研究生 1 級 ‧ 2008-05-17 18:15:25

我看Java 與 .NET
文/黃忠成
Java 與.NET 之戰正熱,我最常聽到的問題是,程式設計師該選擇那一邊呢?
亦或是那一邊才是王道呢?唔⋯我無法針對這些問題提供正確的答案,因為我
無法預知未來。就個人主觀而言,我不認為Java 會因.NET 的勝利而消失,
.NET 也不會因為Java 的勝出而失去其市場,這兩者都會持續存在很長一段時間,
單學那一種都不太可能會發生沒飯吃的窘境。就學生而言,除了開發平台外還有
很多更重要的東西要學,作業系統、OOP、Design Patterns、UML、Database、
分散式處理,這些知識對於一個程式設計師而言是必備的,不管日後學的是那種
語言、平台,他們在你的設計生涯中絕不會缺席。對在職的程式設計師來說,兩者
皆備當然是最好的情況,這可以使你未來的路更加寬敞,如果時間上不允許,那麼
單學一種也無不可。當由專案主導者角度來看這個問題時,挑選一邊站則成了一個
較複雜的問題,因為身為一個主導者必須負擔該專案的成敗。以目前兩者的發展情況
看來,Java 因為多年在Enterprise Application 領域的經營,其產品的功能性與穩定
性都較.NET 來的高,如果專案的性質是屬於這一類,時效上又較為吃緊,Java 不失為
是一個好選擇。.NET 在這方面雖然能見度不高,但其規畫的未來藍圖中也包含了這
一塊,只是目前這些Server 級產品仍然處於開發中,時效上來說對專案的影響不小。
倘若專案性質是屬於中小型的應用程式,又排除使用其它如VB、DELPHI、FoxPro
等工具,那麼.NET 則是一個不錯的選項,其優異的UI 反應速度及與Windows 的整合
度,可以較快速的建構出這類UI 比重較高的應用程式。另一種不得不談的是網站型
專案,這類型的選擇就較難了,Java 與.NET 在網站部份都勾勒出了相當不錯的藍圖,
其執行效率也在伯仲之間,唯一可以比較的大概是大型網站應用程式所依賴的後端
Server 功能。與Enterprise Application 相同,Java 在這領域所提供的方案較多,產品
成熟度與穩定性也高,.NET 則是需要等待後續的一系列Server 級產品上市才能論定。
前面所提的是指2 選1 的情況,如果資源上允許,整合這兩種平台也不是不可能,
Borland 公司近日所發表的Janeva 就可以實現以.NET 做為前端,連結上後端的
J2EE Server 或CORBA Server。事實上,我對於Java 與.NET 的看法很單純,兩者都是
相當不錯的開發平台,沒有什麼功能誰能做與不能做的問題,端看程式設計師的能力
與付出的努力而定,一旦選定一方做為主要開發平台,精實才是唯一的出路。拋開
開發平台來看軟體開發的趨勢,這些日子來分散式的應用及軟體設計學
(UML、MDA、Design Patterns)已漸漸成為主流,程式設計師應該多多攝取這
方面的知識,才能因應未來的市場需求,在職場上取得一席之地。

54
likailinux
iT邦新手 4 級 ‧ 2008-05-19 08:58:20

我是浙江宁波的,我个人也是做dotnet开发的!
其实你不应该在java和dotnet之间徘徊的,两个平台都是不错的!
java一般会针对大型的开发项目,dotnet的话,可以说是大小通吃!

我的建议是,只要你学的深,没必要去在意是那个平台的!
希望你早日成为编程高手!

鐵殼心 iT邦高手 1 級 ‧ 2008-05-19 10:15:02 檢舉

歡迎大陸同胞加入討論的行列
請大家鼓掌歡迎...

40
davistai
iT邦大師 1 級 ‧ 2008-05-21 23:46:45

能學到那一種都好, 兩種都學豈不更佳? 但如果您忒喜歡某一種,就認真去學, 學成精, 各有各的發展市場, 就像 Unix 與 Windows 作業系統, 沒有說那一種會幹掉那一種, 都會才會提昇自己的價值啊,不是嗎?? 呵呵..

我要發表回答

立即登入回答