1、
操作系统实验设计
摘 要:“操作系统”课程的理论性和实践性都很强,本文从北京航空航天大学操作系统课程设计出发,针对操作系统实验中存在的问题,通过分析、借鉴国内外著名大学的经验,以MIT操作系统实验为基础设计了一套以MIPS为硬件平台的操作系统实验,并在北航选取了一些学生进行应用。
关键词:操作系统;实验设计;教学实践
中图分类号:G642 文献标识码:B
“操作系统”课程内容丰富,既要讲授关于操作系统的基础理论,又要让学生了解实际操作系统的设计与实现。操作系统实验设计正是该课程实践环节的集
2、中表现,不仅使学生巩固理论学习的概念和原理,同时培养学生 的工程实践能力。国内很多大学都非常重视操作系统实验设计,北京大学根据MIT课程,建立了自己的操作系统实验体系;清华大学专门设置了操作系统专题训练课程,以提高学生的工程实践能力;南开大学提倡使用系统仿真的实验环境加强学生理论联系实际的能力;浙江大学提出了“边学边干”的操作系统教学理念。
北京航空航天大学计算机学院在2006年将“操作系统”课程分成了两门课程:一门讲授“操作系统”原理,一门“操作系统课程设计”专门进行操作系统实验。本文将以MIT的操作系统课程设计为基础,介绍在操作系统课程设计中,让学生自主开发一个小型教学操作系统。
3、由于开发一个实际的操作系统难度和工作量很多,为了保证教学效果,我们首先为学生提供一个基础系统,该系统实现操作系统中最基本的部分。在此基础上,学生可以再进一步扩充,实现一个完整的操作系统。将来可以与硬件课程进一步集成,将教学操作系统移植到学生自己开发的硬件平台中。我们试图通过操作系统作为纽带,将计算机硬件与软件结合起来,培养学生对计算机系统的整体认识。
1 目前存在的问题
在前几年的教学实践中,我们尝试过Nachos、Minix、Linux和Windows四种不同类型的实验,目前保留了Linux和Windows两组实验。每类实验包含4组实验,每个(组)
4、同学选做一类实验,并完成该类中全部4组实验。Linux实验包括“Yalnix Shell”、“虚拟存储”、“作业控制系统”、“文件系统操作”或“模拟文件系统”(后面两个实验选做一个)。Windows2000/XP实验包括“生产者消费者问题”、“Windows虚拟存储器管理”、“NDIS协议驱动程序的分析与改进”、“虚拟磁盘的文件系统驱动程序设计”。
这两组实验与主流操作系统结合紧密,极大地提高了学生的专业技能。虽然这些实验已经在国内一流院校中广泛使用,但是仔细分析我们可以发现,这些实验大部分还是停留在系统编程的水平。因此为提高操作系统教学水平,我们必须向国外研究型大学看齐,改进操作系
5、统的课程设计。
2 国外主要研究性大学操作系统实验
我们选择了四所大学的操作系统实验情况进行重点介绍。
Brown University
课程名称cs167/cs169operating system Fall 2006
cs167课程介绍操作系统的基本原理
cs169课程:学生每人用 C编写一个简单的、单内核操作系统。所写的操作系统在技术上等价现代的操作系统
实习项目:Kernel 1,Kernel 2,虚拟文件系统,文件系统,虚拟存储
6、
基础系统:Weenix
Princeton University
课程名称:Operating Systems Fall 2006
实习项目:项目1:引导机制;项目2:非抢占式调度;项目3:抢占式调度;项目4:进程间通信与进程调度;项目5:虚存;项目6:文件系统
University of California at Berkeley
课程名称:Operating Systems and System Programming Spring 2006
ɧ
7、48;实习项目:工程为仿真MIPS平台构造操作系统有4个工程。工程1:线程管理;工程2:多道程序设计;工程3:高速缓存和虚拟存储;工程4:网络和分布式系统
Harvard University
课程名称:CS161: Operating Systems Spring 2006
实习项目:工程0:熟悉OS/161以及其运行环境System/161;工程1: 同步;工程2:系统调用和进程;工程3:虚拟内存;工程4:文件系统
MIT
课程名称:6.828: Operating System Engine
8、ering - Fall 2003 (for graduate student)
实习项目:工程1:启动装载过程;工程2:内存管理;工程3:进程和上下文切换;工程4:Fork和进程间通信;工程5:简单的文件系统;工程6:编写一个Shell
从上面的分析可以看出,这几所大学操作系统实验内容丰富、难度大。这些大学都有同一个理念:要想学好操作系统,最好的办法就是自己编写一个操作系统。因此,我们希望借鉴这些大学的实验内容,提高北航操作系统实验难度。
3 操作系统实验改进思路
随着学校对课程建设的重视,很多课程,
9、例如“程序设计”、“编译原理”等课程的实验有了很大改善,学生的动手能力也得到了进一步提高。在此基础上,我们已经具备了尝试难度更高的操作系统课程设计的条件。因此,在操作系统课程设计上,可以让学生自主开发一个实际的小操作系统。
由于开发一个实际的操作系统难度和工作量很多,为了保证教学效果,我们准备采取循序渐进的、分层设计的方式,首先为学生提供一个基础系统,该系统实现操作系统中最重要、最基本的部分。在此基础上,学生可以再进一步扩充,实现一个完整的操作系统。这种新的实验模式在保证教学效果的基础上,有利于充分发挥学生创新潜能。
4 实验设计
10、 4.1 实验内容
我们调研了MIT、CMU等几所著名高校的课程设计,决定以MIT的课程设计为基础,在操作系统课程设计上,让学生自主开发一个实际的小操作系统。实验包含6个部分,各个部分的相互关系如图1所示,具体实验内容如下。
(1) 启动和系统初始化:通过PC启动的实验,掌握硬件的启动过程,理解链接地址、加载地址和重定位的概念,学习如何编写位置无关代码;通过实现setjmp和longjmp两个函数,掌握GCC的调用规范和硬件堆栈结构。
(2) 内存管理实验:理解虚拟内存和物理内存的管理,实现操作系统对虚拟内存空间的管理。
(3) 进程管理:通过设置进程
11、控制块和编写进程创建、进程中止和进程调度程序,实现进程管理;编写通用中断分派程序和时钟中断例程,实现中断管理。
(4) 系统调用:掌握系统调用的实现方法,理解系统调用的处理流程,实现本实验所需的系统调用。
(5) 文件系统:通过实现一个简单的基于磁盘的微内核方式的文件系统,掌握文件系统的实现方法和层次结构。
(6) 命令解释程序:实现具有管道,重定向功能的shell,能够执行一些简单的命令。最后通过调试将六部分链接起来,使之成为一个能够运转的操作系统。
4.2 实验环境
选择一个完整硬件仿真环境。我们准备根据当前流行的主流硬件,选择
12、开放源代码项目bochs和GXemul作为仿真环境。另外建立一个完善的实验环境,将操作系统实验用到的各种软件安装在一个服务器上,为每个学生建立一个独立的帐户,学生可以在任意机器上远程登录到我们的服务器,完成实验任务。
另外,操作系统的实验需要与硬件课程实验和编译实验进一步集成,学生可以将教学操作系统移植到学生自己开发的硬件平台,并且运行学生自己开发的编译器所编译的程序。图2描述了操作系统实验各个部分与硬件的关系(该硬件环境详见参考文献)。图3描述了操作系统实验与编译实验和硬件实验的关系。
4.3 目前已完成工作
目前已完成的工作:
(1) 建立了一个以G
13、Xemul为基础的仿真环境,可以运行操作系统,并实现操作系统的调试。
(2) 建立了一个以GCC为基础的MIPS交叉编译环境,可以用于编译操作系统以及其他应用程序。
(3) 六个实验已经可以在仿真器上运行(见图4)。
5 经验总结与下一步工作
2006年,我选了一个学生以这个操作系统实验作为毕业设计题目,硬件平台为x86,他当时完成了4个实验。2007年在计算机学院组织下我们选了6名学生将该实验在一学期内移植到了MIPS仿真平台。通过这些实践,我们发现对于本科生这些实验难度还是太大,很难完成6个实验。因此,我们下一步需要采取循序渐
14、进、分层设计的方式,进一步简化实验,多给学生提供一些示例代码,编写详细的实验文档和实验指导手册。
参考文献:
[1] 陈向群. 操作系统实习教学经验[R]. 全国第八届操作系统课程教学研讨会,2005.
[2] 史广顺,韩维桓,袁晓洁. 南开大学“操作系统”课程建设的思考[J]. 计算机教育,2006(7).
[3] 宋广华,李善平,郑扣根. 边学边干:操作系统课程教学改革的探索与实践[J]. 计算机教育,2006(7).
15、
新形势下信息技术教学的研究改进措施
关键词:信息技术教学;改进措施;创新
摘要:众所周知,信息技术已经涉及了人们工作生活的各个领域,并且在各个领域发挥着及其重要不可或缺的作用。在这个信息知识大爆炸的时代,学习掌握信息技术的必要性显而易见。在国家教委提出新课改以后,信息技术教学也
16、应当作出相应的调整,无论是在课程内容,课程的教学理念还是在课程的授课方式上,都应以启发式教学为中轴,不断地创新教学。
一、信息技术教学的现状
新课程背景下的信息技术课堂教学,在形式上应该是灵活多样的。信息技术学科本身就是一门集人文与科学相结合的学科,而且是一门实践性很强的学科,强调对实践操作做思辩性考察,这就要求教师在教学过程中不能再用“填鸭”式的满堂灌,而是引入新型的授课方式。在这种授课方式下,教师成为问题的点拨者和研究的指导者,学生成为课堂的主体,由学生自己思考问题、提出问题和解决问题。当前我国信息技术教学,效果参差不齐。正确的接纳认识
17、这些不足才有利于研究信息技术教学改进措施。
(一)在中国,信息技术这一学科已开设多年,但是一直作为副科进行教学。学校以及家长因为升学压力,在信息技术教学领域认识偏差。不少学校在升学压力严重时,信息技术教学已出现形式化现象。
(二)教学还是以老师泛讲,学生广听为主。
二、丰富教育方式,提高学习兴趣
在众多科目当中,很难避免在教授理论知识的呆板化。信息技术教学亦是如此。如何让学生在这一块变被动为主动?
(一)树立教师个人魅力。魅力不只在于教师外表,更多的是教师自身所散发的吸引人的气质,比如第一堂课就强记忆力的记住班级所有学生的姓名,幽默风
18、趣的言谈举止,自身知识的广泛深厚等等。
(二)教学理论知识形象化。个人认为没有一个年轻人会拒绝音乐与图片带来的听觉视觉上的享受。那么,我们可以把理论知识实际化,以实体出现在学生的课堂中,更加的生动形象,如一段MP3,一段FLASH,刺激到学生学习的求知欲后,很好的把学生学习的被动性转为主动性。
(三)适当增加课题以外的信息技术知识。相信大家都听说过一个词“开小灶”,它的直接目的是学生额外的得到了老师的辅导,它的间接目的是拉近师生之间的距离。在课堂中,做为信息技术教学的教师,适当的开一开小灶,从简单来说,如一个复制粘贴的快捷方式,关机的快捷方式等等,再在一定程度上一定的提
19、高了学生的学习兴趣,另一方面建立好了师生关系。
三、重视能力培养,全方面发展
在以往的教学中,关于能力的培养,大多是书本之后上机操作的练习题,不可否认这在学生操作练习应用当中很重要,但是在学生掌握的情况下,这样的操作练习将是重复而无意义。
在我们所接触的课堂中,我们大可以将小组讨论,操作观察,自我试验,资料调查,信息收集等方法汇集一起,融入课程。同时我们也可以拟定班级比赛,以学期为比赛时间。如个人博客,以点击回访量为比赛依据,让学生将自己的知识能应用上去,同时也增加了趣味性。
如个人设计作品展,以小组为单位,分设成不同的兴趣小组,自我设计完成自己
20、的作品,在期末时办一个小小的作品展。
形式还有很多,总之学生的能力目标不只是上机测试和打字速度的考试分数,而是形式多样化的作品展。
四、加强素质教育,提高认知能力
每一样事物都有正反两面,好坏之分。信息技术在当今社会扮演着及其重要的作用,但是也不能否认的是,它也造成了一定的不良后果,更有甚者为犯罪!所以在教授这一门课程时不可忽视的是情感目标教学。让学生认清什么是应该做的,什么是不应该涉及的。要培养学生在这一方面的认知能力和一定程度的自控能力。
(一)树立榜样。素质的培养是潜移默化的,当代学生都有一定的叛逆心理。所以教师在平时授课时的个人素质要时时
21、在意,时时树立。
(二)培养学生的责任感和自尊心。如今的信息技术,给我们带来了大量的信息,层次不一,所以在平时课堂中需要适时的开展一些活动,培养学生对国家、对社会的责任感,不盗取滥用信息危害国家、危害社会;同时也要树立学生自身的自尊心,在不危害别人的同时,自己不要成为被危害的对象,学会保护维护自己的信息权益。
参考文献:
[1]何克抗,吴娟.信息技术与课程整合.北京:高等教育出版社,2007,7
[2]杨光泉.新课程课堂教学艺术.四川:四川教育出版社,2006,12
[3]李艺.信息技术教学研究与案例.北京:北京高等教育出版社,200
22、6,12
[4]邬家炜.信息技术教学论.广州:华南理工大学出版社,2007,5
计算机应用的互动式教学模式
关键词:互动式教学;教学模式
摘要:随着计算机网络技术迅速发展,传统的教学模式暴露出很多弊端,本文探讨一种基于建构主义理论的,以学生自学为主,教师指导为辅的新型教学模式。
随着科技日新月异的变化,计算机在社
23、会生活各领域中得以逐步推广和应用,社会各界对不同层次人才的计算机水平也提出相关要求。为适应这种需求,中等职业学校不同程度地开设了《计算机应用基础》这门课程,并把它作为强化学生素质教育的一项重要内容。但是,这门课的教学现状如何呢?调查发现:目前大部分学校采取的是理论和实践相间的方法。不少教师认为这是一种先理论后实践的行之有效的教学方法。而学生则强烈要求改变此种教学方式。计算机技术迅猛发展,为什么教学上仍离不开粉笔和讲台。多媒体技术广泛应用,为什么上课还是单一听老师讲,下节课在计算机上回忆操作。眼下尽管很多学校已经开始多媒体教学,教学手段有所改进,但诸多原因效果不甚理想,学生迫切希望互动式教学模式
24、取代传统教学模式。
什么是传统教学模式?什么是互动式的新型教学模式?之间存在着怎样的差异?如何实现二者之间的转变呢?
让我们着重来明确和探讨以下几个问题:
一、教学模式是指在一定的教育思想,教学理论和学习理论指导下,在某种教学环境和资源的支持下的教与学活动中各要素之间稳定的关系和活动进程结构形式。
二、传统教学模式的主要特点是:教师为中心,教师利用讲解,板书和各种媒体作为教学的手段和方法向学生传授知识;学生被动接受。教师起主导作用;学生被动接受。教材是向学生灌输的内容;教学媒体是向学生灌输的手段。传统教学模式的弊端有:1.角色的错位:教师是主动施
25、教者,学生成了被动的“填鸭”。2.无法适应学生的个别化需求:3.难以调动学生的积极性。
三、互动式新型教学模式弥补传统教学模式的弊端,提高教学效率,又能充分发挥学生的主动性,积极性。让教学不再是“填鸭式”的满堂灌,而是为学生所乐于接受的互动教学。新型教学模式的特点是:“以学生为中心”,在这种模式中,学生是知识的主动探索者和学习者;教师是教学过程的组织者,指导者,学生学习的帮助者,促进者;教材是学生主动学习的对象;媒体是学生主动学习,协作式探索的认知工具。
四、新型教学模式的可行性研究:1.理论基础在研究儿童认知发展基础上产生的建构主义,不仅形成了全新的学习理论,也正在形
26、成全新的教学理论。知识不仅可通过教师传授获得,还可通过意义建构的方式获得。“情境、协作、会话和意义建构是学习环境中的四大要素”。建构主义强调学习者的认知主体作用,又不忽视教师的指导作用。因此互动式教学模式实际上是建立在建构主义理论基础上的教学模式,以学生为中心,整个教学过程中由教师起组织者作用,利用情境,协作,会话等环境要素发挥学生的主动性,积极性和首创精神,最终使学生有效地实现对当前所学知识的意义建构的目的。2.“情境的创设”,教师作为教学活动的组织者,必须为学习者的主动学习提供合适的环境、必要的设备条件和多方面的信息资源。在《计算机应用基础》的教学中尤为适用。例如,在Windows和Off
27、ice的教学中,我们都可以在多媒体电子教室进行,教师利用局域网的服务器和因特网向学生提供各种教学资源,学生采取自主或协作的方式学习,遇到疑难问题可及时向教师请教,以求得到解决。
五、从传统向新型教学模式转变过程中,需处理好以下关系:教师角色的转变。教师由教学活动的中心,变换成教学活动的组织者和学生学习的指导者,帮助者。因此,教师既要做好心理上的转变,在教学设计和教学过程中也要做好实际角色的转变。学生学习地位的转变。在新型教学模式中,学生从被动接受者变成主动学习者,要求学生适应这一转变的态势,积极、主动地进行学习,能动地发现、探索和钻研知识,把握学习的主体地位,真正成为学习的主人。媒
28、体作用的转变。传统教学模式中,是教师的教学工具,新型教学模式中,则成为学生主动学习和认知的工具。这不但要求学生积极掌握各种媒体的使用,还要求学校和教师改革观念,充分发挥学校现有设备的作用,让各种现代教育媒体真正为学生所用。教学过程的转变。教学过程由传统的讲解说明转变为通过情境创设、问题研究、协商学习、意义建构等以学生为主体的过程。在这种转变中,教师的劳动从原来的以“课堂教学”为主转为以“教学设计”和“情境创设”为主。
在建构主义理论的指导下,充分运用计算机网络技术,在计算机应用教学中改变传统教学模式,构建新型互动式教学模式效果会更好。
参考文献:
[1]李克
29、东.应用现代教育技术建构新型教学模式.学校教育现代化建设
[2]何克抗.建构主义革新传统教学的理论基础.电化教育研究,1997,3-4
[3]查尔斯.教育研究导论.中国轻工业出版社
[4]薛维明,王振灿,金健舟.中学计算机教学法.清华大学出版社
摘要:本文针对“计算机图形学”课程特点及传统教学模式存在的不足,提出“理论知识系统化,
30、教学过程实例化,应用层次多样化”的教学思路,将“计算机图形学”算法原理与交互式图形软件设计相结合,并将算法原理应用于实际问题当中,取得了良好的教学效果。
关键词:计算机图形学;教学模式;应用层次多样性
1教学现状分析
“计算机图形学”是一门理论与实践结合很强的课程,是计算机各专业的主干课程。通过学习这门课程,学生应掌握计算机图形生成与处理技术的基础知识、基本原理和算法[1],具有开发图形软件的设计能力,为今后从事计算机图形图像处理领域的研究和开发工作打下良好的基础。在教学中,教师利用高级语言(例如Visual C++)进行程序开发,促进学生熟练掌握高级
31、语言,为开发图形应用系统打下程序设计基础。然而在多年的教学中,笔者却发现多数学生认为这门课程算法太抽象,原理太难,编程不易,面对具体问题时不知如何运用所学算法给出切实可行的解决方案并
编写程序,得出预期结果。
产生上述问题的主要原因是[2]:长期以来,受传统教育的影响,“计算机图形学”始终没有摆脱先理论后应用的传统教学模式,这一方面使学生在算法及原理学习阶段缺乏对抽象理论知识的感性认识,对内容抽象、较难理解的算法只能“死记硬背”,学习过程“似懂非懂”,根本谈不上“深入理解”,另一方面使学生进入实践应用学习阶段时对学过的算法及原理遗忘甚多,没有了理论指导,实践就无从下
32、手。学生感觉算法及原理和实践环节是两张皮,根本无法学以致用,专业兴趣得不到激发,学习积极性难以调动,越学越乏味,逐渐失去了信心,严重影响教学质量,难以达到预期效果。此外,大部分教材对算法的描述并没有相应的程序代码,初学者总有一种不知所措的感觉,认为书上的算法及原理只是纸上谈兵,根本就无从实践,学完后就将其束之高阁。
如何改进教学方法,解决抽象原理与实践相脱节的问题,让绝大多数学生在有限的时间内迅速掌握课程的基础算法及原理,并运用于实践中,成为具有真才实学的高素质人才,是本课程研究的重要课题。
2教学模式改革
针对传统教学模式的不足,为了激发学生的学习兴趣,提高实践
33、技能与学习效果,教师应该从课程的大局出发,为学生搭建课程的整体构架,
由易到难,由浅入深把握课程的教学要求。笔者总结并提出了教学过程中自始自终贯穿“理论知识系统化,教学过程实例化,应用层次多样化”的教学思路。
2.1理论知识系统化
“理论知识系统化”是指整个课程中的算法原理遵循由浅入深的讲解方式,构建出系统化的图形算法原理的知识架构。
“计算机图形学”涉及的理论知识以算法原理为主,故需要详细解读,因为算法原理之间相互联系,互为支撑,故算法讲解应由简入繁,由易到难,搭建出合理的算法架构。
2.2教学过程实例化
“教学过程实例化”
34、是指在课堂教学过程中打破“重算法,轻实例”的教学模式,以教师为主导,学生为主体,运用算法的实例演示、算法对比等方式,让学生真切感受到本算法设计出的“所见即所得”优秀案例。
首先,在学习每一种算法之前,教师精心设计与现实生活相关联的、生动直观的、难易适中的实际问题,让学生思考如何利用现有的知识解决问题;再运用将要学习的经典算法解决同一问题,通过和前面的方法比较分析,让学生真正理解所学算法的优势。
其次,对所用算法的核心代码进行重点剖析。本课程中的主要算法都配有实现了的程序,但受限于课堂时间,教师不详细讲解,只对算法的核心代码作重点剖析,让学生深刻领会算法的精髓所在。
35、 通过上述分析讲解,学生获得“所见即所得”的程序效果图,加深学习印象,达到了教与学相互促进的目的。
2.3应用层次多样化
在“计算机图形学”中,学生从基于光栅扫描显示器的扫描转换开始,学习反走样技术、三维坐标变换、透视投影变换、Z-Buffer消隐算法、带有材质和纹理的光照模型算法等内容,制作出具有光照和纹理的动态消隐的三维旋转立体图,最终对图形进行交互式设计。
为了使学生能够由浅到深,深入理解和灵活掌握教学内容,提高软件设计的综合能力,教师在课程中遵循“验证性应用、设计性应用、创造性应用”三个层次组织实践性教学,知识的难度系数逐级递增,学生循序渐进提高实践技能。
36、
(1) 验证性应用。
学生在课堂学习基础上,通过上机实验实现教师课堂上演示的算法原理,对所学理论知识进行验证,进一步加深对所学算法原理的认识。
(2) 设计性应用。[3]
经过验证性应用,学生对算法原理已经有了深刻认识,接下来的设计性应用要锻炼学生选择正确的算法解决实际问题的应用能力。
为此,教师在重点章节的教学完成后,选取一些特定的应用案例,指导学生选取正确的算法。另外,为了培养学生良好的工作作风和方法,也为后续课程做铺垫,对于每一个应用案例,教师除了给出实际要求外,还要按照软件工程的方法明确实验步骤,即从问题的需求分析入手,在指定算法原
37、理的基础上详细设计问题的求解,最后进行编码及调试。
在设计性应用结束后,教师一定要对学生完成情况给以充分肯定和评价,还要对不足之处和共性问题加以补充和讲解,加深学生对每一种算法的理解,升华学生掌握知识的深度和完整性,真正达到知识正迁移的目的,使学生掌握的知识成为他们社会实践的向导。
(3) 创造性应用。
创造性应用层次是本课程结束后最后一个实践环节,一般以课程设计或计算机图形学大型作业的形式来体现,旨在培养学生的动手实践能力、综合运用能力、开拓创新能力。该层次强调给学生提供充分的学习自由度和自主性,让学生主动实践和亲身体验,为学生在编写程序和分析过程中发挥创造性提
38、供广阔的空间。
教师应着眼于全课程,从学生学习的实际情况出发,精心挑选一些与实际应用结合密切的综合应用实例,具有一定难度的题占30%,中等难度的题占50%,一般难度的题占20%,学生可根据自己的实际情况自由选择。每一个实例只需给出实验要求,学生则依照实验要求自行设计算法加以解决。
学生拿到题目及实验要求后,首先从分析题目的需求入手,经过构造算法、编程和上机调试等若干步骤独立完成题目,最终提交完整的大型作业报告。通过独立完成设计,深化对“计算机图形学”算法原理的理解,提高对知识理论的独立运用能力,提高程序设计与调试水平,养成严谨的科学态度和良好的工作作风。
3教学效
39、果
在计算机图形学中,变换矩阵是非常基础和重要的知识,许多资料只罗列出一堆矩阵公式、图表等,初学者很难有感性认识。学生通过本课程学习后,结合OpenGL这样一个非常流行的图形库,以实践方式阐述3D变换矩阵中最简单的三种变换:平移、缩放及旋转,效果如图1所示。
要做出具有真实感的图形,需要借助颜色模型、光照模型和映射等技术,图2展示了学生使用Visual
C++开发的圆环在各个方向的光照效果图。
4结语
“计算机图形学”课程是一门对理论和实践要求都很高的课程,在夯实学生基础理论知识的同时,培养学生解决实际问题的
40、能力。本文提出了在“计算机图形学”课程教学中引入“理论知识系统化,教学过程实例化,应用层次多样化”的新教学模式,使该课程的理论知识与交互式图形软件设计相结合,学生在掌握理论和实践锻炼两方面均感到应用自如,取得了良好的教学效果。
参考文献:
[1] 孔令德. 计算机图形学基础教程(Visual C++版)[M]. 北京:清华大学出版社,2008.
[2] 黄琼. 在计算机应用类课程中开展研究性学习的探索[J]. 南宁职业技术学院学报,2005(1):42-44.
[3] 唐世纲. 论案例教学的实施及功用[J]. 教学管理,2005(02):4-
41、7.
Research and Practice of New Model in “Computer Graphics”
LIU Jin-gang, KONG Ling-de, WANG Jin-zhong
(Computer Engineering Department, Taiyuan Institute of Technology, Taiyuan 030008, China)
Abstract: It’s analyzed the characteristic of computer graphics and shortage of
42、traditional model of instruction in the paper. A new teaching model that theory is systemic, teaching process has instances, applied hierarchy is diversification. The scheme combines arithmetic of computer graphics and interactive software design, which apply theories to practice, and has obtained b
43、etter teaching effect.
Key words: Computer Graphics; teaching pattern; multilevel
C语言程序设计课
44、程教学设计探讨
关键词:教学设计原理;教学目标;九步教学事件;教学测量与评估
摘要:本文针对C语言程序设计课程教学中难点多、语法知识点多、学生学习兴趣不高等问题,提出将加涅的教学设计原理应用于该课程的教学中,克服传统“填鸭”式教学模式的弊端,充分发挥学生的主观能动性。实践表明将加涅提出的教学设计原理应用于C语言程序设计课程的教学中,教学效果良好。
C语言程序设计课程是很多高校理工科非计算机专业本科生必修的计算机基础课,C语言程序设计课程本身对教学要求比较高,学生不仅仅学习C语言程序设计的语法知识,更重要的是掌握程序设计方法。在以往
45、的教学实践中,我们发现很多学生认为C语言程序设计课程是一门比较难的课程,特别对一些大学新生,C语言程序设计的先修课程为计算机基础,学生普遍认为跨度大,有畏难情绪,教师由于课时紧、内容多,而过多关注C语言语法知识的讲解,算法讲得比较少,且知识点比较分散,学生对知识的把握没有一个整体的概念。如何提高教学质量,如何能使学生尽快入门,激发学生的兴趣,如何培养学生的计算机逻辑思维能力,如何提高课堂效率,这都是教学中要思考的问题。在C语言程序设计课程教学中充分考虑大学生的学习心理,引入先进实用的教学设计思想是非常必要的。我们将美国著名教育心理学家加涅提出的教学设计原理应用于该课程的教学中,取得了良好的效果
46、
1教学设计理论
加涅是美国著名的教育心理学家,他的《教学设计原理》代表了20世纪末科学心理学与学校教育相结合的最高成就。他提出的核心思想是“为学习设计教学”[1],教是为了学,他认为教学应考虑影响学习的全部因素,即学习的发生要同时依赖内部条件和外部条件,教学就是要通过安排适当的外部条件来影响和促进学习者的内部心理过程,使之达到理想的学习效果。他提出教学设计的基本任务是阐明教学目标、教学过程、教学方法和教学结果的测量与评价。
教学目标。把教学目标分为五种学习结果:言语信息、智慧技能、认知策略、动作技能和态度,这五种学习结果分为认
47、知、情感和动作三个领域。教学目标应是面向学生预期的学习结果。
教学过程。加涅将教学阶段分为九个教学事件:引起注意、告知目标、提示回忆先前的知识,呈现教材、提供学习指导、引出作业、提供反馈、评估作业、促进保持和迁移。
教学方法包含教材呈现方式、师生的相互作用方式、教学媒体的选择运用。
教学结果的测量和评价。教学是一种目标导向的活动,要求教师在实施教学活动前,对学习的预期结果做出陈述,教师在这个明确目标指导下,安排教学顺序,组织师生的双方活动,根据教学目标对学生的学习进行测量和评估,如果评估的结果表明教学目标已经达到,则教学进入下一个循环。
这样的教
48、学设计原理在教学活动中成为既能发挥教师主导作用,又能充分体现学生认知主体的教学模式。在此模式下,教师有时处于中心地位,起主导作用,在此期间,学生有时也处于传递-接受的学习状态,但更多的时候是在教师的帮助下进行主动思考、主动探索和主动发现。
2C语言程序设计课程教学设计研究
依照加涅的教学设计原理,根据C语言程序设计课程的特点,在教学实践中对C语言程序设计课程进行系统的教学设计,主要包括设计教学目标,教学过程的组织,教学方法的探讨,以及教学结果的测量与评估。
2.1学生特征分析
学生是学习的主体,只有了解学生,教师才能制
49、定出符合学生实际能力的教学目标,学生特征信息的来源主要是一些问卷调查,它主要了解学生的编程基础和学习程序设计的愿望。调查分析显示,大约10%的学生在高中学过编程,50%左右接触过编程,40%左右从没有接触过编程,C语言程序设计的先修计算机课程为计算机基础,大部分同学对编程比较感兴趣。我校很多理工科专业的学生在工作中必须使用程序设计语言这个工具,这类学生学好程序设计语言的愿望非常强烈,而一些专业使用程序设计语言较少,学生的学习热情不高。
2.2确定教学目标
教学目标作为教学活动中学习者要预期达到的学习效果,对教学活动起着导向、激励、调节、检测和评价的作用,这有利于教学目的
50、明确化、应用能力培养的具体化,是教学活动的出发点和归宿,其行为主体是学生,而不是教师。教学目标的陈述要从学生的角度出发。我们把C语言程序设计课程的教学目标分为“认知、理解、应用,综合”四级水平,每级水平又划分为若干子类,并为每一级水平的教学目标配置适当数量的有代表性的测试题。“认知”水平主要解决对C语言知识点的知与不知的问题,“理解”水平是指掌握概念、算法等知识,能用自己的算法语言和逻辑思想叙述和解释概念、算法等知识。“应用”水平是指在理解知识的基础上,通过练习,形成基本技能,能够用它去解决一些问题,主要考查学生将所学的C语言知识点和算法应用于实践中。“综合”水平是指能够综合运用知识解决问题,






