为什么 35 岁的 C++ 仍在“真实”开发中占主导
早在1979年,Bjarne Stroustrup设计了C++编程语言,并且C++很快成为了无处不在的通用系统编程语言。现在尽管有Java、Javascript、Python、Go,甚至是苹果的Swift和它竞争,但C++依然处于主导编程世界的地位。
今天在Morgan Stanley的科技访谈会上,InfoWorld的编辑和Stroustrup畅聊了很多关于C++的问题,还谈及了其他的编程语言,包括Google的Go语言和苹果的Swift语言。以下是我们的访谈记录。
InfoWorld:
您是怎么看C++的未来的?现在有很多流行的脚本语言,像Python和Javascript,当然还有很受欢迎的Java,甚至是Google的Go语言,C++如何从这么多编程语言中存活下来,并且发展壮大?
Stroustrup:
这是个很棒的问题。在这 20年时间里,人们一直在预测C++将会灭亡,但是很高兴的是它一直在成长和壮大。如果你进入到嵌入式领域,如果你想做一些复杂的图像处理,如果你需要实 现一些微电子应用,如果你要开发一些金融管理系统,那么C++是你的首选。也许你很少能看到C++的身影,但是在那些应用的底层,C++依然是撑起整个应 用的顶梁柱。比如Google、Amazon、搜索引擎等那些需要高性能的地方,C++就成了不可或缺的重要角色了。
**InfoWorld:
**
Google的Go语言越来越被受到关注,您对Go语言的前景怎么看?
Stroustrup:
当然这些编程语言可以非常优雅地实现一些功能,但是这些编程语言关注的是如何让写代码变得便捷和优雅,却损失不少性能。当然,这些编程语言所做的贡献我们也是有目共睹的。
InfoWorld:
一些脚本语言的宗旨是解放程序员的双手,那么C++是否也会逐渐倾向于这个目标?
Stroustrup:
Oh,当然了。C++主 要是为一些相当底层核心的应用设计的,它也经常会和其他的脚本语言结合使用。一开始的时候,我是用C++来实现任何的应用,然后我就在Unix上使用 shell作为脚本语言设计一些底层应用。C++涵盖了以下优秀的特性:高性能、易伸缩、占用空间小、占用资源少等等。
InfoWorld:
苹果在今年6月份发布了Swift语言,您是否认为由于苹果公司的支持,Swift将越来越受到开发者的关注?
Stroustrup:
我认为是的,之前他们关注Objective-C,这回Swift真正进入了这些开发者的领域了。
InfoWorld:
C++面临两大挑战:一方面要满足开发者实现高性能、可扩展、搞可靠性的应用程序,另一方面又需要能够帮助开发者实现可维护的代码。关于这两个问题您怎么看?
Stroustrup:
我正要解释这两个问题,第一个问题是要尽可能的抽象和更高效地利用硬件资源,而后者则需要能尽可能简化代码的编写过程,从C++ 11到C++ 14,已经具备这样的兼顾能力了。
今年我们会发布一个新的C++版本,它参考了C++ 14的标准。当你在研发大型的产品时,也许C++ 11在某些方面已经无法满足你的需求,但当出现C++ 14时,情况就会完全改变了,C++总是在不停地进步着。
InfoWorld:
关于程序的安全性问题,您怎么看?程序员是否需要关注所有的安全问题?C++是否比其他编程语言安全呢?
Stroustrup:
我非常热衷于解决硬件的安全问题。在编程语言方面,如果你想编写优秀的程序,那么你的代码一定要确保类型安全。你可以在C++中实现这一要求。不要总是围绕着一些低效的功能转,总的来说,安全问题是系统问题。
InfoWorld:
您是否还要探讨关于C++或者软件开发的其他任何问题?
Stroustrup:
我们的目标是让软件开发更加专业化。我们的社会中很多事情都是不能被打破的,其中大部分都需要依赖软件。作为开发者,我们需要整体考虑到我们的系统,编程语言和开发工具只是其中的一部分,我们需要探究如何培养开发者,以及如何将重点放在程序的可靠性上。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
C 编程语言走上下坡路了吗?
虽然科技行业一日千里,但是编程语言的格局却波澜不惊,在TIOBE编程语言流行度指数排行榜上,TOP5排名过去一年都被Java、C、C++、C#和Python把持着。TIOBE的编程语言流行度榜单每月都会更新,排名依据搜索引擎数据分析。 虽然顶级编程语言的排名相对稳定,但是TIOBE指数的分析师指出,未来几年C语言将遇到麻烦,今年8月份C语言的流行指数是11.303%,创下2001年以来的新低。 C语言流行度下滑的主要原因是它并不太适合开发web和移动应用。与其他主流编程语言如Java、C++和C#不同,C语言的进化很缓慢,即使是所谓的新C11标准也换汤不换药。 此外,C没有得到任何一家IT巨头的青睐成为其主力开发语言,Google严重依赖Java和Python,而苹果选择了Swift和Objective-C。 由于“安装基数”庞大,C语言在流行度排行榜上还有望停留好几个季度,但是TIOBE的分析师奉劝C语言开发者尽快“跳船”。市场对C语言开发人员的需求还将持续好几年,但这只是惯性,是时候学习新的编程技术了。 今年三月以来,TIOBE指数显示一些编程语言显现出强劲的上升势头,例如:Per...
- 下一篇
Java 专利侵权案:甲骨文赢得对谷歌的上诉
北京时间5月10日上午消息,甲骨文在与谷歌的Java专利侵权案中获得了一项关键的胜利。美国上诉法院本周判决称,甲骨文有权根据版权法来保护其软件。此前,下级法院曾驳回了甲骨文的起诉。 在一份长达69页的判决书中,由3名法官组成的小组判决称,甲骨文可以就谷歌在Android系统中对Java的使用主张版权。甲骨文此前指控称,谷歌在未得到授权的情况下就使用了Java的代码。 这起案件被称作“知识产权案件的世界大赛”,并受到了软件行业的密切关注。这起案件主要关于,平台向软件开发者提供的API(应用程序接口)是否 也受版权法的保护。API通常被用于不同软件之间的通信。美国旧金山地区法官威廉·阿尔苏普(William Alsup)2012年时判决称,这种情况不受版权法保护。 此外,上诉法院还要求对此前的另一项判决发回重审,即谷歌是否根据合理使用的规则来使用这些代码。下级法院陪审团此前无法就这一问题做出判断。 甲骨文总法律顾问多里安·戴利(Dorian Daley)对这一判决表示欢迎,而谷歌则对这一判决表示失望。 甲骨文此前起诉称,谷歌在开发Android系统的过程中抄袭了许多材料,包括超过37个Ja...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS关闭SELinux安全模块
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- 设置Eclipse缩进为4个空格,增强代码规范
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路