版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言程序设计研讨式教学讨论〔〕:
摘要:C语言程序设计是计算机科学专业学生的一门根底必修课。但近年来,随着多种面向对象编程语言的开展和普及,C语言的教学面临着一些新的困难。本文旨在分析并讨论当前环境下C语言教学面临的主要问题,并着重讨论研讨式教学在C语言教学中的作用和方法。
关键词:C语言;考核;研讨
本文引用格式:王会勇,等.C语言程序设计研讨式教学讨论[J].教育现代化,2022,7(53):174-176.
一引言
长期以来,C语言程序设计是我国高等院校计算机科学业学生的一门根底必修课程【1】。但随着近年来多种高级编程语言〔如C++、JAVA、C#、Python等〕的开展和普及,C语言的地位受到了很大冲击,其教学也面临着很多新困难【2】。一方面,快速开展的互联网技术开阔了人们的视野,使一些想学习编程技术的人一开始就把C语言排除在选择之外。另一方面,高等学校对该课程的教学也因为多种原因遇到了学生学习积极性不高、教学效果下降等问题。因此,本文拟结合教学实际,分析讨论C语言教学中出现的问题和解决方法,重点考察研讨式教学的作用。
二问题讨论
〔一〕课程定位不明确,导致学生的学习积极性不高
从开展历程来看,C语言诞生于上世纪70年代,是一门名副其实的"老";语言。从使用角度看,它是一门面向过程的语言,不属于当下主流的"面向对象";阵营。假设缺乏前瞻性和系统性的视野,很多人〔甚至包括一局部教师〕必然会对学习C语言的用处产生困惑。再加上C语言通常是编程者学习的第一门语言,且存在语法知识点多、某些知识点较为复杂〔如指针等〕、非可视化等特点,导致了很多学生的学习积极性不高,教学效果难以保障。因此,搞清楚C语言在现代编程语言中的地位和学习C语言的重要性,对进步学生的学习积极性和教学效果是非常重要的。
〔二〕过程考核机制较难制定
对编程类课程来说,考核一直是一个难点【3】。在C语言的教学中,当前很多学校采用两种方式进展考核:〔1〕理论考试,即传统的闭卷笔试主要考语法规那么,或让学生在编写一段小程序、找出程序中的错误等。〔2〕上机考试,即要求学生现场编写一两个小程序,实现设定的功能。为了应付理论考试,学生只能死记硬背;而上机考试的内容通常是一些很简单的数据运算,如数组的输入输出等,根本上"不敢";用综合性题目做考核。因为假设要求较高,在规定时间内必然有很多学生难以完成。出现这种场面与C语言课程的教学目的不明确是分不开的。
〔三〕教师的经历和视野缺乏
当前,由于师资力量的限制,很多高校的C语言任课教师并没有较好的程序根底。很多人仅仅只理解C语言,对其他高级语言理解不多,也没有足够的编程经历和视野。这就导致很多教师的主要教学目的是让学生可以通过考试,而对培养学生的编程才能和编程兴趣难以顾及。这也是当前C语言教学效果不理想的一个重要原因。
三解决思路讨论
〔一〕充分理解C语言的地位与作用
很多人对C语言的根本印象可能就是古老和根底,但其实C语言还具有一些不为众人熟知的属性。
1.C语言是最接近硬件的高级编程语言,很多操作系统都是用C编写的,如Linux和Unix,而Windows也是用C和C++语言编写的。假设想学习与操作系统相关的编程技术,如一些硬件的驱动程序,不理解C语言是难以胜任的。
2.C语言是嵌入式领域的霸主语言。嵌入式语言的使用范围很广,如很多微控制器程序、单片机程序都是用C语言编写的。学好C语言是学习嵌入式编程的前提。
3.更为重要的是,C语言是很多其他高级语言的根底。如JAVA,C++,C#等,都是以C语言为根底的,或与有很大相似度。这就意味着只要学好了C语言,再学习其他高级语言会容易很多。
4.C语言历史悠久,拥有广泛的用户,网络上存在大量开源代码,方便开发者进展快速高效的编程开发。
除此之外,C语言还拥有指针这种独特而强大的工具,可以帮助我们处理很多其他语言难以处理的任务。
综上所述,C语言一方面是某些特殊编程领域的必要工具,另一方面可以作为学习其他高级语言的辅助,因此具有很好的学习价值。这一点,在教学过程的一开始就应该对学生做介绍。这对进步学生的学习积极性和端正学习态度是非常重要的。图1是网络上对C语言地位的一种描绘。
〔二〕以进步学生的编程素养和才能为最终目的,改革考核方式
1.在编程语言的教学中,正确的教学目的应该是培养学生的编程才能和素养,使其拥有可以胜任将来大型程序和系统性编程任务的才能。要到达这个目的,教学的总体原那么应该是培养学生的学习兴趣和综合运用所学知识的才能。
2.降低传统笔试在考核机制中的分量。笔试仍然是一种有效的考核手段,但应以常识性或关键性知识点为主要考核内容,而不应该把重点放在语法等细节上面。因为语法细节比拟琐碎,学生必须花费大量时间才能记住,这无疑会极大降低学生的学习积极性。另外,机械性地记忆语法细节在编程才能的培养中也是不必要的,因为只要有足够的主动性编程练习,就可以掌握这些细节。
3.将传统的上机考试改变为开放式、综合性的编程考核。上机编程应该成为考核的主要方式,且不应该要求在规定时间、规定地点完成编程任务,而是在学习到一定阶段时给学生布置任务,要求学生自己查询资料来完成任务。另外,上机考核的内容不应仅限于某章某节的知识点,而应该是综合性的。这就要求学生主动查询语法细节和资料,并主动考虑解决问题的方式。
〔三〕以理论为导引,探究教学新形式
这个建议源于笔者的一个经历。在学习汇编语言程序设计这门课程时,由于当时学校对教师的授课方式没有做死板的硬性规定,我们的教师采取了一种完全开放的授课方式,即:
1.在第一次课上,教师对汇编语言做了一些整体性介绍,如讲解了计算机和汇编语言的整体架构与关系、汇编语言的主要学习方法等。随后,教师布置了两个综合性的编程任务。其中一个是要求学生用汇编语言在屏幕上显示一个随机挪动的小方块,然后控制另外一个小方块来追击前一个。假设追到,就显示出成功画面,也可以同时给出声音提示。
2.从第二次课开始,上课时间完全用于答疑和对课程内容的研讨。
3.最后一次课用于考核大家的编程结果。
这门课程的学习过程和结果是惊人的。很多同学自发地凑钱购置了电脑〔当时的486电脑很贵〕,几乎所有同学都花费了大量时间主动学习,并掀起了学习和讨论的热潮。最后,很多同学真正学会了汇编语言编程,并对编程产生了浓重兴趣。这与传统的授课方式形成了鲜明比照。很多教师拥有经历丰富的教学经历,但习惯于按照传统形式,对每个知识点进展滔滔不绝的讲解。由于缺少编程经历,很多学生对语法细节不胜其烦,上课时难以集中精力,导致学习成绩较差,并有很多人对学习编程语言产生了畏惧情绪。
对很多学校来说,上述授课方式可能是不被允许的,因为很难监控,但我们完全可以借鉴其中的经历和理念,打破教学桎梏,探究有效的教学新形式。
四研讨式教学在C语言教学中的理论探究
近年来,包括笔者所在的桂林电子科技大学在内的很多高校都在探究研讨式教学的理论与方法【4】。我们申请获得了广西自治区的教学改革工程"大类招生环境下对根底必修课大班授课小班研讨教学形式的研究";,并借助这个工程和C语言课程开展了一系列教学探究。其中的主要措施包括【5】。
1.以大班授课。大班授课有利于发挥教师的经历和主导作用,但长时间授课容易导致学生疲劳。因此,我们尝试引入多种方式来进步学生的注意力和学习兴趣,如引入微课,以"微视频";的形式进展授课。微课主要有课堂导入型、知识扩大型和难点加强型三种。此外,将引入教学互动环节,让学生利用安装在上的C语言编程软件现场理论,并登录平台答题,或对相关讨论问题进展讨论。
2.分小班研讨。小班研讨可以让每个人充分发挥自己的见解,从而进步学习主动性。我们充分利用了学校的"智慧教室";开展研讨。研讨班主要有"汇报班";、"讨论班";、"进步班";、"补习班";四种形式。每次研讨都要根据学习主题选择适宜的研讨形式。如在"算法";研讨课上,采用同色扑克牌排序和汉诺塔游戏引入问题,研讨用自然语言和流程图表示算法的优缺点,收到了良好的效果。
3.改变教学思维,努力提升教师自身的程序素养和业务程度。一方面,组织年轻教师进修、学习,另一方面,要求教师参与到教学研讨课的设计和实现全过程。这些措施有效地进步了教师的授课才能和教学效果。
五基于网络授课的研讨式教学
近年来,编程类课程的教学出现了一些新手段和新开展,其中网络教学是被广泛看好的一种。网络教学形式实际上已经存在了很长时间,但一直没有成为一种主流手段。这种形式一方面可以解决远程教学的设想,使教学打破地域甚至时间的限制;另一方面也存在一些亟需解决的痛点,尤其是在施行研讨式教学方面存在一些限制,这也是导致其未能被广泛采纳的一个重要原因。下面针对C语言程序设计课程中现有的一些网络教学手段做一些讨论。
现有的网络授课方式主要有以下两种:
1.时间一致,空间不一致的线上直播教学。此种方式的优点是可以客服空间问题,在无法聚集的情况下实现教学。在诸如发生疫情等情况下,这是唯一可用的手段。但其缺点也很明显。一是当前大多数教师和学生没有体验过网络教学,需要时间适应。二是一旦出现网络崩溃等意外,会严重影响教学。三是很难监控学生的学习状态。最后,从目前的使用情况来看,现有的一些主流直播授课平台存在一些功能不完善的地方〔见表1〕。
由此可以看出,在基于现有手段的网络授课中,如何开展研讨式教学是一个难点。一方面,网络条件存在限制〔很多直播软件一旦翻开音、视频交流,就会卡顿〕,另一方面现有直播软件在讨论功能方面存在限制。例如腾讯课堂还没有设计多人讨论的功能;而钉钉允许所有人讨论又容易造成混乱。因此,比拟理想的一个思路是设计可以包容少量人〔如10人〕左右的语音讨论室,并通过语音识别功能自动记录和导出讨论的主要内容。这种讨论可以作为学生成绩的参考。我们在去年施行了基于智慧教室的"小班研讨";就具备了上述特征。
2.时间和空间都不一致的视频课。这种方式要求教师提早录制好授课视频,然后放置到网站上,学生可以在任何时候观看,并完成相应的作业等任务。代表性方案是中国大学慕课和学堂在线等网站。这种方式的优点是容易协调时间和空间矛盾,便于教师和学生合理安排时间。其缺点是授课方式比拟单一,最突出的一个问题是很难设计互动和研讨。当前中国大学慕课和学堂在线都没有设计实时讨论功能。当然,这个问题可以通过一些辅助手段
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论