有必要让孩子学C++吗?

一直都想写一篇文章总结一下我国国内目前被吹的火热的“少儿编程”,很多人对于“少儿编程”这个词汇,还处于一种相对老式的思维状态,要么把它等同于一般的绘画、美术、音乐兴趣课来对待,要么把它拔高到数学、英语、物理一样的应试教育课来学习。其实,这两种观点还是源于对这门课程的不清楚、不了解。笔者毕业于上海交通大学机电工程专业,在校期间,也有幸到过国内顶尖的机器人研究所实习;闲暇之余,也曾做过VEX、STEM等科学实验课兼职;目前就职于一家银行,从事软件开发与管理工作。应该说,对于国内的“编程教育”环境,比大多数人要清晰一些,在此写一篇文章,针对此概念做普及;同时,也给受困于诸如“孩子对编程感兴趣,作为家长应该怎么引导”、“邻居的孩子在学编程,自己的孩子要不要也学”,以及“孩子要不要上培训班”等问题,提供一些个人的看法。

1 什么是“少儿编程”

“少儿编程”,简单来讲,是一门针对青少年人群,通过编制游戏、并图形化展出的方式,以培养逻辑思维和创新问题解决能力而设置的课程。说起逻辑思维、解决问题,首先想到的就是数学课,没有什么课程比数学课更能锻炼一个人的推理能力、演算能力、解决问题能力。可是问题是,数学课往往伴随着大量的晦涩难懂的定理、枯燥乏味的计算,而所谓的成果,更多的只能集中在得知自己与标准答案一致的一瞬间,有一种释放感,而在这之前,我们得承认,演算的过程是煎熬的。而“少儿编程”课,与数学课有着同样的目标——提升思维能力,不过这门课程,有着不一样的方式,就是把相对煎熬的过程,变成“游戏化”、“阶段式”的步骤。“游戏化”,或许我们好理解,但是“阶段式”怎么讲呢?举个简单的例子,我们要把大象放入冰箱,这项任务天然的包含3个步骤:开冰箱门、放大象、关冰箱门。传统的逻辑思维课,不论是数学课、推理课,对于到底大象能不能被正确的放入冰箱,只有在所有步骤都完成的时候,才可以检验;而编程课不是,程序会阶段性的给我们产出,让我们知晓我们的每一个步骤是否正确,从而更好的为下一个步骤做出准备,这很重要,因为这可以省去我们大量的反复检查的工作,这些工作,非常消耗耐心,而我们的青少年,你知道的,最缺少的就是耐心。

了解了“少儿编程”课的开课目标,那么这门课程是以什么形式的载体来授课的呢?载体的形式非常广泛,VEX、STEAM、SCRATCH、Python、C++、AI,甚至于乐高积木,都可以成为它的载体。在此将简单做下说明:

VEX课程,是由美国传过来的教育项目,它的基本形式是让学生动手搭建铝合金机器人骨架,然后把控制器连接进电脑,在电脑上编写、烧制程序,最后把承载了程序的控制器安装进机器人骨架,控制器充当大脑,驱动各类马达电机,带动机器人运动。参加VEX课程的学生以初中生、高中生为主,也有部分大学生在玩。VEX课程经过多年的发展,已经形成了完整的体系,每年国内、国际都会举办VEX机器人大赛,最高规格的为在美国举办的“世界VEX机器人锦标赛”,如果能获得不错的奖项,对于想申请美国大学、高中的学生来说,帮助非常大

STEM课程,这本身其实是一种教育理念,而非一种单一课程,同样是美国人传播过来的,STEM本身是四个单词的首字母拼接,科学(Science)、技术(Technology)、工程(Engineering)、数学(Maths),有些地方会把艺术(Arts)也加进来,写作STEAM。STEM作为一种教育理念,经过了美国人几十年的探索而形成,美国人认为这种理念应该贯穿于一个人的整个教育生涯,从学前班一直到大学乃至研究生。STEM教育,目标是学生能在充满趣味性、科学性的学习氛围中有所收获。目前国内很多培训机构推出的STEM课程,一般包含积木搭建课、化学实验课、编程学习课等。参加STEM项目课程的学生以小学生、中学生为主,国内也会定期举办各年龄段的STEM比赛,如果能从中获取奖牌,对于小升初阶段的应试教育帮助会很大。我有听说过我老婆任职的学校有个高中生参加STEM比赛,由于表现突出被推荐参与更高规格的创新大赛,甚至以此拿到了国内名校的自主招生名额。

