当前位置:无忧公文网 >范文大全 > 征文 > CS2013指导下的程序设计课程实践教学实施方案设计与翻转实验教学实践

CS2013指导下的程序设计课程实践教学实施方案设计与翻转实验教学实践

时间:2022-03-02 00:26:27 浏览次数:

评价。只有设立了明确清晰、恰当合理的教学目标,才能聚焦教学活动中的各个环节,使各项教学活动的设计紧紧围绕着目标而展开,并为最终达成目标而服务。用目标的导向性避免教学活动的盲目性和随意性,避免教师过分依赖个人的直觉和经验进行教学。

因此,为了制订与CS2013相匹配的程序设计课程实践教学大纲,首先要明确程序设计课程的教学目标,即通过熟悉一种程序设计语言(如c/c++)的基本语法和编程实践,了解软件设计与开发的过程,掌握结构化程序设计和面向对象程序设计的基本方法,掌握计算机问题描述和求解的思维方法,以及软件系统设计与实现的基本方法,使学生熟悉程序设计语言的集成开发环境,熟悉计算机求解问题的常用算法,熟练运用结构化程序设计和面向对象程序设计方法解决实际问题,增强系统分析、设计、编码和调试的能力,养成良好的程序设计风格,使其具备今后无论使用什么语言编程都能灵活应用这些思想和方法的能力。

二、基于CS201 3的程序设计实践教学设计

1.基于CS2013的程序设计课程实践教学规划

根据程序设计课程的能力培养目标和教学目标,以及CS2013中对程序设计相关知识领域和主题的规划,结合国内的实际教学情况,从CS2013中相关的主题中提炼出需要在教学实践环节中予以强化、加深的知识点和能力点,并针对这些需求规划制订了与课堂教学内容和进度匹配、覆盖重要知识点和能力点的实验和课程设计。

在整体规划中,实验部分包含不多于5个必修实验,不多于2个选做实验,课程设计部分包含最多3个必修课程设计。各实验与相应知识领域、知识单元和知识点的对应关系如表1所示。

2.基于CS2013的实践教学内容设计原则

实践教学内容设计遵循以下三条原则:

(1)基础实验部分循序渐进、层层深入地引导学生逐步运用所学知识,对关键能力的形成进行反复训练,最终强化为计算思维能力。

(2)综合实验和课程设计兼顾趣味性和实用性,强调学生综合运用所学知识进行系统编程能力的训练和培养。

(3)实验任务强调自主性,鼓励学生自主选题或自主设计任务要求,为学生自主实验创造条件,激发学生的主动学习意识和学习兴趣,从而逐步形成自主学习能力。

3.基于CS2013的实践教学内容设计

CS2013制订的实践教学大纲的具体实验内容、题目和对应的能力培养目标如表2所示。

三、基于CS201 3的程序设计实验设计案例

以贪吃蛇游戏为例,介绍本实践教学大纲制订的思想和设计方法。

1.案例内容

题目:贪吃蛇游戏。综合运用面向对象知识,编程实现贪吃蛇游戏,熟练掌握面向对象的程序设计方法,增强系统分析、设计、编码和调试的能力。

(1)用户账户管理功能:记录用户个人信息、得分和级别,支持个人信息的增删改查。

(2)游戏管理功能:按照食物出现的频率、贪吃蛇移动的速度等设置不同的难度。使用键盘方向键控制贪吃蛇的上下左右移动,在没有用户按键操作情况下贪吃蛇自己沿当前方向移动,在贪吃蛇所在的窗口内随机地显示贪吃蛇的食物,并实时更新显示贪吃蛇的长度和位置;当贪吃蛇的头部与食物在同一位置时,食物消失,表示用户吃掉了食物,贪吃蛇长度增长,用户得分增加;当用户得分达到预设值时,游戏过关;当贪吃蛇头部到达窗口边界或即将进入身体的任意部分时,游戏结束。

(3)进阶内容:实现学英语背单词功能。游戏开始后向用户展示一张给定的单词表,单词表可从指定的单词文件中随机抽取,随着游戏级别增长,单词表中单词的难度加大;食物为字母,用户操纵贪吃蛇按顺序选择要吃掉的字母,吃掉的字母形成单词表上的未被吃掉的单词后,用户得分增加,单词表中的单词减少;当单词表为空时,用户过关。这个进阶内容就是学生自主设计的一个任务。

2.案例分析

该课程设计覆盖的知识点如表3所示。这些知识点涉及cs2013中的软件开发基础和程序设计语言两大知识体,知识点覆盖全面,基本涉及了从基本的数据结构到面向对象程序设计,从算法到程序设计方法,从设计、编码到测试、验证等程序设计课程中涵盖的几乎所有重要内容,是具有很强综合性的课程设计题目。

