抗震救灾背后的测绘新科技_第1页
抗震救灾背后的测绘新科技_第2页
抗震救灾背后的测绘新科技_第3页
抗震救灾背后的测绘新科技_第4页
抗震救灾背后的测绘新科技_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、抗震救灾背后的测绘新科技 摘要:本文提出了一个对于程序设计入门教学的改革方法,利用Alice三维虚拟世界帮助学生理解程序设计的流程及基本概念。同时根据教学实践总结并分析了Alice作为初学程序设计环境的利与弊,并对如何将Alice课程同计算机现有课程体系的整合进行了探讨。<br>关键词<br>本文来自:计算机毕业网 :Alice;虚拟世界;面向对象;对象优先;三维动画<br><br>1引言<br><br>如何对基础相对薄弱的高职高专学生实施程序设计的入门教学,一直受到计算机教育者的关注。目前,在教学过程中所面临的主要困难,

2、是在讲解烦琐的语法知识同时帮助学生学会抽象算法,通过程序的函数、方法去实现功能。在过去的几十年,国外计算机教育者开发了许多软件帮助初学者学习程序设计,其中包括最早的Karel the Robot,以及持续到今日的Jeroo,Greenfoot等。其中,三维虚拟世界的图形程序设计环境Alice,在国外大学程序设计入门教学中的应用日益得到关注1。2006年美国国家科学基金 (NSF) 关于应用Alice进行教学的会议吸引了来自各地的学者,Alice相关出版物也陆续出现。国外计算机教育领域对Alice所带来的积极因素表示了肯定23,虽然在国内尚未普及,但是我们相信在未来几年Alice将受到国内计算机

3、教育领域的关注。<br><br>2Alice的概述<br><br>Alice是由美国卡耐基·梅隆(Carnegie Mellon) 大学开发的以学习者为中心,支持面向对象程序设计的三维虚拟世界动画教学工具软件,由提供免费下载。Alice的显著特点是支持图形化程序设计,能够生成三维虚拟世界中的对象,将场景的设计同程序设计结合起来。学生可以创建不同的对象和它们的行为构建虚拟世界中的不同场景。其中,虚拟世界的组成对象(人物、动物、场景等)可以从扩展的三维对象图库中进行选择。<br>Alice提供拖放的图形用户界面,使得学生集中精力

4、于程序设计的核心程序结构的组成。图形界面提供了组织对象、和对象成员(接口和数据)和方法的图形化的提示。Alice界面根据功能分为5个区域 (如图1所示),其中包括对象树,显示的是场景中出现的对象;World窗口,将对象添加到该窗口中进行场景的设计;事件区,对事件的响应进行编程,函数方法细节区,显示各个对象的属性、方法和函数;代码编辑区,通过将对象的属性、方法、函数拖拉到该区,根据提示自动生成代码。<br><br>Alice图形化拖放界面将语法学习同语义学习分离,使学生创建一直处于可运行状态的代码。因此在这个过程中,不会出现语法错误,仅仅可能出现逻辑错误,但是不影响整个程

5、序的运行。<br><br>3Alice的教学特点<br><br>3.1寓教于乐的教学方式<br>寓教于乐的教学方式主要体现在通过输出结果的动态图形化。由于三维图形输出方式以容易解释且直观的方式给学生展示了程序设计的结果,因此,图形化的输出可以帮助学生理解如何控制结构影响输出,一旦程序运行结果并非预期结果,使得学生非常容易定位错误代码。<br>图形输出的另一个好处在于增强学生对于程序语句的理解。三维动画在视觉上表达了对象的当前状态,学生编写代码能直观地了解到预期的状态变化。<br>寓教于乐还体现在Alice在教学

