为什么我依然坚持使用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.