【VC++开源代码栏目提醒】:本文主要为网学会员提供“关于精品课程“程序设计” 的建设方案[C] - 毕业设计”,希望对需要关于精品课程“程序设计” 的建设方案[C] - 毕业设计网友有所帮助,学习一下!
关于精品课程“程序设计”的建设方案 张丽萍 刘东升 内蒙古师范大学计算机与信息工程学院,呼和浩特010022 摘要:本文围绕程序设计课程,针对内蒙古师范大学计算机与信息工程学院程序设计课 程的教学改革实践。
论述了精品课程“程序设计”的建设
方案。
关键词:程序设计、精品课程1 引言 精品课程是指具有一流教师队伍、一流教学内容、一流教学方法、一流教材、一流教学管理等特点的示范性课程。
近几年,在教育主管部门的倡导和支持下,精品课程建设正在全国高等学校轰轰烈烈地开展。
“程序设计”是内蒙古师范大学计算机与信息工程学院的一门主干课程,通过多年的课程改革与实践,我们在师资、教材、教学思想、教学管理、教学方式、教学内容、教学手段等方面进行了改革与实践,并取得了一定的成效。
该课程2003年被确定为内蒙古师范大学校级主干课程,从而在师资队伍、教学条件、经费保障等方面受到学校的重视并得到较多扶持,为课程的建设和发展创造了有利条件。
该课程在2004年被评为内蒙古师范大学的校级精品课程,在2005年被评为内蒙古自治区的省级精品课程。
目前,我们正在积极筹备,准备申报国家级精品课程。
以下是我们在建设“程序设计”精品课程中的方案。
2教学环境建设2.1课堂教学 程序设计的教学方法大体有两类,一类是细细地讲,所有的难点、问题和细节都举了大量的例子一一交待清楚,把知识嚼烂了再反哺给学生。
这样,学生学习的难度是降下来了,但学生的能力很难提高。
另一类是粗犷地讲,讲重点,讲关键技术,其他留给学生自学,留给学生通过实验来掌握,教师主要起引导的作用,让学生不走或少走弯路。
对于以上两种教学方法,我们提倡后一种,即围绕程序设计的关键技术“精讲多练”。
在教学手段方面,我们可以根据课程特点,采用多种方法和多种媒体进行教学。
在课堂教学中,以PPT为讲课提纲,配合多媒体CAI,使得课堂教学生动形象,受到学生的好评。
2.2 实验教学 我们将实验教学内容分为两个层次,首先是基础与验证型实验,该类实验主要涉及课程的相关知识点,实验目的是使学生验证、理解、巩固并掌握课内所要求的基本教学内容;其次是设计与开发型实 ·联系作者,E·mail:eieezlp@imnu.edu.en 大学计算机课程报告论坛
论文集2006验,该类实验以“任务”或“课题”形式提出实验要求和具体的实验成果,要求学生通过有关课程或自学方式,掌握实验所涉及到的知识,通过综合利用这些知识来设计、开发并最终完成实验项目。
该类实验旨在培养学生综合应用计算机知识与技术的能力,培养学生带着问题自主学习的能力。
通过实验,一是能使学生容易理解和掌握所学书本知识;二是可以锻炼和提高学生的组织能力以及分析解决实际问题的能力;三是可以促进教师在教学中加强理论联系实际,提高教学质量。
2.3 网上教学 精品课程的推广需要加强网络教学。
我们提供的网上教学环境是一个相对完整的自学环境,其中包括各章节的
课件、习题、实验,还提供了十分丰富的学习参考资料,相关的教学大纲、教案、实验指导、参考文献目录等免费开放,实现优质教学资源共享。
此外,为了更好地推广,未来将完成全程教学录相上网。
实验教学中的相关素材,如上机
演示、示例程序等也都逐渐成为网上教学资源的一部分,从而为师生搭建一个良好的网络教学平台。
3教学与研究建设3.1 师资队伍建设 一门课程之所以能够成为精品,是主讲教师们长期教学研究与实践的结果。
因此,精品课程建设的首要任务是建设一支高水平的师资队伍。
高等教育是一门科学,要真正提高教学质量和水平,必须积极参加高等教育科学研究。
没有高水平的教学研究成果,提高教学质量只能是一句空话。
基于这样的认识,多年来我们积极组织和鼓励教师自觉结合教学改革中所遇到的深层次问题进行教学理念、课程体系、教学内容、教学方法与手段等方面的研究,努力提高自身的教学水平。
我们先后承担并完成了多项教学改革和教学研究项目,取得了一系列的研究成果。
除了教学研究项目外,我们还承担了大量的科研项目。
教师通过科学研究及时了解本学科的最新研究成果,为研究型教学的开展奠定了坚实基础。
3.2教学研究 (1)改革教学内容 程序设计是计算机专业一门重要的基础课,也是CC2001、CCC2002大纲中规定的核心课程之一。
大纲中关于程序设计领域里特别强调了“熟练掌握程序设计语言是学习计算机科学与技术大多数内容的前提。
”程序设计的教学目标,是让学生更好地利用计算机去解决实际问题。
因此,在课程设置方面,要充分体现教学内容在训练和提高学生计算机应用能力方面的意图。
2000年以前,我们开设的程序设计课程就是C语言,随着面向对象编程技术的使用日益广泛,我们开设了c++程序设计。
通过实践发现,学习C++虽然能够帮助学生掌握面向对象编程技术,但是,同时又冲淡了他们对面向过程编程思想的掌握。
通过反复摸索与实践,目前的程康设计课程要开设一年,第一学期学习C语言,第二学期学习C++。
(2)完善课程体系 计算机专业不同于传统意义上的理论科学,计算机技术更接近于工程技术科学,把解决实际
问题放在首位。
因此,计算机专业的人才培养目标应更加注重培养学生的动手实践能力。
目前,计算机专业的课程设置都具有很强的实践性,实验教学与动手能力的培养已经成为教学的重要一环。
为了能更好地实现这个目标,我们认为,为学生提供多元化的系统平台是至关重要的,而
计算机专业的绝大部分课程都与系统平台紧密结合在一起,因此,以系统平台为主线构建计算机专业课程体系具有重要 41 6 关于精品课程。
程序设计。
的建设方案的现实意义。
’ 最初,我们以“程序设计基础”
课程作为试点,在该课程的实验教学中提供Windows和Linux两种不同的实验平台,取得了很好的教学效果。
而程序设计是计算机专业一门重要的基础课,它直接关系到许多后续课程的学习,因此,我们认为,程序设计课程并不是孤立的“某门”课程,而是一个整体。
这个整体既包括某学科单一的“课”,也包括该学科其他相关联课程的“课程模块”,甚至覆盖到学科中有内在联系的课程组成的“课程群”。
单一的课程只涉及到科目的某一个侧面,因此即便其本身具有较高的水准,也因其不能够提供该学科的全部丰富和完整的知识而具有明显的狭隘性。
所以,软件类课程的发展方向必然是从“单一”走向“系列”,应该建立完善的课程体系,发挥其整体优势。
经过多年的研究与实践,我们围绕程序
设计,以系统平台为主线,进行了相关的课程体系研究与构建,提出了“以系统平台为主线构建计算机专业课程体系”的新课程体系。
在该课程体系中,首先讲授程序设计,程序设计的第一部分讲授C语言,并使用Linux平台提供的GCC作为上机实验的环境。
沿着这条路线,可以学习操作系统、编译原理及汇编语言等课程;程序设计的第二部分是C++,使用Windows平台下的VC作为上机实验的环境。
沿着这条路线,可以
学习图形学、
网络、可视化编程等课程。
这样不仅加强了学生的程序设计能力,而且科学合理地将
软件类相关课程统一起来,形成了一个相对完善的课程体系。
通过使用Windows平台,学生可以掌握对API的使用;通过使用Linux平台,学生可以使用
开源的操作系统,从而对操作系统有更深的理解,能够分析系统的源码和结构。
(3)进行教材建设 , 为了保证教学内容的科学性、先进性,通过不断地教学实践和探索,我们现在正着手编写该课程的教材和实验教材,其中《Linux上机实验手册》已基本完稿,正在进行最后的审核,《程序设计基础》正在紧张地编写。
我们要争取在评选国家级精品课程之前完成相关教材的出版工作。
(4)建立新的评价体系 考试作为教学评价的重要手段,对学生的学习和教师的教学均具有重要的导向作用。
我们长期坚持积极探索考试方法的改革,引导学生改进学习方法。
新的评价体系改变了过去传统的评价方式,重视对学生学习过程的评价与激励。
程序设计的考试分两个独立的部分,理论课考试和实验课考试。
其中,理论课部分采用传统的纸制试卷,综合考查学生对程序设计内容的掌握;实验课部分则由平时实验成绩和上机考试成绩两部分组成,重点考查学生的上机实践能力,考试采取开卷考试,考试题目全部为程序设计型题目,无标准答案、一题多解,着意考查学生综合运用知识解决实际问题和创新思维的能力。
评价方式的这种改革为学生提供了宽松的学习环境,调动了学生学习过程中的积极性,促进了研究型学习,对培养学生的实际能力十分有利。
3.3 突出特色 (1)提供多元化实验平台 实验教学与动手能力的培养已经成为教学的重要一环。
程序设计教学中不但注重学生动手能力的培养,而且还应特别强调学生上机时数和编程行数。
为了能更好地实现这个目标,选择一个适当的实验平台是至关重要的。
目前,大多数编程环境是基于Windows的图形用户界面。
但是,Linux操作系统的出现,给我们提供了新的选择机会。
经过实践,除了使用传统的Windows平台,我们还引入Linux环境,为学生提供了多元化的实验平台,并取得了不错的教学效果。
Linux操作系统在短短的几年之内得到了非常迅猛的发展,这与Linux具有的良好特性是分不开的。
Linux较其他编程实验环境具有以下一些优势:多用户、多任务、丰富的网络功能、可靠的系统安全、良好的可移植性、对硬件的要求比较低、资源
免费和源
代码公开、为学生提供了学习Unix的机会等。
而Windows除了能为普通用户提供Et常操作管理的方便外,对学习程序设计者并没有提供良好 417 大学计算机课程报告论坛
论文集2006的环境。
首先,Windows系统的安全性很难得到保障。
由于专有软件系统的封闭性,使得人们很难发现它的BUG存在,现在流行的各种计算机病毒,几乎全是针对Windows操作
系统的,以至于人们在使用计算机的时候,总是受到破坏和攻击,在学习程序设计时也不例外。
其次,Windows是单用户的系统。
单用户的系统不能同时提供大量用户使用同一系统,这样必然会造成学校的教学成本增加。
最后,Windows下的程序设计大多数是可视化的界面,使用可视化程序设计语言进行程序设计的教学,上手容易,但也使人的程序设计能力减低并产生依赖性。
另外,程序设计作为大学生的必修课,从国际接轨的角度看,平台的转变也显得更加重要。
比如现在ACM国际大学生程序设计竞赛等重要竞赛,操作系统平台是GNU/Linux,编程语言是Java。
同时,我国越来越多的组织和机构将向Linux平台转移,体现出高校开展Linux教学的必要性和紧迫性。
我们在实验过程中采用Linux服务器,多个终端可以同时登录使用Linux下的编辑环境,可以同时使用编译器进行编译,可以同时运行和调试程序。
不管是平时实验训练,还是阶段性实验考核,系统从未出现过任何问题,运行非常稳定。
由于Linux服务器运行非常稳定,所以它还可以被当作一个稳定的网络硬盘使用。
学生每次编写的程序直接存放在服务器自己的帐户下,基本上不需要做任何备份,下次上机时,以前傲过的各种练习、实验题目都会保留。
这样,减少了基于单机的环境要求学生每次做备份的过程。
另外,由于Linux强大的安全性性能,通过安全控制策略,可以最大限度地限制或减少作业复制、考试作弊等现象的发生,这也是平时教学中经常遇到的难题。
多年来,我们将Linux作为程序设计课程的实验平台之一,不但取得了很好的教学效果,并且积累了丰富的教学实践经验,而这种做法,在目前的高等教育界非常罕见。
因此,在2005年在西安召开的“大学计算机基础课程
报告论坛”中,我们课题组的负责人刘东升教授应邀做了题为“程序设计类课程实验环境的研究”的报告,引起各兄弟院校的广泛关注。
(2)辅助教师检测程序
代码的抄袭问题 ’ 大学里开设的程序设计类课程,学生作业中不可避免地会出现抄袭现象。
在这种情况下,教师不仅需要批阅大量的作业,还要在其中检查存在的抄袭现象,这些都极大地增加了他们的
工作量,有时甚至很难通过教师的手工操作完成。
为此,对计算机程序设计类课程来说,检查学生作业中的抄袭现象,或判断学生
作业与给定答案的接近程度,即实现程序
代码相似度的自动度量,具有很重要的现实意义。
它不仅可以帮助教师检测程序
代码抄袭问题,还可以辅助实现作业批改或
试卷评阅的自动化。
因此,我们目前正在开发一个程序
代码相似度自动度量的实验系统,该系统可以在较短的时间内,从提交给它的大量学生作业中计算出每两个程序之间的相似度度量值,根据该值可以判断每对程序间的相似程度,该值越大说明程序
代码越相似,存在抄袭的可能性也越高。
对于相似度度量结果值较高的程序对,系统会根据用户的选择自动打开该程序对并标记出相似或相同的
代码行。
此外,该系统还可以计算所有这些作业与给定标准
代码间的相似度度量值,由该值可以判断学生所写
代码的标准化程度。
同样,该系统也可判断给定的两个较大程序文件之间的相似程度,以用于判断程序
代码抄袭的可能性,即用于程序
代码的
版权鉴别。
对于该研究,我们已经查阅了大量的文献资料,考虑到国内在该研究上的空缺及其现实意义,我们确定了具体的研究内容。
在此基础上,我们将通过严密的分工合作,首先开发一个程序
代码相似度度量的实验系统。
然后,将以程序设计课程中学生提交的作业作为我们的实验数据,用此对得到的系统进行测试。
4 结论 精品课程建设是一项系统工程,要把课程建设成具有一流教师队伍、一流教学内容、一流教学方法、一流教材、一流教学管理等特点的示范性课程,任重道远,还需要我们继续努力。
418 关于精品课程。
程序设计。
的建设方案参考文献 刘东升。
等.程序设计类课程实验环境的研究.2005大学计算机基础课程报告论坛
论文集.北京:高等教育出版 社,2006;157—161〔2〕 张丽萍.Linux在程序设计课程中的使用〔J】.内蒙古教育,2003(12):163—164〔3〕 张丽萍,翟哗.Linux作为编程实验环境的探索〔J〕.内蒙古统计,2004(4):63—64〔4〕 中国计算机科学与技术学科教程2002研究组.中国计算机科学与技术学科教程2002〔M〕.北京:清华大学出版 社.2002.8〔5〕 钟京馗.美国大学计算机教育漫谈〔EB/OL〕.blog.csdn.net/robertb9527/articles/242414.aapx,2005:5—24 419