6、过程中能够培养学生编程信心。例如,学生编写的代码出现错误,程序并不会因此停滞不前,而仅仅是在输出的动画中给人以意想不到的结果。因此,Alice在培养学生关于程序设计能力方面的信心具有一定成效。<br>如图2所示,图中显示的是Hunt程序 (狼追捕兔子) 运行结果的的动画场景,通过判定两者间的距离来确定追赶的运动轨迹,当两者的距离小于一定值得时,兔子将发出求救信号。相关代码如图3,其中通过whiteRabbit 的函数 (function) distance to 设置与wolf的距离小于0.9时,调用whiteRabbit的方法say() 发出求救信号。该程序包括了程序设计中的顺序

7、结果 (Do inorder) 、条件语句(if),线程 (Do together) 等知识点的学习,使得学生在设计场景的同时理解了原本抽象的概念。<br><br><br>3.2对象优先教学策略<br>在传统的面向对象教学中,教师往往过分强调知识体系,遵循先变量后对象讲解的过程。因此,初学者常常会迷失在对变量定义、命名初始化等一些语法规则上,而忽略了对象甚至是程序结构的学习。<br>Alice环境采用了目前较为流行的对象优先教学策略,通过将对象的可视化进行面向对象程序设计概念的教学。每个Alice虚拟世界中的可视单元中都是一个对象,因

8、此对于教师非常容易地遵循对象优先的教学方法。在上例中,whiteRabbit是这个虚拟世界中的一个对象,它具有相关的属性、方法和函数。程序设计者只需要将左边列表中的对应项拖曳至右边的代码编辑区,根据提示信息就能方便地实现特定的功能效果。整个设计者过程中,学生只需要考虑对象及程序的执行流程而不需要涉及太多的语法。<br>3.3团队学习的方式<br>在Alice的实际演练中,我们引导学生会根据所做的项目自由分组讨论,去设计实现相关动画效果。在上面Hunt程序中,如果由一个小组进行合作编程,往往可以将任务分解成程序运行的脚本编写,也即剧本的编写;wolf运动的方式;Rabbi

9、t运动的方式;音响效果等。当程序设计的运行结果没有达到预期效果时,他们会聚集在一起分析问题、解决问题。通过分工合作进行学习程序设计的开发,在一定程度上培养了他们的团队合作意识。<br><br>4Alice的教学实施方法<br><br>在未来几个学期中,我们将在高职高专的计算机程序设计入门教学中将Alice课程将分阶段、按步骤同现有的课程提议进行整合。<br>4.1第一阶段独立授课方式<br>Alice程序设计可以作为一门课程单独教授,这种方式的好处在于,一个学期中学生仅仅学习一种开发环境,不容易产生混淆。它的弊端是对于后续

10、程序设计开发课程的学习很难保持连续性。如果后续程序设计的课程(例如C+,或Java)的讲解不是以Alice进行类比讲解,那么Alice作为程序设计语言入门工具的优势可能消失。因此,如果将Alice作为独立课程,那么一定要在后续课程中明确地将两门课程进行过渡衔接。<br>4.2第二阶段交叉教学方式<br>将Alice同其他高级程序设计语言课程(例如Java) 在同一个学期内交替讲授。首先在Alice中表达式、变量、控制流程等基本概念进行讲解,使得学生对抽象概念有了直观了解后,接着将这些概念在Java再现。类似地,所有概念基本上按照先在Alice中讨论,然后在放到Java中

11、进行教学。这种方法的重点在于如何恰到好处地实现两门课程的整合。<br>4.3第三阶段阶段教学方式<br>将Alice同Java开设在同一学期,分成两个阶段进行,先将Alice讲授56周,主要讲授Alice基本应用以及面向对象程序设计中的方法、参数和继承等概念,接下来的教学周进行Java的教学。在这个阶段,教师可以提供给学生一个语法或术语对照表,把Alice和Java中的概念一一对应起来,帮助学生从语法上进行过渡。学生在初期可能会感到不适应,这是由于缺少Alice图形画的直观显示,许多学生对于如何组织语句会感到困惑。因此这个阶段,教学重点是帮助学生从拖曳生成代码过渡到键盘

