霸哥办公室里的高级讲师,最喜欢讨论的编程语言就是C++。因为经过几十年的历史变迁,如今的C++语言在编程界依旧头戴光环,身披彩衣。但C++编程语言复杂程度远高于其他语言,这是编程界公认的。那么几十年过去了为什么还不被淘汰呢?
C++编程语言真的过于复杂吗?
首先我们要搞清楚的是,所谓的“过于复杂”是什么意思。“过于复杂”是说原本简单的事情,加入了冗余不必要的部分,从而导致事情变得复杂。可是,C++的复杂并非过于复杂,C++编程语言的复杂性是合理且必要的。
Zero Overhead是C++的设计核心。简而言之,就是编程中用不到的特性,不会给程序员和程序本身产生过量载荷。
C++编程语言为什么复杂?
不可否认C++复杂度高,这真的是事实。程序员都明白一个道理:程序运行速率、程序开发效率、编程语言复杂度这三者不能并行。霸哥用一个图展示一下三者之间的关系,大家就会一目了然。
通过上图我们可以看出,要想程序运行效率高,开发效率自然就很低了,同时编程语言复杂度也会很高。所以,C++作为能够提高运行效率、解决很多复杂问题的编程语言,存在的高复杂度,也就可以理解。
但总是会有刚入行的C++开发小白说:“C++太复杂啦,代码不应该越来越简单才好吗?”’
爱因斯坦曾说:“科学理论应该尽可能简单,但不能过于简单。”简单和复杂其实只是人们对它程度的理解,并不是数量的评定。就像狭义相对论一样,能够用一个简单的公式表示麦克斯维方程组,却不能避免概念自带的复杂性。
我们从来不否认C++语言的复杂性,但我们更应该肯定C++解决问题的强大性。
几十年了C++为什么还不被淘汰?
虽然在C++存在的这几十年间,诞生了几十种其他的编程语言,但C++的江湖地位,依旧不可撼动。
1、游戏开发
市面上很多的大型游戏公司的游戏引擎,例如腾讯的王者荣耀、网易的梦幻西游,都是利用C++语言开发的。
2、工具开发
工具开发模块,C++可以说是独领风骚。咱们接触最多的网络安全、杀毒软件和信创领域,C++都是作为主要开发语言的。
3、性能极高的应用场景
C++语言的优势之一,便是极致压榨CPU。所以很多性能要求极高的应用,都会首选C++开发。
①操作系统
操作系统是随时随地,人人都在用的,性能提升即使再微小,一个公司员工、一个城市白领、一个国家人民的计算机,加起来的性能提升也是相当巨大的。
②嵌入式程序
单片机的硬件性能相对来说非常弱,存储空间极小,C++一出场这些问题便迎刃而解。
③加密和安全
和操作系统一样,加密和安全应用非常广泛。所以C++就是用来性能优化的。
上述霸哥提到的这些开发应用领域,都是日常生活中触手可及的。所以未来C++只会继续发光发热,一往无前。至于淘汰,肯定不是这个时代的事情了。
2023年的C++,依旧是编程界的翘楚,很多年轻人纷纷加入C++开发的大军,因为看好它的前景和“钱”途。猩码学苑开年来咨询C++开发培训的学员也是往年同期的两三倍之多,所以趁炎夏未到,趁前途大好,感兴趣的同学加快脚步,学起来吧!