黑板报网

分享生活百科、范文、生活经验及知识

信息学为何选择C++作为编程语言?

avatar 2023-03-10 15:12 665次浏览 评论已关闭 互联网

很多家长和同学刚接触信息学的时候,对编程十分陌生,更很少听到过C++。也有同学在学习过程中会疑惑,为何信息学只允许用C++,而不是Python或者Java这些更高级更“简单”的语言。这里我尽量以浅显易懂的方式介绍C++语言,让同学和家长们对C++有更立体的认识。

一、C++的“++”

C++的“加号”,其实代表它是从C语言继承来的。C语言在1972年被开发出来后,大多数软件都是用C语言编写出来的。但随着软件规模的扩大,用C语言编写程序越来越吃力。于是在1982年,美国AT&T公司贝尔实验室的本贾尼·斯特劳斯特卢普(Bjarne Stroustrup)发明了C++语言。

可以说,C++语言包含着C语言的所有特点,并增加了“面向对象”的机制。用C写的程序,一点也不修改,直接可以用于C++。而且C作为底层语言拥有的优点,C++也都有,就好比俗语: “龙生龙,凤生凤,老鼠的儿子会打洞”。

二、C语言的优点

C语言是早期的编程语言,有两个最大优点:

1、性能好,通俗讲就是反应敏捷,运行不卡顿。

2、基础牢靠,底层的基础语言,可以直接操作硬件和操作系统,无所不能

给大家举几个例子:

1、Java和Python等语言在运行时候的环境,都是用C语言写的,可以说,C语言是大多数高级语言的“亲爹”。

2、大家平常偶尔见过要安装的驱动(显卡驱动、打印机驱动等),也大多是用C语言写的。

 

3、大家用的安卓手机和苹果手机,底层系统也是用C写的,所以手机用起来会流畅(如果手机卡顿,很可能是硬件老化或者程序员写的bug )

而所有的这些,C++都可以做到!

三、C++的新优点

C语言虽然优点众多,但有2个缺点也很明显:语法相对比较复杂,不好入门学习;什么都要自己亲力亲为,写起来比较慢。

举个例子,假如我们现在盖房子,我们需要的是砖头和水泥,但C语言给我们的只有黏土和水,我们需要自己去开窑炼砖头,这样房子盖的就会很慢。C++可以帮助我们把砖头炼好,我们盖房子会快些;当然对于Java和Python这些更高级的语言来说,他直接帮我们把预制板都做好了。虽然会盖地更快,但有时候一些特殊的设计用预制板完成不了,还得用砖头自己垒。

由此可见,C++是综合了各种语言的优点,开发不但快,功能也十分强大,算得上是编程届的万金油。

“可上九天揽月,可下五洋捉鳖,谈笑凯歌还。” -《水调歌头·重上井冈山》

而且C++作为接近40多年的语言,在编程语言排行榜上始终占据一席之地。

【2023年3月TIEBO 排行榜TOP10】

【20年来编程语言流行程度曲线】

有了更多孩子们的加入和学习,这门古老的语言会一直保持着年轻和活力。

四、C++的实际用途

家长们在看孩子敲代码,面对着黑乎乎的控制台,看着一堆奇怪枯燥的字母,免不了会嘀咕,学习这个到底有啥用?

【控制台】

其实C++的用处大着呢!

可以说现在大型的复杂软件,很多都是用C++编写的,比如说大家常用的浏览器、照片查看器、excel、word等编辑器;还有图形图像、数学处理软件,很多都是用C++写的。大家常用的微信、抖音、快手软件,都有C++的身影。

互联网大厂的很多底层框架也是用的C++——大部分跟钱有关的系统,都是用C++写的,可以说C++在持续不断的为社会创造巨大价值。

五、为什么是C++

如果单纯从竞赛看,C++可能不是入门最容易的语言,也不是学习最快速的语言;但长远来看,它一定是最合适的语言。

1、首先C++作为高级语言为孩子提供了各式各样的便捷工具,比C语言相对灵活的多。比如说排序,C++的排序函数使用要比C语言的简单,这样孩子就可以把所有精力放在解决难题上,而不是痛苦的学习和记忆晦涩的语言语法。

2、长期来看,C++作为底层语言,有利于孩子从小理解计算机系统的底层原理,打好基础,为以后的厚积薄发做好铺垫。从CSP-X到CSP-J、CSP-S、NOIP、NOI和IOI,再到大学生参加的ACM-ICPC,10多年甚至20多年的编程学习和竞赛,早点学习C++会让以后少走些弯路。

3、学会了C++,再去学习其他编程语言(比如Java或者Python),会变得特别简单自然;但如果反过来不一定成立:即使是学过Python,也要从零学起C++的底层函数

4、C++课程中,需要学习基本算法、数据结构、搜索算法、组合数学、图论、离散数学及数学建模等知识,可以加深孩子对数学的理解,提升孩子的逻辑思维,而这些又能帮助其更好地学习其他学科。唐克老师目前教过的学生,很多家长反映文化课分数有所提高,其实就是潜移默化对孩子的思维的影响。