12、输入代码,同时将变成重心放到语法学习上。图4演示了从Alice代码到Java代码的过渡。<br>目前,我们进行的主要以独立授课方式为主,并以选修课、兴趣小组的方式在各个年级进行试点,这将为日后Alice真正融入计算机教学课堂做好充分准备。<br><br>5结束语<br><br>将Alice三维动画场景的设计应用于程序设计教学中,给整个计算机教育带来了耳目一新的感觉。与此同时,与Alice相关的教学方法改革包括对象优先等教学方法等也将在程序设计教学中日益得到推广。当然,我们也发现了Alice存在的一些缺陷。尽管避免语法错误能增强学生学习

13、的自信,但是如何选择正确的点将Alice过渡到实际开发语言的学习 (C+或Java) 的学习将是我们下一阶段研究的重点。 <br><br>参考文献<br>1 Adams.Joel. Alice in Action. Computing Through AnimationJ.Course Technology,2006. <br>2 Dann, W., Cooper, S. and Pausch.R.Learning to Program with AliceM.Prentice Hall,2006. <br>3 Herbert, Ch

14、arles W.An Introduction to Programming Using Alice, Course Technology, 2006. M Jeroo, 2006. Online. Internet. Sept. 8, 2006. Available WWW: <br>4 Kelleher, C. and R. Pausch. Lowering the barriers to programming:.A taxonomy of programming environments and languages for novic

15、e programmersJ.ACM Computing Surveys 37(2),Jun. 2005: p. 83-137. <br> </p> <p> </p> <p> </p> 面向对象的系统设计(第2版)(ISBN:9787302147985邵维忠、杨芙清编著,清华大学出版社出版)是介绍面向对象设计方法的著作,是我们的前一本著作面向对象的系统分析(第2版)的姊妹篇,两本书可构成一个完整的面向对象的分析与设计方法体系。<br>面向对象的设计(OOD)是在面向对象的分析(OOA)基础上继续运用面向对象方法

16、解决软件生命周期中设计阶段的问题,产生一个满足用户需求,并且完全可实现的系统模型,即OOD模型。<br>以往大部分关于面向对象分析与设计(OOA&D)的著作都是以论述OOA为主,对OOD的论述则过于简略。对软件生命周期的设计阶段需要解决的大量实际问题缺乏全面、深入的讨论和切实可行的面向对象设计策略。作为在当前科学技术背景下出版的OOD著作,在学习和借鉴前人研究成果的基础上,我们力求在以下方面取得进步:<br><br>1系统地阐述00A与OOD的理论体系<br>本书从区别早期的00D和基于OOA的OOD入手,通过讨论二者在内容和特点上的不同

17、,在概念上澄清了关于什么是OOD的问题。把面向对象的观点运用于整个软件生命周期,在此前提下对什么是OOD给出更确切的定义。同时详细地论述了OOA和OOD之间的关系。<br><br>2充实和完善OOD的内容<br>在面向对象的软件开发中,OOD是软件生命周期中的一个大阶段。在这个阶段中有大量的技术问题需要解决,需要建立一个可实现的系统模型。本书的目标是向读者提供一种内容比较完善、策略具体、可操作性强的OOD方法,其中包含了普通应用系统的设计阶段需要解决的大部分问题,包括全局性设计决策和局部的模型细化两个方面的问题。<br><br>3 充

18、分运用OO基本概念解决设计问题<br><br>我们在面向对象的系统分析(第2版)中提出,在00A中应该充分运用面向对象的基本概念(即目前大部分面向对象编程语言能够直接支持的概念)解决各种复杂的建模问题,限制扩充概念的引入。面向对象的系统设计(第2版)依然坚持这一宗旨,没有采用比OOA更多的面向对象建模概念,更没有采用诸如“模块”、“块,等非OO的建模元素。此外,本书对所有的设计问题都是运用面向对象的观点给出设计策略,使读者能够在软件开发中完全采用面向对象的概念和表示法来建立系统的设计模型。这意味着本书运用了尽可能少的建模概念解决了较多的设计问题。建模概念的简练使本书提出

