2012年3月4日 星期日

C#和C++的選擇

作者: SmallBeeWayn (喵喵叫的蜜蜂貓) 看板: C_and_CPP
標題: Fw: [問題] C#和C++的選擇
時間: Wed Feb 22 23:35:36 2012

※ [本文轉錄自 Programming 看板 #1FHGbSUa ]

作者: SmallBeeWayn (喵喵叫的蜜蜂貓) 看板: Programming
標題: Re: [問題] C#和C++的選擇
時間: Wed Feb 22 23:27:21 2012


其實前一陣子才跟人就"C++會不會沒落"這點筆戰了一場
我個人是持"會沒落"的觀點
跟要不要學C++這問題我想多少有些關係..

這是我的幾個主要論點:

1.就物件導向程式語言而言
C++雖然擁有所有必要的要素,但是其架構是早期設計
比其他OOPL來說,無論是撰寫還是維護都困難許多

2.跨平台與跨編譯器問題
雖然名為C++,用gcc跟VC編起來就是不一樣,更別說BCB這類掛上更多工具的
在不同平台上使用還必須針對該平台做調整
另外,除了gcc以外已經沒有大型單位在維護編譯器了

3.OS支援的問題
Windows支援.Net,MAC主推ObjC,剩下(Android等)則主要是Java
目前除了Unix系,未來主流OS對C++提供的API&SDK只會越來越少

4.指標使用在高階程式語言已經逐漸被刪去
主要是安全性以及維護複雜度方面的問題

整體上來說,低階程式語言還是用Ansi C追求最大程式效率
高階的話會被容易維護的C#/VB.Net,跨平台的Java,專用的ObjC給瓜分掉

其實網路上有張圖我覺得意義很傳神
C++是把有108種功能的瑞士刀,很強大,但太過於包山包海

==================

所以說現在要學的話,我會認為先學Ansi C,之後C#/Java二選一
Ansi C主要是入門,同時推薦給工科(用來寫微控制器程式)

之後C#給Windows使用者學,Java的話就是走純軟路線

--

   問答題:試從 御坂網路及幻想御守 比較 叢集運算與平行運算 之差異性

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.180.163
※ 轉錄者: SmallBeeWayn (122.116.180.163), 時間: 02/22/2012 23:35:36
※ 編輯: SmallBeeWayn    來自: 122.116.180.163      (02/22 23:40)
推 purpose:老手們常會告訴新手,別管指標這麻煩的東西了              02/22 23:40
→ purpose:可是通常也不會認同不懂指標者的實力                      02/22 23:40
→ diabloevagto:clang...apple不夠大嗎?                            02/22 23:59
→ diabloevagto:程式就找個順眼的學就好,重點還是邏輯跟概念         02/23 00:01
→ diabloevagto:一個學精了,轉什麼都很快,頂多api要熟悉            02/23 00:02
推 kiedveian:瑞士刀是指這個嗎? http://ppt.cc/Q6uF                  02/23 07:48
→ angleevil:我的勸導很簡單,c++花個四年,打好邏輯基礎.以後要跳到    02/23 09:10
→ angleevil:c or c#比較容易,但是先學c#,未來學習其他語言會吃力     02/23 09:11
→ angleevil:但是想懂個程式過過癮,c#是好入門的,其實這問題c#的入門  02/23 09:12
→ angleevil:版面已經回答一切了                                    02/23 09:13
推 yayarice:我覺得第二點是C++的痛處                                02/23 10:04
→ diabloevagto:編譯器還有clang+llvm                               02/23 10:40

沒有留言:

張貼留言

您好.本資料庫並非第一手資料.如果你有對文章作者的詢問,意見與需求,請自行找尋文章作者並提供意見,謝謝.