SCRATCH课程,是依托于美国麻省理工学院开发的一款软件——SCRATCH,来开发类似于贪吃蛇、超级玛丽、太空大战等小型游戏或视频的一门趣味横生的编程课。这门编程课不同于普通的类似于C++\JAVA编程课,它是以一种类似于搭建积木的形式来编写程序,整个过程直观、简洁,易于青少年学习。SCRATCH课程有时会出现在培训机构推出的STEM课程中。参与SCRATCH编程课,更多的是以启蒙教育、培养兴趣为主,当然上海、北京每年也有SCRATCH创意大赛。

Python\C++课程,我想大家或多或少听说过这两门编程语言,它们更多的是面向于年龄稍大一些的、或者是成年人的比较纯粹的编程语言,学习这类语言,就像我们学习英语一样,要学习它的词汇、语法,最终目标,是在计算机上去解决数学类、业务类问题。参与这类课程的学生目标就比较明确了,就是要参加全国信息技术奥赛,如果能在奥赛中获取金牌,国内名校基本是稳了。说起奥赛,可能大家想到最多的还是数学、物理奥林匹克,但是由于数学、物理类传统比赛项目参赛人数多、难度大,想拿奖牌谈何容易。而C++奥赛设置时间晚,相对比较新颖,这些年参赛人数也已经开始逐年走高。

2 是否要学习“少儿编程”

在这之前,先看看我们国家对“少儿编程”的态度:

2017年3月,为贯彻落实教育部《教育信息化“十三五”规划》,山东省教育厅发布《山东省教育厅关于深入推进教育信息化工作的通知》,讲明山东省各级学校应加快推进本校创客空间建设,促进学生素质教育和创新教育的全面发展。

2017年7月中国国务院发布《新一代人工智能发展规划》,人工智能上升为国家发展战略。规划明确提出:“在中小学阶段设置人工智能相关课程,逐步推广编程教育。”

2017年10月,党的《十九大报告》明确指出加强应用基础研究,拓展实施国家重大科技项目,突出关键共性技术……,为建设科技强国、质量强国、航天强国、网络强国、交通强国、数字中国、智慧社会提供有力支撑。

看了这么多,冷静下来想想,基于这样的现实情况,孩子需要学习编程吗?我的态度是一定要学习,但是不用耗费太多精力、财力在上面。

之所以要学习,是因为孩子的编程思维要培养,领会这种新的思维,对孩子在成长过程中遇到问题时能提供新思路,对解决问题有启发性的意义。而学习编程报班的话,时间成本真的是太重了。很多机构为了凑学时会开发多余的课程,有时一套课多达三四十节课。我觉得根本没有必要让孩子花几个学期的时间去学习编程,培养孩子的编程思维,差不多二十次课就足够了。剩下的就是个人爱好了。
最合理的步骤,就是在孩子接触了编程,有一定的编程思维和能力后,如果对编程很感兴趣,想有更高阶段的提升,想参加比赛,想拿奥数奖牌,甚至是获得985高校的录取通知书。这个时候,家长可以给孩子报个辅导班,着重培养孩子在编程方面的特长。

3 如何开始学习“少儿编程”

根据我所从事相关领域的经验,如果要接触、学习“少儿编程”,可能远没有想象中那么难。学习的一般规律逃不出“由浅入深”、“由简入繁”八个字,“少儿编程”系列课程中,最容易上手的,毫无疑问为SCRATCH,等SCRATCH学到一定阶段,可以开始接触C++编程与VEX大赛。关于SCRATCH学习,如果学生感兴趣,完全可以通过一边书本学习、一边动手实践的方式循序渐进,如果学生自制力稍差一点,家长可以陪伴一起学习,共同编制小游戏、小视频。可能很多家长认为自己不够专业、或者没有时间,优先想到送孩子到培训机构学习,目前市面上的各类培训机构,像编程mao、ao梦、小ma王、童x童x等等,开设的各类线上、线下课程都大同小异,师资力量良莠不齐(因为好多老师根本就不是学编程的,也不是学教育的),价格也不菲,笔者真不太建议一上来就去花大价钱报培训班我在业余时间,写了一些小程序,并附带讲解分享给大家,家长完全可以看看,经过简单的学习,成为孩子最好的编程课老师。