19、的方法更容易学习、掌握和使用,并使得OOA、00D和OOP在概念上保持高度一致,使模型与实现后的程序具有良好的映射关系。当然,为了做到这一点,本书给出了更强的过程指导,告诉读者如何运用一个精练的OO基本概念集合去解决各种复杂的建模问题。<br><br>4适应当前计算机科学技术的新发展<br><br>目前,大量的新技术已被广泛地运用到系统开发中。在这种形势下,要求OOD方法做出相应的发展。我们的目标是力求在OOD方法中体现计算机科学技术的新发展。本书的OOD方法是根据当前的技术背景提出的。针对在当前软件开发中被广泛采用的几种主要技术,分别给出相应的

20、设计策略,并且用OO概念表达其设计决策。<br><br>5解决工程实践中提出的问题<br><br>在本书的写作过程中,作者曾经以技术培训、工程指导、项目合作等多种方式与软件企业界的人士进行接触和交流。他们在运用面向对象方法进行软件开发时,常常在OOD阶段遇到各种问题。其中有些问题在以往的著作中找不到现成的答案。这些来自工程实践的问题对于OOD方法的研究和发展具有很强的促进作用。本书的许多内容是针对这些问题开展研究并总结提炼结果的。<br>本书的第1版于2003年2月出版,数年来已多次重印。这次再版主要有以下变化:<br>&

21、lt;br>1按照面向对象的系统分析从第1版到第2版的内容变化,对本书的内容做了相应的修改与调整。<br><br>2根据UML20的最新版本和我国的“信息技术软件工程术语”(GB/T114572006)国家标准等标准化文件,进一步规范了全书的术语和模型元素的表示法。<br><br>3在第7章对UMLlx的介绍和评论中,增加了引导读者阅读文献53关于UML2.0相关内容的线索。<br><br>4对全书的内容进行了全面的审核和订正,在文字表述方面比第1版更为准确和精练。 </p> <p> <

22、/p> <p> </p> 摘要:C、C+和Java等宿主语言是计算机专业必修的课程。本文指出了语言课程的教与学中存在的问题,并结合软件开发方法对课程教学法作了积极地探索。采用启发式教学、探究式教学,激发学生的学习潜能,使之掌握编程思维和方法,对提高他们的自主学习能力、培养他们的创新精神有着积极的作用。<br>关键词<br>本文来自:计算机毕业网 :宿主语言;教学法;自主学习<br><br>Study and Practice on Teaching Method of Computer Language Course

23、<br>Bian Xiaoyong <br>(Department of Computer Science & Technology, <br>Wuhan University of Science & Technology, Wuhan 430081)<br>Abstract: The host languages such as C, C+ and Java are a compulsory course majored in computer specialty. This paper points out the prob

24、lems existing in computer language teaching, and combining with software developing approach makes a positive exploration of course-teaching methods. We try to use heuristic or exploring method of teaching, which can greatly inspire the potential ability of the students and their programming idea an

25、d method are trained. Its extremely helpful to improve their Autonomous Learning ability and to foster them mentally. <br>Key words: Host Language;Teaching Method;Autonomous Learning<br><br>C、C+和Java等计算机语言(也称宿主语言)课程作为计算机专业重要的基础课,在计算机专业本科教学和软件开发中起着重要的基础作用。对学生用计算机解决实际问题的思维能力训练也是非常重要的

