论文部分内容阅读
摘要:程序设计课程是计算机专业的一门重要基础课,对高职学生而言,普遍难教难学。文章提出一种基于“一个网站,两个课件,三个平台”的E-learning教学模式,为高职院校程序设计课程的教学改革提供了良好的思路和建议。
关键词:高职;程序设计;E-learning;教学改革
0 引言
程序设计课程是计算机专业的核心课程,它对于培养学生良好的逻辑思维和严谨的程序设计能力有着重要的意义。但是很多高职院校的新生刚开始学习这类课程时,普遍反映这类课程难学、学习兴趣不大,教学效果不是很好,影响了后续课程的学习。要激发学生的学习兴趣和创新意识,必须提高程序设计课程的教学水平和教学质量,运用有效的教学手段和教学方法,激发学生的学习动力,使学生真正投入到学习之中。对此,我们进行了认真的分析和探讨,设计并提出了一种E-learning的教学方式,并在《c++程序设计》课程的教学中进行了尝试,取得了明显的教学效果。
1 高职程序设计课程现状分析
课程抽象难懂,学生入门难。学生刚接触程序设计,不具备相关基础知识,而且高职学生大多在中学阶段成绩不太好,逻辑思维能力相对较弱,突然面对一大堆繁杂的程序设计语言的语法规则,难免会不知所措,学起来很费劲。
学习兴趣不高,学生难投入。一方面学生觉得程序设计难学,另一方面,采用传统的“老师讲、学生听”的教学方法,学生被动地接受知识,最多也只是照着老师的演示敲一下代码,缺乏成就感,因此学习兴趣不大。
学习不得法,学生不能学以致用。传统的程序设计类课程的教学方法从抽象的概念出发,讲定义,讲语法,讲原理,最后举一个简单的例子验证一下。这样的教学过程,学生只是学习了几个程序设计语言的语句,根本不理解这些语句在实际开发中该如何综合应用,因此学完了这类课程以后,还是不具备实际编程的能力。
2 程序设计课程的教学方法
2005年11月,温家宝总理在全国职业教育工作会议上做了题为《大力发展中国特色的职业教育》的报告,要求“职业教育要以就业为导向,一方面,要搞好以敬业和诚信为重点的职业道德教育,另一方面,要坚持手脑并用、做学合一的教学原则,突出学生的动手能力和职业技能训练,培养企业需要的人才”。这为高职教育发展进一步明确了方向。
针对高职学生的特点,我们在制定程序设计课程的教学大纲和教学计划时,在强调以生动形象和浅显易懂的方式开展课堂教学同时,加重了实践环节在整个课程计划中的分量。课堂授课和上机实训以1:1的比例开展,通过实践加强对学生动手能力的培养。我们注重对学生将实际问题转化为程序设计语言能力的训练,强调程序设计的思想和方法、强调整体而不拘泥于某个程序设计语句学习的思想,让学生刚开始接触程序设计就从繁杂的程序设计语法中解脱来,站在更高的高度来学习程序设计。这对他们后续课程的学习非常有用,对今后学习其他程序设计语言无疑也有好处。
2.1 问题驱动的课堂教学
在课程教学中以解决各种问题的方法为主线,采用问题驱动教学方法,在完成各种问题的过程中引入知识点,操练语法点。通过各种书面作业、多重训练和一个问题的多种解法来加强语法知识点的掌握和训练,开阔学生编程的思路。在设置问题的时候,要注意问题的实用性和趣味性。比如在讲到“递归思想”时,让学生玩“汉诺塔”游戏。学生玩了一会就发现塔上的圆盘数量每增加一个,问题的复杂性就大大增加,移动时一不小心就出错。老师就启发他们“这个问题要是给计算机做,只要编程教会它解决3个盘的移动步骤,再应用递归算法,那么盘的数量再多,计算机也能很快给出答案。学生编程和对“递归思想”的兴趣一下子就激发出来了。
2.2 基于E-learning的实践教学
实践教学是课堂教学的延伸,重点是培养学生动手能力。为了提高学生实践的主动性和积极性,我们设计了—种基于E-learning的实践教学平台,在这个平台上学生可以复习功课、查阅资料、讨论交流、完成作业,以及自我测试和考试。
在实践教学中,要实现教师角色的转换,以学生为中心,教师为主导,通过精选案例、分解任务、讲练有机融合,使学生能够积极参与。实际教学效果证明,在实践性教学中,目标明确、层次分明的教学设计能充分调动学生的积极性、主动性。其表现为课堂学习认真,对解题表现出很大的兴趣,主动将语法知识点同实际编程相结合。通过后续课程的学习和演练,也证实了学生对该门课程的掌握程度达到了预期效果。除实训外,每届都有部分学生参与到企业实际课题中,进行实际的软件开发。
3 E-learning教学改革的实践
3.1 E-learning教学模式
我们在对程序设计课程教学模式的探索中,围绕网络教学的需要,自主设计研发了一种基于“一个网站,两个课件,三个平台”的E-learning教学模式。
“一个网站”指建立的教学网站。教学网站上提供了大量教学资源,比如分门别类的高质量教学课件、分章节的参考文献和参考书籍、有针对性的国际性网络教学资源等,鼓励学生在网上查找资料解决问题。我们充分利用学校的网络条件,建立在线讨论栏目,教师可就教学难点与同学开展讨论,训练学生思考和分析问题的能力。
“两个课件”指理论教学多媒体课件和实训教学多媒体课件。课件的制作广泛采用了现代化教学手段,充分利用计算机多媒体功能,采用文字,图形、图像,动画,视频等多种媒体表现方法,突出教学中的重点,讲清教学中的难点。
“三个平台”指自行开发的在线试题测评系统,机房教学管理系统和智能化网络考试系统。在线试题测评系统使学生提高了学习编程的兴趣和动力;机房教学管理系统方便了教师在实训时的教学活动;智能化网络考试系统可以有效快速地考察学生的学习水平。
通过以上三者的有机结合完整地实现了E-leaning教学,彻底改革了传统教学方式。教师借助网络备课和讲课;学生借助网络可以复习功课、查阅资料、讨论交流、完成作业,以及自我测试和考试,实现了网络化的读、写、议、考。
3.2 教学条件
我们建设了《c++程序设计》的教学网站,在教学网站上,学生可以选择“首页公告”查看教学进度,考试成绩等信息;选择“理论教学”和“实践教学”查阅教学资源,进行自主学习,对上课讲解的知识点温故知新。各个任课教师可以选择“教学资源”通过网站共享资源,选择“在线讨论”实现网上在线答疑,同学们可以通过教学网站的论坛讨论问题,将学习延伸到课堂以外。
我们针对本课程创建了类似于国际大学生程序设计大赛(ACM ICPC)的“在线试题自动评测系统”,系统中有课本各章节相应问题,题目又划分成不同的难度层次。“基础问题”是学生在该门课程中必须解答的习题。“进阶习题”、“算法 习题”、“竞赛习题”等是进一步提高的实践内容,可以培养学有余力的学生的编程兴趣。系统同时提供了实时的个人与班级排名信息,从而允许在教学中充分照顾不同层次的学生,调动不同层次学生的学习积极性并给以切实的辅导,全面提高教学质量。经过c++程序设计实践性教学中的大量练习训练后,学生在课余时间进行编程的兴趣大增,并积极参加学校和学院组织的ACM程序设计大赛。
我们也自主开发了网络考试系统,系统使用内嵌c++编译器技术,实现了智能化的自动阅卷。并且已经形成初具规模的试题库;可支持多人同时进行网上测试,每个人的试题难度、题量、题型一样,但是试题内容均不相同,有效地避免了考试作弊现象。系统在考完后即可给出成绩,并且能自动总结和显示每场考试的平均分,通过率等。
3.3 教学方法与教学手段
通过对程序设计课程的重点和难点分析,我们采取了一系列的教学策略:
启发式教学对教学重点讲深讲透,使学生能举一反三;程序语言是一门实践性很强的科学,讲解重点时要详细介绍得出重要结论的实验方法。这样学生对教学重点记得牢,并能自行推演重要结论。
扩展式教学遇到教学难点时,教师对相关的数据结构、操作系统等相关学科的知识要进行详细准备,并进行深入浅出的讲解。
形象化教学针对各个教学重点、难点或比较抽象理论进行形象化互动教学,帮助学生形象化地理解重点和难点问题。
创新性教学围绕着教学重点和难点,介绍相关领域的创新性方法。通过对这些新概念、新思路、和新技术的介绍,在帮助学生深刻记忆教学重点和难点的同时,在潜移默化中使学生萌发创新意识。
理论联系实际在教学网站上建设了类似ACM竞赛环境的在线试题自动测评系统,以提高学生学习编程的兴趣和动力。
面对面答疑和网上答疑相结合定期进行面对面答疑可以及时解决学习和程序设计过程中存在的问题。在课堂答疑之外,我们充分利用学校的网络条件,建立了在线讨论栏目,教师在课后可就教学难点与同学开展讨论。
提供多种教学资源,引导学生自己解决学习问题教学网站提供了大量的教学资源:有分门别类的高质量教学课件详细讲解教学重点和难点,有分章节的参考文献和参考书籍,有针对性的国际性网络教学资源,鼓励学生自己在网上查找资料解决问题。
建立有效的教学质量监控系统建立了有效的教学质量监控系统,包括:学校教务部门定期独立进行的学评教,学生即时反馈,教学网站在线反馈;专家教师的听课评教制度;问卷调查;期末学生座谈会等。
3.4 教学效果
采用E-learning教学模式是对传统课堂教学的改革和延伸。进行教学改革以来,课程主讲教师大部分得到了学生的好评,课程教学质量的考核结果也相当好,学评教指数均超过了90%。校内教学督导组对网络化教学的评价也相当高。网上实训教学也走在了学院内各专业课程的前列,教学资源建设已经较完善,并能经常保持更新,运行良好,充分满足了教学需要,调动了学生学习的主动性。
在线试题自动测评系统的应用,不仅提高了学生分析问题解决问题的能力,更大大增强了学生的编程能力。学院每个学期组织的ACM程序设计比赛,各系学生报名参加的积极性都很高。高职学生在学校组织的ACM程序设计大赛中和本科学生一起参赛,并多次取得了较高的名次。
4 结束语
E-learning教学模式在《c++程序设计》课程的教学实践中取得了很好的成绩,相信对研究和改善高职程序设计课程的教学方法有一定的参考意义。下一步,我们还将把这种模式应用到《Visual BASIC程序设计》课程的教学中,同时在实践中不断优化和加强教学网站的维护,完善网站内容,在提高科学性和完整性的同时,增加知识的趣味性和吸引力。
关键词:高职;程序设计;E-learning;教学改革
0 引言
程序设计课程是计算机专业的核心课程,它对于培养学生良好的逻辑思维和严谨的程序设计能力有着重要的意义。但是很多高职院校的新生刚开始学习这类课程时,普遍反映这类课程难学、学习兴趣不大,教学效果不是很好,影响了后续课程的学习。要激发学生的学习兴趣和创新意识,必须提高程序设计课程的教学水平和教学质量,运用有效的教学手段和教学方法,激发学生的学习动力,使学生真正投入到学习之中。对此,我们进行了认真的分析和探讨,设计并提出了一种E-learning的教学方式,并在《c++程序设计》课程的教学中进行了尝试,取得了明显的教学效果。
1 高职程序设计课程现状分析
课程抽象难懂,学生入门难。学生刚接触程序设计,不具备相关基础知识,而且高职学生大多在中学阶段成绩不太好,逻辑思维能力相对较弱,突然面对一大堆繁杂的程序设计语言的语法规则,难免会不知所措,学起来很费劲。
学习兴趣不高,学生难投入。一方面学生觉得程序设计难学,另一方面,采用传统的“老师讲、学生听”的教学方法,学生被动地接受知识,最多也只是照着老师的演示敲一下代码,缺乏成就感,因此学习兴趣不大。
学习不得法,学生不能学以致用。传统的程序设计类课程的教学方法从抽象的概念出发,讲定义,讲语法,讲原理,最后举一个简单的例子验证一下。这样的教学过程,学生只是学习了几个程序设计语言的语句,根本不理解这些语句在实际开发中该如何综合应用,因此学完了这类课程以后,还是不具备实际编程的能力。
2 程序设计课程的教学方法
2005年11月,温家宝总理在全国职业教育工作会议上做了题为《大力发展中国特色的职业教育》的报告,要求“职业教育要以就业为导向,一方面,要搞好以敬业和诚信为重点的职业道德教育,另一方面,要坚持手脑并用、做学合一的教学原则,突出学生的动手能力和职业技能训练,培养企业需要的人才”。这为高职教育发展进一步明确了方向。
针对高职学生的特点,我们在制定程序设计课程的教学大纲和教学计划时,在强调以生动形象和浅显易懂的方式开展课堂教学同时,加重了实践环节在整个课程计划中的分量。课堂授课和上机实训以1:1的比例开展,通过实践加强对学生动手能力的培养。我们注重对学生将实际问题转化为程序设计语言能力的训练,强调程序设计的思想和方法、强调整体而不拘泥于某个程序设计语句学习的思想,让学生刚开始接触程序设计就从繁杂的程序设计语法中解脱来,站在更高的高度来学习程序设计。这对他们后续课程的学习非常有用,对今后学习其他程序设计语言无疑也有好处。
2.1 问题驱动的课堂教学
在课程教学中以解决各种问题的方法为主线,采用问题驱动教学方法,在完成各种问题的过程中引入知识点,操练语法点。通过各种书面作业、多重训练和一个问题的多种解法来加强语法知识点的掌握和训练,开阔学生编程的思路。在设置问题的时候,要注意问题的实用性和趣味性。比如在讲到“递归思想”时,让学生玩“汉诺塔”游戏。学生玩了一会就发现塔上的圆盘数量每增加一个,问题的复杂性就大大增加,移动时一不小心就出错。老师就启发他们“这个问题要是给计算机做,只要编程教会它解决3个盘的移动步骤,再应用递归算法,那么盘的数量再多,计算机也能很快给出答案。学生编程和对“递归思想”的兴趣一下子就激发出来了。
2.2 基于E-learning的实践教学
实践教学是课堂教学的延伸,重点是培养学生动手能力。为了提高学生实践的主动性和积极性,我们设计了—种基于E-learning的实践教学平台,在这个平台上学生可以复习功课、查阅资料、讨论交流、完成作业,以及自我测试和考试。
在实践教学中,要实现教师角色的转换,以学生为中心,教师为主导,通过精选案例、分解任务、讲练有机融合,使学生能够积极参与。实际教学效果证明,在实践性教学中,目标明确、层次分明的教学设计能充分调动学生的积极性、主动性。其表现为课堂学习认真,对解题表现出很大的兴趣,主动将语法知识点同实际编程相结合。通过后续课程的学习和演练,也证实了学生对该门课程的掌握程度达到了预期效果。除实训外,每届都有部分学生参与到企业实际课题中,进行实际的软件开发。
3 E-learning教学改革的实践
3.1 E-learning教学模式
我们在对程序设计课程教学模式的探索中,围绕网络教学的需要,自主设计研发了一种基于“一个网站,两个课件,三个平台”的E-learning教学模式。
“一个网站”指建立的教学网站。教学网站上提供了大量教学资源,比如分门别类的高质量教学课件、分章节的参考文献和参考书籍、有针对性的国际性网络教学资源等,鼓励学生在网上查找资料解决问题。我们充分利用学校的网络条件,建立在线讨论栏目,教师可就教学难点与同学开展讨论,训练学生思考和分析问题的能力。
“两个课件”指理论教学多媒体课件和实训教学多媒体课件。课件的制作广泛采用了现代化教学手段,充分利用计算机多媒体功能,采用文字,图形、图像,动画,视频等多种媒体表现方法,突出教学中的重点,讲清教学中的难点。
“三个平台”指自行开发的在线试题测评系统,机房教学管理系统和智能化网络考试系统。在线试题测评系统使学生提高了学习编程的兴趣和动力;机房教学管理系统方便了教师在实训时的教学活动;智能化网络考试系统可以有效快速地考察学生的学习水平。
通过以上三者的有机结合完整地实现了E-leaning教学,彻底改革了传统教学方式。教师借助网络备课和讲课;学生借助网络可以复习功课、查阅资料、讨论交流、完成作业,以及自我测试和考试,实现了网络化的读、写、议、考。
3.2 教学条件
我们建设了《c++程序设计》的教学网站,在教学网站上,学生可以选择“首页公告”查看教学进度,考试成绩等信息;选择“理论教学”和“实践教学”查阅教学资源,进行自主学习,对上课讲解的知识点温故知新。各个任课教师可以选择“教学资源”通过网站共享资源,选择“在线讨论”实现网上在线答疑,同学们可以通过教学网站的论坛讨论问题,将学习延伸到课堂以外。
我们针对本课程创建了类似于国际大学生程序设计大赛(ACM ICPC)的“在线试题自动评测系统”,系统中有课本各章节相应问题,题目又划分成不同的难度层次。“基础问题”是学生在该门课程中必须解答的习题。“进阶习题”、“算法 习题”、“竞赛习题”等是进一步提高的实践内容,可以培养学有余力的学生的编程兴趣。系统同时提供了实时的个人与班级排名信息,从而允许在教学中充分照顾不同层次的学生,调动不同层次学生的学习积极性并给以切实的辅导,全面提高教学质量。经过c++程序设计实践性教学中的大量练习训练后,学生在课余时间进行编程的兴趣大增,并积极参加学校和学院组织的ACM程序设计大赛。
我们也自主开发了网络考试系统,系统使用内嵌c++编译器技术,实现了智能化的自动阅卷。并且已经形成初具规模的试题库;可支持多人同时进行网上测试,每个人的试题难度、题量、题型一样,但是试题内容均不相同,有效地避免了考试作弊现象。系统在考完后即可给出成绩,并且能自动总结和显示每场考试的平均分,通过率等。
3.3 教学方法与教学手段
通过对程序设计课程的重点和难点分析,我们采取了一系列的教学策略:
启发式教学对教学重点讲深讲透,使学生能举一反三;程序语言是一门实践性很强的科学,讲解重点时要详细介绍得出重要结论的实验方法。这样学生对教学重点记得牢,并能自行推演重要结论。
扩展式教学遇到教学难点时,教师对相关的数据结构、操作系统等相关学科的知识要进行详细准备,并进行深入浅出的讲解。
形象化教学针对各个教学重点、难点或比较抽象理论进行形象化互动教学,帮助学生形象化地理解重点和难点问题。
创新性教学围绕着教学重点和难点,介绍相关领域的创新性方法。通过对这些新概念、新思路、和新技术的介绍,在帮助学生深刻记忆教学重点和难点的同时,在潜移默化中使学生萌发创新意识。
理论联系实际在教学网站上建设了类似ACM竞赛环境的在线试题自动测评系统,以提高学生学习编程的兴趣和动力。
面对面答疑和网上答疑相结合定期进行面对面答疑可以及时解决学习和程序设计过程中存在的问题。在课堂答疑之外,我们充分利用学校的网络条件,建立了在线讨论栏目,教师在课后可就教学难点与同学开展讨论。
提供多种教学资源,引导学生自己解决学习问题教学网站提供了大量的教学资源:有分门别类的高质量教学课件详细讲解教学重点和难点,有分章节的参考文献和参考书籍,有针对性的国际性网络教学资源,鼓励学生自己在网上查找资料解决问题。
建立有效的教学质量监控系统建立了有效的教学质量监控系统,包括:学校教务部门定期独立进行的学评教,学生即时反馈,教学网站在线反馈;专家教师的听课评教制度;问卷调查;期末学生座谈会等。
3.4 教学效果
采用E-learning教学模式是对传统课堂教学的改革和延伸。进行教学改革以来,课程主讲教师大部分得到了学生的好评,课程教学质量的考核结果也相当好,学评教指数均超过了90%。校内教学督导组对网络化教学的评价也相当高。网上实训教学也走在了学院内各专业课程的前列,教学资源建设已经较完善,并能经常保持更新,运行良好,充分满足了教学需要,调动了学生学习的主动性。
在线试题自动测评系统的应用,不仅提高了学生分析问题解决问题的能力,更大大增强了学生的编程能力。学院每个学期组织的ACM程序设计比赛,各系学生报名参加的积极性都很高。高职学生在学校组织的ACM程序设计大赛中和本科学生一起参赛,并多次取得了较高的名次。
4 结束语
E-learning教学模式在《c++程序设计》课程的教学实践中取得了很好的成绩,相信对研究和改善高职程序设计课程的教学方法有一定的参考意义。下一步,我们还将把这种模式应用到《Visual BASIC程序设计》课程的教学中,同时在实践中不断优化和加强教学网站的维护,完善网站内容,在提高科学性和完整性的同时,增加知识的趣味性和吸引力。