直接搜索我的公众号“爱编程的佩奇”,关注可以看到我的干货分享,除了编程知识,还有儿童教育理念的分享——本人也是一名奶爸~~我希望能通过自己的努力,让广大青少年能以相对小的代价收获到相对多的编程乐趣。我先贴出一个简单的SCRATCH程序效果以及部分代码,让大家看看有没有意思。

「白色圣诞节」部分程序

位置: > 石家庄裕华区排名前10少儿编程培训中心(有必要学编程吗)

核心提示:石家庄裕华区排名前10少儿编程培训中心,如何才能快速认识石家庄少儿编程培训呢?通过儿童学习英语有用吗,学习少儿编程怎么样,有必要学编程吗,学编程从几岁学比较好,为什么让学习编程,学编程对学习的帮助这几点

石家庄裕华区排名前10少儿编程培训中心,如何才能快速认识石家庄少儿编程培训呢?通过儿童学习英语有用吗,学习少儿编程怎么样,有必要学编程吗,学编程从几岁学比较好,为什么让学习编程,学编程对学习的帮助这几点带各位朋友认识一下。



  • 许**评价:童程童美终于在新华区有校区了,之前一直想学但是有点远,这周给孩子团课听了一次,孩子兴趣很高不错。童程童美的老师很专业,跟我之前听的机构确实不一样,这回终于明白机器人课程、SC还有少儿编程课程的区别了。另外校区的装修环境很好教室有十多间吧地方很大,老师们都穿统一工装很专业,我选择相信童程童美

  • 王**评价:现在机器人课程是一个趋势,周围很多朋友的孩子也在学这类课,在网上对比了几家机构,后选择来童程童美看看,童程童美是一家上市公司,不论师资还是课程还是比较专业的,校区的位置比较好找,老师们也很亲切、专业,一节课下来孩子也比较喜欢,给我讲解了很多物理小常识,很开心通过一节课能看到孩子的进步

  • 某**评价:平时爷爷奶奶带孩子多,我们也没时间带,孩子在家也经常玩,有时候拉着我们一块,我们也不知道怎么教她,偶尔听朋友说孩子喜欢玩的话可以给她找个班上,正好看美团的时候看到有团购,就想着试试,没想到孩子还真喜欢,老师也特别有耐心,我们家的这个坐不住,没想到在老师的引导下上了一个小时,不过他们这边不让我们跟着,我跟她爸爸在外面玻璃那看的,孩子一直跟老师互动的特别好,本来孩子上着三个课了,她爸爸想的让孩子多玩玩不再报班了,但是看孩子这么喜欢,在哪玩不是玩啊,在这至少还有老师带着,在家我们可不行,所以愉快的决定就在这上了

  • 未**评价:小朋友学了有一段时间了,非常喜欢搭建乐高,每周都按时来上课,老师讲的很细致,能用小朋友理解的方式,总体感觉是很不错的!

  • 刘**评价:现在少儿编程挺火的,再三考虑之下,我们为孩子选择了达内童程童美,口碑不错,也去上课了,孩子的反映挺好的,老师专业度很高,能信赖!

  • 未**评价:带着老大老二一起来的,本来以为就是过来搭积木的,上课跟着听了半节课,老师引导很有耐心,孩子有点坐不住,听别的课都是半节课就出来了,这次表现还不错,可能男孩就喜欢玩这个,环境也不错,两个都让他们上了,至少让他通过这个课先坐住吧。

  • 罗**评价:带娃儿去的 孩子很喜欢 因为家里就这一个娃儿 对培训要求比较高 仔细看了是正版的乐高教具 讲课的老师也很漂亮 缺点就是校区没有厕所 只能去商场的厕所 娃儿很喜欢 就给他报了 希望他能坚持下来吧 总遗憾我没有童年 希望我娃儿的童年只有快乐吧

  • 敖**评价:环境好,老师服务态度好,老师超专业,对孩子有耐心,注重引导孩子发挥想象力,值得推荐!