26、。而学生掌握计算机语言类课程的程度将直接影响到计算机在其专业领域中的应用,如何提高学生的程序设计能力和软件开发思维将变得相当重要。<br>本文针对计算机语言教学中的一些共性问题进行分析,对一些面向研究型的教学法进行探索,例如围绕以问题为主的教学法和“任务驱动式”教学法,能够很好地培养学生的自主学习和创新思维能力。<br><br>1计算机语言教与学中存在的主要问题<br><br>在计算机语言课程教学中存在着这样或那样的问题,例如偏离教学目标、无法贯彻实施新的教学理念,等,这些问题归根结底还在于教师“教”和学生“学”两个方面的问题。<

27、;br>1.1教师“教”方面的问题<br>教师“教”是一个教学环节中的重要部分。教师除了传授知识,还应该精心组织教学活动,创设情境,启发和引导学生学习。以下这些问题都会直接或间接地影响学生对语言课程的学习兴趣。<br>(1) 没有把握好理论教学和实例教学之间的尺度。高校计算机专业教师往往是“理论知识冗余,实战经验贫乏”,特别是缺少即时编程及案例分析经验,这就制约了实例教学的开发应用,学生的学习热情无法调动起来。<br>(2) 缺少应有的情境设计。教师在讲解完某个知识点后一般要举例予以说明。一些教师的做法是直接运行教程上的例子或让学生看懂就行,而没有创设

28、与实例有关的,尽可能真实的情境。例如对这样的例子是否合适,有没有更好的做法等问题情境,由此提出具体的编程要求。<br>(3) 强调语法或算法为主的教学。在教学中有些教师片面强调以语法教学为主或以算法设计为主的方式,前者缺少程序设计方法、算法设计与分析、软件工程等方面的实训,而后者只讲解算法的设计。这样学习的结果是弱于编程或在“虚无”中编程。<br>(4) 缺少服务于学生所学专业的理念。教师缺乏对学生已有的知识结构和学习心理特点之间关系的研究,在教学设计时没有充分考虑学生的专业特点而不加区分地采用同一种教学方法和策略,结果是学生没能将程序设计的能力迁移到实际的工作和研究中

29、。事实上,学生最容易在所学专业上出成果。<br>因此,教师对如何“教”进行定位是一个很重要的环节,它对教师提出了更高的要求。<br>1.2学生“学”方面的问题<br>学生基本上是在应试教育环境下培养出来的,习惯于有教师监督的学习,容易产生依赖心理,常常满足于课堂上听懂,课后不去查阅相关书籍和知识。主要存在的问题有:<br>(1) 缺少编程训练和积累。计算机语言课程是一门实践性非常强的课程,学习与掌握它们需要进行一定数量的、综合性和有针对性的训练。大多数学生仅仅满足于课堂部分理论知识的学习和巩固,即使在有限的上机实践中,也往往不注意集中训练和编程技

30、能方面的积累。因此难以达到“融会贯通”。<br>(2) 缺少相应的编程设计方法。许多学生在写C程序的时候,不论程序多大都用一个函数实现,缺少模块化的编程思想,在C+编程中难于捕捉和创建问题域模型,在Java编程中不能设计易于部署的可重用组件。因此他们不能掌握面向过程的编程方法、面向对象的编程方法和面向组件的编程方法。<br>(3) 习惯于监督学习。学生长期以来囿于有教师指导和监督的学习情境,他们的依赖性很强,这不利于开放式环境下的自我学习,无法发挥他们的主体作用,也就无从谈起他们在求知中的主动性和创造性。<br>(4) 缺少团队合作精神。在布置大作业或课程设

31、计时,往往将一个大的课题分给课题小组,要求学生分工协作、共同讨论方案,划分模块,并最终承担一定的工作。在实际的开发应用中,他们没有意识到“学习团队”的重要性,缺少交流和提不出问题,不能互相取长补短,最终影响到课题的完成。<br>教师在教学过程中,针对上述这些问题要及时引导学生,帮助他们走出误区,正确认识和对待语言课程的学习。<br><br>2新型教学法的运用<br><br>在计算机语言教学过程中,不仅要学习语言的语法和编译器的相关知识,更重要的是要学习程序设计的思想和算法,培养编程思维。在各种教学法中尤以以问题为主的教学法和强调实践活

