是C#比Java好還是你自己的問題
c#和java那個好
其實我一聽到這個話題就感覺無奈,很無聊
我希望大家在看了我的文章之後,以後要文明討論這方面的話題。
Java,C++,C#只是語言或者是說你要做某項工作的工具而已。
我的觀點是不討論
原因如下:
1.一個人寫的字不好看,你感覺是筆的問題還是人的問題
2.一個程序員用C#寫的程序比Java寫的程序跑的性能高,你感覺是Java不如C#嗎?
3.一個傻子拿把刀被一個正常人用一個棍子打死了,你感覺是刀厲害還是棍子利害
4.一個人做飯非要用盆不用鍋,做出來的飯沒有鍋做出來的好吃,你能說盆沒有鍋重要嗎?只是分工不同
5.一個象棋高手輸給了一個圍棋新手,那是因為他們在下圍棋
以上原因其實說明一個問題
工具,沒有好壞之分,語言也沒有好壞只分,只有適合不適合,如果真的有好壞之分,那也是人的問題
比如你非要在Linux上用C#,那肯定不如Java。
你非要在.net裡使用Java一樣也不如C#來的適合。
說的多了,見諒啊,呵呵,我的意思很明白,就是任何Code和工具無關,最終是和人有關的。是人選擇錯了,寫錯了。用錯地方了。
有多少人是有資格討論這個話題的。
我感覺一個人如果想討論這個話題,那麼首先應該先明白以下幾點
1.你一定是個C#和Java語言的高手,最少要同時都了解兩種語言,而且水平應該是不相上下的。
因為討論要平等,你不能讓一個單純的C#程序員,或者一個單純的Java員去討論這話題,因為沒有意義,
因為他就不了解對方,又怎麼去比較,又怎麼知道那個好,那個不好呢?
就好像所有C#程序員都希望使用Sql數據庫,所有的PHP程序員都希望使用MYsql數據庫一樣。因為熟悉,
因為習慣了,因我最在行,因為最了解,因為沒有壓力我都會,不用再學習,還有可以裝逼,呵呵。
2.你確定你說的問題是自己解決不了,還是因為語言本身的問題
就比如剛剛一個博文(存儲過程的優缺點個人總結)提到存儲過程不能調試,的問題
我很想說在Sql2000的時候就有調試功能了,而且是個Vs的調試基本是一樣的,在Sql08的時候調試已經很強大了,連智能提示工具也一樣強大。
所以要確認你是不會還是語言沒有這個功能。
而且Sql2005都開始支持.net2.0的語言庫了,也就是說你寫的C#方法可以在存儲過程直接調用
SQL Server 2005中的CLR
* SQL Server 2005中的CLR(1)
* SQL Server 2005中的CLR(2)
* SQL Server 2005中的CLR總結和自定義類型(UDT)
* SQL Server 2005中自定義類型(UDT)深入實例
3.不要不客觀
如果出現人身攻擊,罵人,等情況,或者是說我寫了10年的代碼了,能不知道嗎?我有什麼,什麼經歷,這些已經不客觀了,這樣就是第一種情況了,
不是程序問題是人的問題,你是10年的C#編碼高手,要和一個1年的Java程序員比較那個語言好,沒辦法比,有差別的是寫Code能力,而不是人家Java的問題。
所以我希望大家客觀看問題。
總結
如果你能執行上面的規則我很希望聽聽您的建議
我特別不喜歡有些人因為C#不能跨平台就說人家微軟不行,你們真的以為微軟做不出跨平台的東東。
開玩笑的吧。只是人家公司的戰略問題。是不想C#在Linux上運行而帶動Linux用戶,讓Windows喪失領地