作者ppaass (( ′v`)O)
看板Soft_Job
標題Re: [請益] 如何學習C# 與他的價值
時間Sun May 30 14:05:07 2010
※ 引述《m13m13m (奇怪 還沒收到??)》之銘言:
: 請問 各位好手
: 小的目前:
: 1. 有C的基礎
: 2. 正在學C++
: 因為某些因素 "必要"學C#
: 1. 我該怎麼開始呢? 一頭霧水阿~
: 懇請前輩們 提供建議 讓我少走冤望路
因為某些因素,小弟我是 C/C++ 跟 C# 都用得很兇的人 Q_Q
個人的經驗是,其實你不用太刻意著重在 C++ 和 C# 有甚麼異同,你只要把
它當作「語法很像的兩種語言」就好了,因為 C/C++ 是會編譯成機械碼的的
語言,所以許多的 concept 與機器或 OS 的原理有關,但是 C# 是編譯成與
機器無關的 MSIL 碼,所以他裡面很多的設計都比較「沒道理」,也就不用
計較這個了,就本質而言,C# 其實比較接近 Java。
C# 和 C++ 幾個語法上的重大差異,就是 C# 沒有指標,所有的變數都是「參
考」,要 new 了才能用,然後如果出了變數範圍還沒有其他變數參用這筆資
料那麼它的資料就會被回收,這是 C++ 程式員會比較不習慣的。
另外就是物件屬性(或稱資料成員)的存取基本上都是透過 get 和 set 方法
(不管你有沒有去 override 它),而不像 C++ 有明確指出這是 default 的
memcpy 還是 override 過的 operator。
: ps:我希望在任何一個新東西學習的開始都是一個好的開始 這樣會很有成就感
: 也會少掉許多日後對這樣東西的恐懼與心理障礙
: 2. 我怕我學的C# 會干擾到我目前的C/C++的knowledge 尤其是concept...
: 會嗎?(恐、煩、憂)
同上,不要把 C# 跟 C++ 有任何聯想就好了。
: 3. 蠢但現實的問題:
: 學這東西 工作機會多嗎?
: 大廠知名公司有欠嗎?
: 這項技術在市場上值不值錢...?
看領域,ASP.NET 跟資料庫方面的工作用 C# 用很兇,多媒體方面的工作則
幾乎不考慮 C/C++ 以外的語言。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.142.245
→ remmurds:明明有C#版可以問的說 05/30 14:09
→ andymai:沒道理?不懂哪裡看起來會沒道理?另外我雖然沒用過C#指標~ 05/30 14:34
→ andymai:但是剛剛到MSDN查...卻有指標型別?再者~變數需要new?要new 05/30 14:34
→ andymai:不是應該是物件嗎?這... 05/30 14:37
→ andymai:剛剛又查了一下~的確是變數就要new~但實值型別和參考型別~ 05/30 15:05
→ andymai:在new的時候差在create object...原本以為new就是create 05/30 15:07
→ andymai:object~以致熊熊看到實值型別也要new時嚇了一跳...Orz 05/30 15:07
推 del680202: C# 沒有指標???? 看樣子你C#還沒玩的很深 05/30 17:10
→ del680202:C#的指標操作可是可以加速很多access operation 05/30 17:18
推 Sigma322:推樓上... 05/30 18:12
→ ppaass:樓樓上指的是把某一段 code 開放為 unmanaged 嗎? 05/30 18:20
推 fantoccini:unsafe ? 05/30 20:41
→ remmurds:不是開放成unmanaged 在C#使用指標的程式還是managed程式 05/30 21:05
→ remmurds:fantoccini點出正確答案了 05/30 21:06
→ bbser:C, C++, C#t別爆大的.能順利在這三種語言中切換應該算高手了 05/31 09:07
→ xsoho:C C++ CLI C# VB 混在一起用很兇應該是很正常的 05/31 12:09