為什么我依然堅持使用C++?
從微軟的動向來看,C#正在逐步的成為微軟UI開發的新寵,WP7更是成為了唯一開發語言。對於Win8 Metro程序開發,C#也幾乎成為很多人的首選語言,盡管HTML5形勢看漲,不過畢竟它具備一些局限性,而C#作為一門快速和安全的語言,可能也將成為大多數程序員的最愛(特別是UI開發人員),然而我卻毅然決然的選擇了看似古老而陳舊的C++,也許在很多人眼中,側重UI開發的程序員選擇C++是很不理性的,也許吧,不過我仍舊願意堅持自己的信念:C++一定是一門空前並且絕后的語言,我更願意把他當作一種信念,對C++的執着可以說是對人生的一種堅持吧。
況且,C++的確有着我無法割舍的一面:
從技術角度講:
1 C++太強大了!(無須贅言)
2 Metro 對C++進行了托管的擴展,基本上可以達到C#,VB的同樣效果,而且跨語言間的互通障礙基本被掃清了。
3 完全兼容native C++,可以毫無限制的混合使用,這一點太重要了,意味着C++將覆蓋從最底層(c)到高層(.net)的全部領域,完全可以根據需要任意選擇。
4 完全兼容STL,boost庫等令大家無法放棄的輔助工具,使得C++依然保持高效特性。
5 不能否認,微軟對C++的支持依然是其他語言無法媲美的,無論是Dierct的支持,對底層API以及Com組件的支持,C++不是No.1而是only one。
從個人角度說:
1 我對C++的理解和其他“更高層”語言完全不可同日而語,特別是再回頭重讀過那些C++經典書籍之后,感覺理解更深了一層。
2 C++被人詬病的不安全恰恰是我更看中的,本來C語言出身的我對操作內存有着特殊的偏愛,再加上工作需要,能否對內存直接毫無限制的操作,反而成了我選擇語言的一個標准。
3 我所開發的項目屬於偏系統級的,在當前形勢尚未明朗之前,C++可能是最保險的語言。
4 我可以自由在Metro和Desktop程序之間穿梭,免得不斷在兩種語言之間不斷切換。
綜上所述,我將在后面的文章中伴隨着項目進行,展示我的Metro C++初體驗,當然不止C++還有Metro.