本文由 整理发布。更多培训课程,学习资讯,课程优惠,课程开班,学校地址等学校信息,可以留下你的联系方式,让课程老师跟你详细解答:


从语法上看,C语言是 C++ 的一部分,C语言代码几乎不用修改就能够以 C++ 的方式编译,这给很多初学者带来了不小的困惑,学习 C++ 之前到底要不要先学习C语言呢?

我对这个问题保持中立,但是初学者直接学习 C++ 会非常吃力,Hold 不住,尤其是对计算机内存不太理解的情况下,C++ 是学不懂的。C++ 是一门灵活多变、特性丰富的语言,同时也意味着比较复杂,不易掌握。

不过可以明确地说:学了C语言就相当于学了 C++ 的一半,从C语言转向 C++ 时,不需要再从头开始,接着C语言往下学就可以,所以我强烈建议先学C语言再学 C++。

C++和C语言的血缘关系

现在看来,C++ 和C语言虽然是两门独立的语言,但是它们却有着扯也扯不清的关系。

早期并没有“C++”这个名字,而是叫做“带类的C”。“带类的C”是作为C语言的一个扩展和补充出现的,它增加了很多新的语法,目的是提高开发效率,如果你有 Web 开发经验,那么你可以将它们的关系与 和

这个时期的 C++ 非常粗糙,仅支持简单的面向对象编程,也没有自己的编译器,而是通过一个预处理程序(名字叫 cfront),先将 C++ 代码”翻译“为C语言代码,再通过C语言编译器合成最终的程序。

随着 C++ 的流行,它的语法也越来越强大,已经能够很完善的支持面向过程编程、面向对象编程(OOP)和泛型编程,几乎成了一门独立的语言,拥有了自己的编译方式。

我们很难说 C++ 拥有独立的编译器,例如 Windows 下的微软编译器(cl.exe)、Linux 下的 编译器、Mac 下的 Clang 编译器(已经是 Xcode 默认编译器,雄心勃勃,立志超越 GCC),它们都同时支持C语言和 C++,统称为 C/C++ 编译器。对于C语言代码,它们按照C语言的方式来编译;对于 C++ 代码,就按照 C++ 的方式编译。

从表面上看,C、C++ 代码使用同一个编译器来编译,所以上面我们说“后期的 C++ 拥有了自己的编译方式”,而没有说“C++ 拥有了独立的编译器”。

如果针对没有任何编程经验的读者写一本 C++ 的书,那将是一项不小的任务,写出来的书也会非常厚。即使这样,也仅仅是在讲语法。

更重要的是,这些知识你很难全部吸收,会严重打击你的信心,失去学习的兴趣。

没有任何编程基础的读者,我建议先从C语言学起,不要贪多嚼不烂。有编程基础的读者,相信你自己能做出正确的判断。

学习编程是一个循序渐进的过程,不要期望一口吃个胖子。学习C语言,一来是学习它的语法,为 C++ 打基础,同时培养编程兴趣,二来是学习内存、编译和链接,弄清编程语言的内在机理。

每个初学者都经历过这样的窘境:已经学习了语法,明白了编程语言都有什么,也按照教程敲了不少代码,但是遇到实际问题就挂了,没有思路,不知道从何下手。说白了就是只会学不会用。

究其原因,就是实践少,没有培养起编程思维!学习知识容易,运用知识难!

等你熟悉了C语言,能编写出上百行的代码,就对编程有些概念了。这个时候再去了解 C++ 究竟在C语言基础上增加了什么,你就站在了一定的高度。

从“学院派”的角度来说,C++ 支持面向过程编程、面向对象编程和泛型编程,而C语言仅支持面向过程编程。就面向过程编程而言,C++ 和C几乎是一样的,所以学习了C语言,也就学习了 C++ 的一半,不需要从头再来。

C语言中文网的教程也是这样安排的:

  • 先讲解C语言,具体请阅读《》。
  • 再讲解 C++,主要包括 C++ 和C的一些差别,以及面向对象编程和泛型编程。

我要回帖

更多关于 初中生学c++有用吗 的文章

 

随机推荐