32、动的教学法见长,它们很适合计算机语言类课程的教学。<br>2.1以问题为主的教学法<br>创新的动力在于不断提问。问题是学生学习的驱动力,没有问题便没有深入。教学的目的就是激发和培养学生的问题意识。所提“问题”,也是以教学中相关的一些问题为主。这样把学习知识的过程化解为提出问题、分析问题和解决问题的过程,促进学生创新精神和创新能力的发展。这一类教学活动的实际教学中以启发式教学居多。如果在教学中很好地运用启发式教学,就可以调动学生学习的积极性和主动性,又能启发学生的思维。例如,在C的main函数指针数组参数的学习中,许多学生无法理解基于指针数组参数方式交换字符串的例子。此

33、时,教师应解释两个概念:argv内存区和*argv内存区,也就是说这是两个不同的内存区,根据数组表示和指针表示之间的法则,*argv也就是argv0(这是编译器的逆行为),对*(argv+i)的操作就是对指针数组元素(下标i)的操作,而指针数组元素存放的是那些常量字符串的首地址。因而使用选择法交换指针数组的值也就是交换指向那些“逆序”的字符串的首地址。在此基础上学生就可以理解使用指针数组传递参数的过程。进一步,我们可以在“电子黑板”上画出argv和*argv的内存结构图,如图2.1所示。<br> </p> <p> <p><br>在图2

34、.1中,main函数的形参argv实际上就是一个二级指针变量,对应的实参是由命令行参数构成的字符指针数组的数组名。为什么*(argv+i)是指向第i个字符串而不是一个随机地址值呢?这时引导学生思考二级指针参数之间的传递关系,就不难理解了。所以容易得出结论:必须对argv+i执行间接访问运算才能得到某个参数值。接着让学生思考:能不能在程序运行后从终端输入多个字符串保存在argvi中呢?学生要经过一番思索和作横向类比后才能得出结论:不能从终端输入字符串并企图用argvi保存第i个串。学生在结合第一个问题的深刻理解后就可以很快得出第二个问题的结论了。这对避免学生写出逻辑错误的程序是很有裨益的,类似这

35、样的问题情境还有很多。启发式教学法对于C+和Java的教学也具有同样的效果,在此不作讨论。<br>2.2强调实践活动的教学法<br>这一类教学活动以探究式教学模式为主。“任务驱动式”是实施探究式教学模式的一种教学方法,是一种新型的、以学生自主学习,教师加以引导的教学方法,它打破了传统教学方法中注重学习的循序渐进和积累的循规蹈矩,不再按照教学内容从易到难的顺序,而是以完成一个“任务”作为驱动来进行教学,完成教学任务。在完成“任务”的过程中,又培养了学生的自学能力、创新精神和合作意识。<br>在C语言的教学过程中,结合“任务驱动式”教学法,我们将链表和文件章节的

36、内容整合起来布置一个大作业进行课堂教学。因此,将教学分为三个环节进行。<br>(1) 教师设计“任务”阶段<br>在教学内容的安排上,将以前的“知识点”为线索改用以“任务”为线索、以“子任务”为模块组织教学内容。教师应创设任务情境,将整个“任务”分为8个“子任务”,即8个模块,例如,链表创建模块,链表输出模块,链表插入模块,链表删除模块,链表排序模块,链表释放模块,以及链表保存模块和链表恢复模块。在模块的具体设计中体现出“任务”的层次性,即根据学生的实际水平来设计每一个模块,针对不同的课题小组来设计不同层次的模块。例如,链表创建要求用队列方式或栈式建立,链表表头指针的返