题目的特点是兼具趣味性、综合性、层次性、实用性。趣味性体现在题目来源于受众广泛的游戏,以游戏这种学生喜闻乐见的形式来代替较为刻板的题目,可以提高学生的学习兴趣;综合性体现在题目覆盖了贯穿程序设计课程的大多数知识点,同时能够对程序设计、编码、测试、调试、纠错、抽象和建模等多种能力进行训练,在知识点覆盖广度和能力训练深度上具有综合性;层次性体现在题目中功能的设置从易到难,由浅入深,学生可以根据能力选择其中的部分功能予以实现,以适应不同层次的学生的不同需求;实用性体现在经学生自己设计实现的这一系统可在自己的学习中实际使用,这将大大促进学生对程序设计的实际价值的认知,从而提高学生对程序设计的兴趣。

四、学习成效驱动的翻转实验教学实践

如果没有好的测评作为导向,那么目标的制订和实施将成为一纸空谈。有效的评价机制可以让教师及时了解教学目标的实现程度和学生的学习状况,以便及时调整教学活动,改善教学计划和方法。

为了顺应“互联网+教育”的发展趋势,保障学生实验效果和实验目标的有效达成,我们自主研制开发了支持远程在线自主实验的高级语言程序设计能力训练平台。该平台允许学生自主选择实验内容,自主选择完成实验的时间和地点,让学生“我的实验我做主”。这种方式从空间和时间上拓展了传统实验课的“疆域”,使程序设计课程的部分实验从课内迁移到课外,从而形成“线上线下紧密结合、课内课外互为补充”的实验教学模式。在资源约束、空间约束和时间约束的条件下,这种实验教学模式突破了传统实验在固定时间、固定地点和可获取知识信息量有限等方面的制约,突破了场地、时间和资源的限制,实现了实验教学手段的电子化、网络化和信息化,促进了信息技术与高等教育的深度融合。

实验的目的是什么?既不是教师在实验课上盯着学生一行行敲代码,也不是仅仅给学生一个实验分数,而是让学生在实验和师生面对面的交流过程中能够做有所得、学有所获。既然如此,那么如何让学生在实验过程中“做有所得、学有所获”呢?

基于这样的考虑,我们在高级语言程序设计能力训练平台上增加了程序在线评测、错误反馈和定位等功能。原来学生提交的实验程序需要教师手工评阅,现在学生提交实验程序可以实时获得评分和成绩排名,允许学生多次提交程序,直到成绩满意为止,对错误的程序还能给出相关提示辅助学生自主修正错误。平台的在线评测、错误反馈和定位等功能使得学生不仅在课外没有教师指导的情况下也能自主完成实验,而且在实验代码的一次次提交和改错中还能获得能力的提升,既降低了教师指导实验的工作量,又达到了“以评促学”的教学目的,提升了学生的程序调试和排错的能力,教师还可以从平台上及时跟踪和了解学生的学习情况和学习行为特点,使学生的实验效果可控、可观测。

为了引导学生从关注“学习成绩”到关注“学习过程”和“学习成效”,我们还改革了实验考核方式。一方面按学生在高级语言程序设计能力训练平台上的刷题分排名取相对分,作为平时实验分;另一方面完全取消了期末考试,每次实验课都利用我们自主研制的编程题考试自动评分系统进行机上考试,在所有实验考试成绩中去掉一个最低分作为学生的实验上机考试分数。相对于期末只考一次而言,这种分阶段马拉松式的考核方式能帮助学生及时发现自己在学习上存在的问题,以便及时补救,从而达到“以考促学”的目的,避免了期末考前临时抱佛脚、“亡羊补牢、为时已晚”的问题。

为了让学生每次都考得明明白白,学得扎扎实实,我们又进行了如图2所示的实验翻转课堂试点。在每次考试结束后,都由教师和学生共同点评错误的程序,让学生有反思自己试卷的机会,共同点评典型错题之后再进行一次不计分的模拟重考,让学生考一次收获一次、练一次进步一次。

这种“考讲练相结合、能力为导向、学习成效驱动”的翻转实验教学模式,在2015年秋季学期试点后取得了良好的效果。以前的实验课经常有迟到早退和上网聊天现象,自试点翻转实验课以后,不再有迟到早退和上网聊天的现象,因为学生从这种实验教学模式中尝到了甜头,实现了“考有所得”。这种“一对多”的批量指导模式大大缓解了实验助教严重不足和一对一指导实验工作量大的问题,提高了实验指导效率,而且学生在教师点评错题后通过自己的思考和分析自行解决自己的问题,也更容易产生成就感。此外,教师还可从随堂考试和试卷点评中及时了解学生在学习上的薄弱环节,进而有的放矢地调整后续的教学进度和教学内容。

推荐访问: 方案设计 翻转 指导下 程序设计 教学实践