今天上了一节scratch 试听课,课后学员妈妈让学员现场重做一下作品,学员有的地方没有做出来。这引发了我的思考。学习编程的目标是什么?
1. 学会编写某个作品,立刻记住并且很久以后还记得这个作品如何编写
2. 当看到一个作品的时候能分析作品是如何做的,参考其他作品完成自己的作品
3. 还是能够不参照任何作品和资料,自己独立创作一个全新的作品?
我认为在课堂上学习编程只能达到第二个目标。第一个目标是机械记忆,记忆力好的人可以记得久一点,记忆力差的人只能短暂记忆,或者压根记不住。第三个目标是要长期实战练习才能达到的,而且过一段时间不练习,就会忘记,需要重新学习。初次学习和遗忘后再次学习的效率是不一样的。基本上可以参考作品自我学习。
举一个成人学习的例子,公司某个项目组决定每天早上花30分钟学习python编程。有人课后做大量练习和实战,最终记住了所有常用的语法,写代码时只需要编辑器和键盘;有人只在课上学习,课后不练习,最终能看懂别人的代码,自己写程序时要翻书参考语法。你能说第二种人没有学会编程吗?他只是记不住,不熟练而已。他们都能完成自己的作品,只是需要的时间不同。
编程课不像数学课,数学课是有闭卷考试,不能现场查公式的。
成人如此,少儿亦然。
《芈月传》 中教跳舞的老师问:公主们学跳舞不及宫中舞娘,刺绣不及专业绣娘,为何还要学?女主芈月回答:为了博闻强识,为了增强鉴赏力。少儿参加兴趣班亦然。