APP下载

如何上好有深度的编程教育课

2022-06-07杨炳会

中国信息技术教育 2022年11期
关键词:信息技术课堂教学

杨炳会

摘要:作者提出,面对编程教育,首先要正确把握它的工具性实质,让编程成为一种学习和提升自我的工具,其次从内涵角度合理认识,在课程体系中整体规划编程教育,上好有深度的编程教育课,为中小学生的进一步发展打好基础。

关键词:编程教育;信息技术;课堂教学

中图分类号:G434  文献标识码:A  论文编号:1674-2117(2022)11-0100-02

随着《新一代人工智能发展规划》的颁布,教育部将编程教育纳入到中小学相关课程,逐步推动了编程教育在中小学的普及与开展,但要上好有深度的编程教育课,还面临诸多挑战。

● 编程教学面临的挑战

编程教育在中小学阶段全面实施,面临不少挑战:

一是编程载体的多样性。这主要表现在程序语言的教学中,其中有集图、声、动画于一体的混合运用的模块化编程,不插电编程、无屏幕编程等创客类编程,以实体编程、集成电路块编程为主的机器人、无人机等的编程等。如此多的编程载体,给信息技术一线教师带来了不小的挑战,他们必须尽快适应并胜任。

二是编程教育涉及学生的学习年龄段跨度增大。在学生的认识水平和技能操作水平上,不同年级有不同的要求,除了培养和提升学生的编程思维外,还要为学生后续的学习做铺垫和准备。

三是缺乏统一的标准。目前,编程教育课程体系没有统一的标准,义务教育阶段教学内容差异大,延续性差,专业师资力量薄弱且分布不均,并且仍然存在编程教育理念不清、目的不明等问题。

四是教学课件元素资源不足。在编程教育课中,大部分教学资源需要开发与原创,程序资源作品和习题欠缺。

● 编程教学内涵的认识与把握

编程是一项技能,是自我思维培养提升的集合。通过编程教育,从回归教育的本质、为社会培养有用的人才出发,能让义务教育阶段的学习者具有面向未来并适应人工智能时代不断变化的新形势的能力。因此,教师要正确把握其工具性的实质,让编程成为一种学习和提升自我的工具,让学生实现从学编程到用编程学的转变。

1.落实编程教育层次性目标

在基础教育阶段开展编程教育的过程中,不能过度追求语言的具体细节,而应强调落实编程教育的本质,让学习者不论是刚开始接触还是处于提升阶段,都能做到层层递进,通过螺旋上升、循序渐进,逐步接受、认识和提高,最终达到领悟。例如,讲授图形化编程工具,用图形化的命令模块编写出各种各样精彩的程序,让学生感受通过编写程序、发布指令,指挥计算机做事的乐趣;讲解LOGO语言可选择使用文本方式编写,让学生理解语言指令的理念,体验用命令画出规则图形或者叠加的规律组合图,掌握过程的概念,尝试调用子程序来绘制图集,发展学生的计算思维。义务教育阶段对编程语言的选择和教育,皆在让学习者初次接触机器语言,为进入下一阶段专业学习程序奠定基础,这是一个注重编程思维的和培养并习惯意识的过程。教师要突破语言的障碍,具体表达编写的要求,逐步提高学生的编程能力。

2.凸显编程语言的工具性特点

编程教育是促进学生有效利用优化的手段来解决遇到的问题,以进一步提高生存质量的数字化过程。在“互联网+”时代,无论是大数据,还是人工智能,都离不开程序的设计与应用,因此,教师可借助程序编写语言的工具性特点,实现深层次的育人目的。例如,在无人机的实践活动中,选用可编程的无人机组织教学实践活动。利用无人机的编程教学,不仅能实现让学生动手实践的目的,还可进一步延伸,如进行程序设计、思维培养与提升以及创新创造等。

3.正确把握编程表达信息的载体属性

编程语言虽然众多,但都是用来解决实际问题的,都是为提高和改善人类生活质量而服务。语言是信息表达的一种方式,所有的编程语言,都是信息的载体。例如,在机器人创意活动中,要实现一个主题,可通过不同的核心元器件搭配组合,对程序进行灵活控制,即可达到完成主题的目的。也就是说,编程控制部分是信息的一个载体,都有着实现目的的共性。

4.利用语言结构的通用性达到教学的普适性

在编程教育过程中,师生常纠结于到底要认识和掌握多少类语言,其实编程目标的本质是通用的,当掌握某个编程语言后,其他语言只是侧重点和领域不同。例如,在程序中的赋值指令中,C系列(C、C++、VC)为“i=1”,Basic(VB)为“i=1”,Python为“i=1”;在选择判断指令中C系列(C、C++、VC)为“If(i>100){…}”,Basic(VB)为“If  i>100  then…end”,Python为“If  i>100:…”。从数学的角度考虑,赋值语句基本相同。选择判断指令中都有逻辑条件的内容,符合逻辑条件执行A指令,否则执行B指令。循环指令中,有执行循环的逻辑条件,或者是结束循环的判断。

● 对上好有深度的编程教育课的思考

一是加强编程教育的普及性与普惠性原则,让每一个学生都能接触到编程教育,让每一个学生都能在编程教育中有所受益有所启发,为后续的学习做好铺垫。

二是注意教学内容的后续可迁移性。在教学过程中,注意提炼普适的知识技能,对待具体的编程语句和模块,从解决实际问题的需求出发,不强求复杂华丽的语句,突出编程的通用性及编程语言的载体属性。在不同载体的编程语言中,引导学生不拘泥于某一种编程语言,将重心放在数据和算法上,体验解决问题的过程性逻辑推理。

三是注重学生思维的转变与提升。思维的严谨性是编程过程中的基本要求,以思维的培养和提升作为编程的本质要求,把编程语言作为一个工具,不断提高素养和能力。

四是利用“互联网+教育”的资源优势。借助名师网络课堂、专递网络课堂、名校网络课堂,弥补师资不足的问题,并通过网络课堂的不断学习,提升一线教师的编程教学能力。

参考文献:

[1]孙立會.聚焦思维素养的儿童编程教育:概念、理路与目标[J].中国电化教育,2019(07).

[2]任友群,万昆,冯仰存.促进人工智能教育的可持续发展——联合国《教育中的人工智能:可持续发展的挑战和机遇》解读与启示[J].现代远程教育研究,2019,31(05).

[3]胡姣,祝智庭.技术赋能的教学微创新:教师教育智慧的实践场[J].中国电化教育,2021(08).

本文为宁夏回族自治区第六届基础教育课题“信息技术教学中机器人教育的策略研究与实践”(课题号:JXKT-JC-06-054)阶段性研究成果。

猜你喜欢

信息技术课堂教学
浙江天正思维信息技术有限公司
以信息技术促进学生的美术理解与表现
“双减”政策下的课堂教学
幼儿园教学活动中信息技术的应用思考
巧学信息技术课程
浅谈初中信息技术项目式学习教改实践
高中数学课堂教学中创新能力的培养
巧用“信息技术”,提高课堂效率
简约化初中化学课堂教学实践探索
自然拼读法在小学英语课堂教学中的有效融入