最近,看到了一组这样的数据,CSP-J/S的参加人数从2021年的8万,狂飙到2023年的15万,几乎呈现了翻倍增长,如无意外还会持续走高。CSP-J/S的爆火并不是偶然,一来它和国家重视科技教育的大方向完全一致;二来它作为信息学奥赛的入门级赛事,赛事成绩与升学联系紧密。而C++作为CSP-J/S与信息学奥赛的官方制定语言,自然是水涨船高,很多家长学编程就是奔着C++去的,这种选择真的理智和正确吗?搞清楚编程、C++、信奥赛三者之间的关系,再谈学什么也不迟。
始于图形化,终于C++
编程学到**就是学C++?
很多家长,在了解编程时,发现很多孩子都会参加CSP-J/S,而且也能拿到不错的奖项,就先入为主了,认为学编程就是要学C++,没有C++的编程学习没有意义。当然这种想法也很正常,毕竟在很多地区,如果孩子们能在小学阶段拿到CSP入门组的奖项,中学阶段拿到CSP提高组的奖项,那是十分硬核的升学择校材料。
CSP每年只考一次,要想作为小升初的加分项,为了保险一点,至少五、六年级都要参加CSP入门组的考试,倒推回来四年级就应该学习C++和信奥相关知识了。
对于四、五年级的孩子,有了一定的数学、英语基础,也有一定的思维能力,完全可以直接学习C++。
虽然C++是可以直接学习的,但并不代表适合所有的孩子。
对于一二年级的孩子(天牛除外)来说,直接学C++完全处于一脸懵的状态,看不懂、记不住、学不会。
所以,建议一二年级的孩子学习图形化编程入门,通过图形化编程锻炼编程思维,掌握编程的概念与方法,将来学代码编程阶段可以一点即通,学起来更**果。
说起学代码编程,不得不提Python,说起Python就有很多这样的声音:C++更难,Python不如C++专业**,Python不用学,这种想法可不对。
首先,捋一下Python和C++的关系,他们本质上是平等的,是两种不同的编程语言。同样的功能,用C++能实现,用Python也能实现,反之亦然。说C++难,可能是因为C++的语法更复杂些。同样的功能,用C++写出来看起来更长更繁琐,而用Python就更简单明了。
在学C++之前,有的孩子会学习一段时间的Python来过渡一下。也就是说,学一段时间的Python对学C++有一定的帮助,但**不能说,Python是C++的基础,不学Python就不能学C++。
如果不走信息学竞赛方向,但希望孩子能掌握编程,Python是一个很好的选择。之所以看上去C++比Python更优越一点,可能就是C++信奥赛官方指定语言的身份加持吧!
确实,有很多人学编程时,从图形化开始,过渡时期学python,**学C++,但这并不代表C++是编程的**语言,只是一种学习的选择而已。 |