37、回分为3种不同的函数实现。整个任务确定之后,以一个“框架”程序的形式展示给学生。<br>(2) 学生自主探索“任务”阶段<br>这是一个开放式的教学环节,其目的在于让学生在自主探索的过程中完成对新知识的理解和巩固。在这个过程中,教师通过必要的讲解和引导让学生在情境中学习任务和完成任务。在学生学习遇到困难时,教师应该为学生作适当的指点,给学生提出问题,引导学生去探究。例如,学生在看到教程上使用二级指针变量返回链表表头指针的函数模块时就很纳闷,这时教师就应该讲解这 摘要:本文从教学理念、教学模式、课程体系、教学内容和教学组织、教学方法与手段等方面全面论述了哈尔滨工程大学计算

38、机实验教学的改革与探索,并提出了今后实验教学改革的重点内容和目标。<br>关键词<br>本文来自:计算机毕业网 :计算机实验教学改革;实验教学体系与内容;教学方法与手段;实验教学示范中心<br><br>1引言<br><br>2004年,哈尔滨工程大学(以下简称“我校”)启动了本科教育教学工作“九大体系”、“十大工程”建设项目,其中对实验课程、实验教学组织与管理、实验室建设等内容给出了执行规范和实施办法,并加大了对实验教学和实验室建设的投资力度。趁此东风,计算机科学与技术学院(以下简称“我院”)结合多年来在计算机实验教学方面

39、的坚实积累,启动了以“加强实践实验教学环节,培养创新能力”为核心目标的实验教学改革。经过“十五”和“十一五”初期的建设,逐渐形成了以“三化结合、六个并举”为教学理念,“分层递进教学、强化个性创新”为教学模式的实验课程教学体系,取得了宝贵的经验和可喜的成果。<br><br>2实验教学理念<br><br>我院高度重视实验教学,围绕“加强实践实验教学环节,培养创新能力”这一目标,我院提出了“三化结合、六个并举”的实验教学理念,将其作为指导实验教学建设的指导思想。<br>“三化结合”是实验教学体系构建的基本思路。“三化”是指软硬件实验环境一体

40、化、实验平台综合化和实验内容系统化。通过“三化”的结合,使学生在完善的实验环境下系统地完成计算机专业所要求的软硬件实验,提高综合实践能力,锻炼创新思维,培养创新意识。<br>计算机技术的巨大进步和应用需求的迅速提升推动了系统规模的大型化和功能实现的复杂化,这就要求计算机专业的毕业生具有对复杂大系统的分析能力和设计能力,而传统的教学模式将计算机实验分成了硬件和软件两个系列独立进行,各行其道。这种单纯的硬件(或软件)实验不利于学生软硬件综合素质的培养,传统的硬件设计和软件设计相分离的设计方法已经成为阻碍设计和实现复杂大规模系统的关键因素。基于这一认识,以培养学生软硬件综合素质为出发点,

41、我院在2004年启动了以“三化结合”为基本思路的实验教学的改革和实践。“软硬件一体化的实验环境”有利于培养学生软硬件综合素质;“综合的实验平台”可以进行多课程内容交叉的综合实验,有利于培养学生的综合设计能力;实验内容的系统化有利于培养学生对复杂大规模系统化的分析、设计和实现能力。<br>“六个并举”是实验教学体系实施的指导原则。“六个并举”是指:师资建设与实验教学改革并举,理论教学与实验教学并举,课内实验教学与课外开放实验并举,实验开放与成绩评定改革并举,学科建设与实验教学中心建设并举,通识实验教学与个性化教育并举。“六个并举”勾划出了教学、师资、学科相互促进、协调发展的蓝图,为计

42、算机实验教学的可持续发展提供了保障。<br><br>3实验教学体系结构<br><br>在“三化结合、六个并举”教学理念的指导下,我院提出了“分层递进教学、强化个性创新”的实验教学模式,形成了特色鲜明的实验教学体系(如图1所示)。<br><br>图1 计算机实验教学体系结构<br><br>“分层递进培养”是指:<br>(1) 根据难易程度,将实验内容分为普及层次、中层次和高层次三个有递进关系的层次,不同的实验项目分属于不同层次。在完成下一层次实验项目的基础上,学生可以进级到高一层次,采用递

