1. 引言
《C语言程序设计》不仅是计算机相关专业的专业基础课,也是其他理工科专业学校的基础必修课,是学生科研、实践非常重要的编程基础课,同时也是许多后续专业课程的基础 [1] 。《C语言程序设计》在大多数高校都是针对大学一年级学生开设的,对于之前没有接触过程序编程类课程的新生而言,经常面临知识点多、课时安排不足、课下练习不够、教师的授课范围广以及学生掌握程度参差不齐的情况。目前许多高校仍然采用传统的以教师讲授为主的教学方式,即使部分学校采用了SPOC + MOOC的教学方式,仍始终没有脱离教师控制课堂,学生按部就班同步学习的困境,导致部分学习进度超前的学生始终要跟着教师的步骤学习已经掌握的知识,部分进度较慢、基础较差的学生却跟不上节奏,从而使得教学效果大打折扣。SPOC是一种专属个性化在线课程,它与MOOC相似,但针对的是特定的学生群体。教师可以根据学生的水平和需求,为他们设计个性化的学习计划和评估方式。SPOC的优势在于其针对性和互动性,可以更好地满足学生的需求。因此,需改变当前这种以教师课堂讲授为主的“一刀切”式的教学方式,把学习的主动性交给学生,教师制订合理的教学计划及考核方式,根据学生学习进度的不同,鼓励并提倡学生采取个性化的学习,以学生为主体,教师为主导,网络学习为工具,根据个人需求和能力,进行自主学习。
此外,当前的考核方式也存在“一刀切”的弊端。一是考试形式单一,难以客观、全面地评价教学效果;二是考试内容局限,压抑了创新能力的发挥;三是试题的解题思路单一,答案唯一,无法提升学生的创新能力;四是考试分析不深入,无法实现对教学的有效反馈;五是考试管理落后,不利于考试制度的改革 [2] ;六是考试时间死板,一般都是学期末才考试,导致学习战线太长,不利于学生的个性化发展。为此,有必要针对不同层次学生的学习进度及学习能力,制订个性化的考核方式,使学生真正领悟学习C语言的必要性及重要性,而不必为了拿到“优异”的考核成绩而学习,其所谓为了学习而学习。
计算机专业培养的人才一类要走向未来的科研岗位,一类要走向工程实践岗,针对培养目标,在教学过程中就需要革新,采用个性的教学方式和考核方式,最大可能地培养多技能兼具创造性的人才,为未来人才储备贡献力量。
2. 《C语言程序设计》教学中存在的问题
过去《C语言程序设计》教学模式侧重于以课本为主,辅以PPT课件,由老师向学生讲授相关程序设计知识,教师占主导地位。引入SPOC + MOOC教学方式的改革同样没有改变教师在教学环节中屹立不倒的主体地位,学生只是被动地跟着老师走,这导致部分学生跟不上节奏,部分学生却在课堂上完全无收获,接收不到新知识。这些问题详细描述如下。
1) 学习能力差的学生跟不上课堂进度
教师占主导地位的教学方式使得所有学生一个步骤,由于C语言知识点多,课时安排不足,因此每学期伊始,教师会制订严格的教学计划,这使得每节课的讲授内容都是按部就班的,否则就会影响教学进程,导致课时不够无法完成本学期的教学内容。SPOC + MOOC的教学方式其实已经很好了,但是教师严格的教学计划以及负责任的课堂讲授却使得这一非常现代化的教学方式不能得以施展其特殊魅力。因为每个学生的知识储备、学习能力、时间安排不尽相同,对于基础不好的学生,其学习进度就比较慢,如果教师硬性要求这部分学生要按课堂进度走,那么除了揠苗助长之外,就是其无法跟上课堂进度,从而课堂对于这部分学生就如“听天书”。长此以往,学生的学习积极性就会丧失,焦虑心理就会增强,甚至会失去对这门课的兴趣。那么课堂对这部分学生就是无意义的,因为他们跟不上课堂节奏,自然无法从课堂上汲取知识。这部分学生更多地应该让其自主去借助SPOC + MOOC去学习基础知识,不应该在课堂上浪费时间。
2) 学习能力强的学生远超课堂进度
对于学习能力强的学生,在课下已经采用SPOC + MOOC的形式对教材内容进行了详细的学习,此时如果教师在课堂再进行同样知识的讲解,对这部分学生而言就是没有信息量的摄取,可能一两节课会让这部分学生有成就感,但时间一长,这种没有信息量的课会浪费该部分学生的时间,他们完全可以利用这些时间去接收新的知识,提高其他技能。对于已掌握的知识再去学习无非就是一种巩固,而编程类课程的巩固更多地体现在实践中,体现在自主研发能力的培养中。如果学生已经掌握了课堂所要教授的内容,这部分学生就没有必要再执行严格的考勤制度来上课,完全可以自由地再去进行下一课堂的学习。目前计算机类专业《C语言程序设计》课程的课时为64学时,非计算专业为48学时,那么对于进度超前的学生,可能不需要64或48学时他们就可以学习完该门课程,如果用一学期这么长的战线去让学生学习64或48学时,显然对这部分学生是不合理的。长的战线只会耗费精力,优秀学生的精力应该更多地放在创造性能力的培养中,基础知识不应该反复重演,通过创新性或研究能力的开发去巩固基础知识。
课堂讲授会降低学生自主学习的能力,脱离学生学习实际,为满足学生学习个性化和教师指导异步化的目的,采用统一的线上学习对于层次不一的学生是有好处的,教师的精力应该更多地放在个性化教学方式及教学计划的制订上。
3. 个性化教学改革
3.1. 个性化教学方式的构建
80年代初,湖北大学黎世法教授在广泛的教育调查和深入的科学研究基础上,创立了异步教学理论 [3] 。异步教学法能够克服“满堂灌、注入式、一刀切”脱离学生学习实际的教学弊端,实现“学生学习个性化、教师指导异步化、教学活动过程化” [3] 。
20世纪90年代末期兴起的网络学习(E-Learning)被认为是一种全新的学习方式,它是指通过Internet或其他多媒体化内容进行学习与教学的活动,充分利用现代信息技术所提供的、具有全新沟通机制与丰富资源的学习环境,是一种全新的学习方式 [4] 。
网络教学形式多样,以SPOC + MOOC为例,要求同学们自主通过网络学习,达到教学大纲要求,根据每位同学的学习能力及所遇到困难的不同,采取个性化的教学方式,不再统一地进行讲解,老师只根据每位同学在不同阶段会遇到的问题制作视频或补充课件上传至学校课程中心,这样不同层次的同学在遇到问题的时候都可以找到对应的解决手段。学生在学习过程中可以随时记录自己遇到的问题,对于不懂的或是疑惑的都可以记录,学生也可以在SPOC中标注设置的作业题的难易程度,老师每天的工作就是对每一类问题通过现代人工智能算法,比如聚类算法、推荐算法等,构建适合不同程度学生的习题库。通过历届学生试验,教学资源得以充分补充,题库完善,问题罗列,丰富教学资源,也使线上教学更加便捷。这样学生对哪块有问题,都可以在相应资源中找到答案,从而不同层次学生可能遇到的各种疑惑问题都可以在线上找到相应的解决办法。每个章节的教学资源建设如图1所示。
Figure 1. Construction of network teaching resources for each chapter
图1. 每个章节的网络教学资源建设
3.2. 个性化教学计划的制订
教师通过完善教学资源,即录制疑难问题解决视频、题库分类建设等构建不同层次学生的教学资源需求,对一些比较难理解的资源可以增加一些密切相关的图片或者热键,也可以采用案例教学讲解法,采用生动、灵活、多样化、多层次、全方位的方法,其基本特点是教师和学生共同投入一个以实例为中心的学习过程,以帮助一些学业困难学生更好地学习。同时,还需为不同类别教学资源制订相应的教学计划,使得不同难易程度的教学资源都有相应的教学计划,使得所有的教学资源之间存在密切的先后关系,如果前面的教学资源你选择了较简单的题库,后面的教学计划及要求就会相应的简单,当然学生所能拿到的积分就会相应简单,后面最终的考核也会相应的比较低。采用智能推荐算法,学生在第一环节如果选择了比较简单题库,在第二环节就推荐比较简单的,假如学生选择了较难的,则第三环节就会推荐难的题库,这是一个基于链式法则或关联规则的智能教学模式选择,个性化地满足了不同层次的学习需求。有利于实现差生转化,不像人工制订的教学计划,差的就一条道差,好的就一条道好。对部分章节可以选择简单的,部分章节可以选择相对难些的,有利于实现差生转化,培养人才。传统教学方法对学生的要求是统一的,是用一把尺子要求所有的学生,在教师的“一把尺子量到底”的教学中,“差生”出现了,“差班”出现了。而且,“差生”在教师将其打入“另册”和学生自己的自暴自弃、破罐子破摔双重心理压力下形成一种“恶性循环” [5] 。在课堂教学中,学生的个体差异和集体教学之间的矛盾促使网络教学 + 异步教学的产生,从而为不同差异的学生提供个性化的学习资源及学习方式。当然,这一教学计划的设计中最重要的就是信息资源的选择和设计要符合学生的认知特点,内容的选择和呈现方式不仅要减少认知负荷。根据个性化教学方案的制订,学生的学习过程也相应地以链式结构展现出其个体差异(如图2所示)。
Figure 2. Process of personalized learning
图2. 个性化学习过程
4. 《C语言程序设计》个性化考核方式改革
个性化教学方式使得不同层次的学生进度不同,当然对学生的考核也应该制订不同的考核标准。学生的考核应该有系数,期末总成绩乘以系数就是其最终成绩。根据学生学习的不同模式,其有相应的考核模式,简单的题目对应较低的系数,相对难的题目对应较高的系数。采用个性化的考核方式,根据学生的学习情况有针对性地进行。
1) 对于学习优秀、进度较快、有进一步学习能力和学习要求的学生:通过其提交创新型作品的形式代替期末考试,所提交的作品不能抄袭,要有所创新。通过完成一个创新型作品,一方面可以锻炼学生的创造力,发掘其研究能力,另一方面可以提高其更高阶的编程能力,使其全方面发展。事实上,优秀的学生学完一门课不需要整学期,当这些学生一旦学习结束就可提前申请考核,只要其通过考核就可完成该门课程的学习,进入到下一阶段的学习中去。提前结束课程考核可以帮助这些学生节省时间参加更高阶的学习,比如参加程序设计大赛,这部分学生将成为ACM竞赛组的后备人才。
2) 对于中等学生:采用复现别人作品的形式 + 期末考试,其系数可以根据课程需要自行设定。这主要是为了激发这部分学生的学习热情,设计一个新作品有困难,通过复现别人作品可以打开思路,开发其创造性思维,而期末考试是为了考察其基础知识。
3) 对于基础较差的学生:采用期末考试的方式。期末考试主要考察学生对基础语法的掌握能力,对课程大纲以及课程计划所要求必须学习知识的掌握程度,以及简单的编程能力。即使这部分学生暂时不能在更高阶的程序竞赛中有所成就,至少要保证对基础知识的掌握,否则会影响下一阶段程序类课程的学习。如果连期末考核都不能通过,只能重修。
由于这些考核方式都是教师在充分了解学情及严格按照教学方案和教学方式的基础上制订的,教师对学情是相当了解的,因此教师选择学生及其考核方式的过程充分体现了指导的异步化及个性化。如此,每个学生都将有所得,才能体会到成就感,每个学生都将信心满满,包括基础较差的学生也能有所收获,更能获得自信和自尊,达到合格。对于优秀的学生,将在合格的基础上发挥自己特长,通过进一步的学习,最终走向更远,成为对社会有用的人。个性化考核与传统考核方式的思想完全不同,传统考核采用“一刀切”的思想,即所有学生都采用统一的模式,否认学生的个体差异,要求整齐划一。这样的考核方式选不出优秀的学生,如果考得简单了,好学生突出不了,考得难了,将对基础差的学生不公平,无法做到面面俱到,无法突出个体差异。
事实上,个性化考核方式就是一个金字塔式的方式(如图3所示),自下而上人数越来越少,位于塔顶的学生是最优秀的,是未来学校ACM组竞赛的补充力量;位于中等水平的学生最多,该部分学生已掌握了基础知识,具有复现别人代码的能力;最下面是基础生,这些学生只能掌握大纲要求的基本知识,需要在基础上多下功夫。通过对学情的详细了解可以对每部分再进行更详细的划分,可以制订出更具个性化的学习考核方案。
Figure 3. Pyramid diagram of personalized assessment
图3. 个性化考核方式金字塔图
5. 结语
个性化教学方式及考核方式的改革,是在教师有明确教学目标、组织方式、详细教学计划的基础上,通过对教学资源分类,将学生这群学习的主人进行分类,从而达到分类指导、分类考核的个性化学习过程体系,以促进学习效果。通过对学生学习能力进行严格的训练过程,让学生可以成为不同的对未来有贡献的人,包括工程实践能力和科学研究能力。
当今时代,知识每天海量巨增,学生自主学习,教师辅助培养是现代教学发展的必然趋势,是素质教育的灵魂。通过不断完善的教学手段、丰富的教学资源以及个性化的问题辅助库,不仅能满足学生的学习所需,而且可以激发学生的思维,使其逐渐参与,达到自主学习、自觉探索、自我补充、自行掌握知识的目的,让学生积极主动地学习知识。
基金项目
“学习行为大数据驱动的学生学习轨迹及水平范式挖掘与教学新模式探索”,重庆市高等教育教学改革研究项目(223165);“基于学生学习行为大数据的教学新模式探索与改革”,校级教育教学改革立项项目(XJG21107);“不确定性人工智能”,重庆市研究生课程思政项目(YKCSZ23109)。