[問題] 用C++寫.Net不好嗎?一定要用C#?

作者: don323 (咚薯叔)   2022-09-25 20:35:08
不好意思我講的好像是來C#版問C++問題?
由於標題長度關係,其實我想問的是
用 C++ 寫 Desktop .Net (Windows Forms) 不好嗎?一定要用 C# 嗎?
是這樣的。最近接手公司若干舊程式碼。是用 MFC 寫的。
問題就是現在沒多少人還在用這個古老的語言。叫人家去鑽研MFC也不對
不過那些舊程式並非一大坨,當初就有依照功能分出各個 Plugin
慶幸的是主程式跟 Plugin 的溝通介面並非用 MFC 語法定義的
所以我花了幾天時間熟悉一下 C++ Windows Form (以前沒碰過)
再試著把其中一個 Plugin 用 C++ Windows Form 改寫。很順利就完成了
我只是把UI的部分改用.NET來寫。非 UI 的部分同是 C++ 直接搬
Compiler 都同一個。可以慢慢改,有需要再改,介面都沒變,沒有轉換陣痛期
但如果要用 C# 寫?這就是我想問的問題了
如果用 C# 寫,C#跟主程式之間(好像)還需要一個 C++ DLL 做中介
既然還需要 C++ DLL 中介,直接用它寫就好了(就現在做法),幹嘛還要 C#?
因為我不熟 C#,所以想問版上 C# 高手們,用 C++ 寫 Desktop .Net 不好嗎?
一定要用 C# 嗎? C# 有甚麼厲害之處值得轉過去?或者繼續用 C++ 就好了?
作者: testPtt (測試)   2022-09-25 21:50:00
就語法糖阿 managed c++用起來很彆扭吧
作者: don323 (咚薯叔)   2022-09-25 22:15:00
目前用C++寫都還可以。感覺不到什麼彆扭說
作者: cloki (夜雲天)   2022-09-25 23:39:00
能寫到就沒差了吧,不過linq是挺方便的啦
作者: don323 (咚薯叔)   2022-09-25 23:48:00
請問一下什麼是Linq ?
作者: evil2004 (忘卻深淵)   2022-09-26 08:53:00
沒有規定阿 團隊可以接受就好就像notepad也可以寫網頁阿 為什麼一定要用專用編輯器?
作者: don323 (咚薯叔)   2022-09-26 10:41:00
謝謝中肯的五樓。可是如果像你形容的那樣,是Notepad與專用編輯器的差別,這個差異很大說。所以還是想問C#有什麼厲害的地方C++沒有,值得特別轉過去?
作者: fatrabitree (胖兔子)   2022-09-26 12:26:00
這感覺你去看C# 7.0以後的spec 就知道了沒有用到 也沒差 語言就只是工具 想用啥就用啥只是C#是親兒子 這樣而已
作者: petercoin (彼得幣)   2022-09-26 13:18:00
managed C++的語法是不是有一個^符號XD要不是WinUI 3還不夠成熟,不然我會推薦你用WinUI 3直接用C++寫desktop application
作者: don323 (咚薯叔)   2022-09-27 08:48:00
謝謝13樓。剛剛查了一下,WinUI3 當前最低支援的Win10版本是1809?這樣會有嚴重的相容性問題。跟當年.Net一樣謝謝10樓。看來「C#是親兒子」就是答案了?撰寫過程中雖不至於彆扭,但感受得到微軟處處制肘,就不希望你用C++寫
作者: jizang (阿魯米)   2022-10-04 15:25:00
就是希望user用managered code去寫程式啊!
作者: KanzakiHAria (神崎・H・アリア)   2022-10-06 10:30:00
唯一的理由:親兒子XD
作者: weber1964 (RyanC)   2022-10-07 23:52:00
從C++跳C#!(舉手我是工控領域的,寫控制介面時不喜歡太多語法糖,可讀性較重要。另外工作內容要大量手刻演算法,喜歡C和C#層級嚴謹,語法單純不雜亂,上述原因讓我拋棄C++轉投C和C#的懷抱
作者: neo5277 (I am an agent of chaos)   2022-10-10 10:27:00
也可以啊

Links booklink

Contact Us: admin [ a t ] ucptt.com