43、进的方式逐步完成所有实验项目。<br>(2) 设置通识教育、专业教育和创新教育三个实验平台,用以开展这三个层次的实验教学内容。通识教育平台对应于计算机基础实验,学生科技社团的基本培训,嵌入式系统、软件程序设计等普及性讲座。专业教育平台对应专业基础实验,课程设计,毕业设计,学生科技社团活动,大学生科研训练计划,我校五四杯科技竞赛。创新教育平台对应国家级(国际级)嵌入式系统竞赛、ACM/ICPC程序设计大赛及其他国家级(国际级)竞赛,自主研发和创新类项目,实际科研项目。<br>“强化个性创新”是指:<br>(1) 在各层次实验项目的教学中,逐步强化学生创新能力的

44、培养,要求每个学生在完成通识教育平台下的实验项目基础上,必须进行与其能力匹配的科技创新实验项目。<br>(2) 充分尊重每个学生的个性特点,为有突出能力的学生定制“因材施教”的实验教学项目。<br>(3) 对“拔尖”学生实行跟踪培养,直接参与实际科研项目的研究工作,这些学生毕业后可直接“保研”到科研研究室,继续他们的科学研究工作。<br>这种实验教学体系既保证了培养方案要求的基本实验项目的完成,又满足了不同层次学生的需求,培养了学生对各门课程内容综合应用的能力。更为重要的是,这种实验教学体系可以极大地增强学生创新意识的培养,特别有助与个性化人才创新实践能力的

45、激发和培养。实践表明,这一尝试已获得了显著的效果。经过几年的努力,培养了一大批具有较强科研与工程实践能力的学生。近两年先后有20余名“个性化”培养的学生被保送到国内知名院校攻读硕士研究生。并有一大批学生获国家级或省级计算机、信息类大赛奖,为国家及国防工业输送了一大批高质量人才。<br><br>4实验教学内容与实验教学组织<br><br>计算机实验教学按课程性质可分为基础课实验、计算机专业基础课实验和计算机专业课实验。实验类型可分为演示型实验、验证型实验、设计型实验和综合型实验。<br>为达到“加强实践实验教学环节,培养创新能力”这一目

46、标,并与“分层递进教学、强化个性创新”的教学模式相吻合,我院规定实验内容的选择要以“减少验证型实验,增加设计型、综合型实验项目,注重科研和工程实践能力培养”为原则。<br>现在,我院面向计算机专业和全校非计算机专业开设36门实验课程,实验项目近232项,设计性、综合性项目占实验项目总数的95%以上。实验选题综合性强,贴近工程实际,有实用价值。<br>为了培养学生的科研和工程实践能力,除了教学大纲要求的实验项目以外,我院还开设了嵌入式“进阶”实验和计算机技术创新实验,这些实验的选题和内容选择均同实际科研、计算机竞赛紧密结合。同时,我院通过实施“个性化”培养、计算机技术创新实验室的开放、支持学生科技活动等一系列措施,使实验教学的范畴不单纯拘泥于教师设定的选题,而是鼓励“自主学习、独立创新”,这种学研结合的模式在极大程度上激发了学生的科研攻关和自我创新的意识。此外,中心鼓励并积极争取机会使同学们接触到实际工程中的具体问题,利用课程设计、毕业设计、毕业实习等机会提供非常具有代表性的广泛的实验课题与攻关点供学生进行研发。<br>作为一个特色成果,我院已经形成了以嵌入式技术为主线的一体化的硬件实验体系。其基本思想是:从第四学期到第七学期,从实验课程的设置上,保证硬件实验不断线并保持递进关系,从实验项目的制定上,保证实验内容的衔接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论