抛锚式教学模式在《面向对象程序设计》教学中的应用

来源 :考试周刊 | 被引量 : 0次 | 上传用户:lwsun_2008
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:抛锚式教学模式是信息化教学模式之一,其主要特点是从学生已有的知识出发,通过情景提出问题,确定教学内容和教学进程。在分析《面向对象程序设计》课程教学特点的基础上,作者对抛锚式教学模式在《面向对象程序设计》中的应用进行了教学实践探讨,发现运用抛锚式教学能够很好地将面向对象程序设计中的概念、原理与真实世界联系起来,充分利用知识之间的联系,一步步地引导学生掌握面向对象程序设计的知识。
  关键词:抛锚式教学模式;面向对象程序设计;教学案例
  抛锚式教学模式是基于真实或模拟情景的信息化教学模式,它通过情景产生学习需求,确定教学内容和教学进程(就像轮船被锚固定一样),通过镶嵌式教学和学生的主动学习,亲身体验识别解决问题,从而达到学习的目标。
  面向对象程序设计是近年来迅速发展的软件设计思想和技术,它是在继承结构化程序设计技术的优点与长处的基础上产生的一种全新的程序设计思想和方法,在软件开发中有着广泛的应用。《面向对象程序设计》是高等学校计算机及相关专业必修的一门重要课程,研究如何在教学过程中运用信息化教学模式对于提高教学质量、培养学生掌握面向对象程序设计的知识和问题解决的能力具有一定的实践意义和价值。
  1.《面向对象程序设计》教学的特点
  把握课程的特点是开展教学的起点和选择合适教学模式的关键。面向对象程序设计是在继承传统的结构化程序设计的基础上发展而来的。因此,《面向对象程序设计》的教学重点应该包括面向对象程序设计的基本概念和结构化程序设计与面向对象程序设计的区别两个方面。
  面向对象程序设计基于一种抽象的数据类型——类,和这种抽象数据类型的实例——对象[1]。对象是具有某些特性的具体事物的抽象,对象有属性和方法,分别用来表征对象的状态和行为,类是创建对象实例的模板,用来描述具有相同属性和方法的对象集合,它定义了集合中每个对象共有的属性和方法,对象是类的实例。事件是能被对象所识别的外部刺激,如单击鼠标。面向对象程序设计通过事件驱动机制处理事件,即只有在事件发生时程序才会运行,否则处于静止状态。图1表明了这几个概念之间的联系[2]:
  图1 面向对象程序设计中基本概念的关系
  2.《面向对象程序设计》教学中的抛锚式教学
  2.1理论基础
  抛锚式教学模式是指在多样化的现实生活背景中(或在利用技术虚拟的情境中)运用情境化教学技术以促进学生反思,提高迁移能力和解决复杂问题能力的一种教学方式[3]。所谓的“锚”,是指在情景中创设的事例和提出的问题。抛锚式教学模式是建构主义教学模式之一,建构主义主张学习者通过感受真实的环境达到对事物的本质及其相互之间的联系的认知。抛锚式教学模式以真实的事例或问题为锚,在问题背景中产生学习需求,通过主动学习、生成学习和与其他学习成员之间的交流与合作,亲历从识别目标到达成目标的全过程[4]。
  抛锚式教学具有与传统的课堂教学不同的特征:通过真实或者设置的情景引出用作“锚”的问题或者实例;教师不再是传统教学中知识的传播者,而是学生学习的引导者、支持者和学习伙伴;学生通过自主和合作的方式进行学习;强调教学的无序性,也就是教学顺序与预先确定的教学设计不一致,无序性教学富有弹性,教学信息不确定,教学目标具有相对开放性,教学结果有弹性[5]。
  2.2教学案例
  以掌握面向对象程序设计的三大特性中的“继承”、“多态”及“接口”的概念教学为例,下面谈谈在面向对象程序设计教学中如何实施抛锚式教学,程序的实现使用C#语言。学习的前提是学生已经掌握面向对象的概念和“类”的概念,掌握构造类、属性和方法的知识。
  “继承”、“多态”和“接口”之间既相互联系又有区别,为保持教学内容的连贯性和逻辑性,将本次教学分为2个单元,分别学习“继承”、“多态”和“接口”。
  单元1:“继承”和“多态”
  情境1:计算机动画展示:一只“喵喵”叫的“猫”和一只“汪汪”叫的“狗”,动画显示它们都属于“动物”。
  问题1:“分别为猫和狗创建2个类‘Cat’和‘Dog’,这2个类都具有表示名字的属性‘name’和表示动物叫唤的方法‘shout’。建立主程序,在其中实例化猫和狗的对象,输出这2个对象的‘name’,执行‘shout’方法,分别输出‘喵’和‘汪’。”
  问题1的提出是建立在学生已经掌握了“类”和“对象”的概念基础上。建立1个“Cat”类和一个“Dog”类,它们具有功能相同的属性和方法。学生根据自己掌握的面向对象的知识和对问题的理解,可以自己独立解决问题,也可以通过与其他同学交流协作的方式完成任务。
  问题2:“问题1中创建了2个类,主程序中执行了一些操作,在这2个类和主程序中,许多代码是重复或相似的,这些代码被称为冗余代码,有什么方法将代码精简,实现代码的重用?”
  如前所述,学生建立的2个类中具有形同功能的属性和方法,代码冗余度大,复用率低。面向对象程序设计允许通过类的“继承”实现代码的优化和复用。在解决问题2之前要让学生掌握“继承”的概念,并掌握以“继承”的方式建立新类的操作,然后着手解决问题2提出的问题。通过分析“Cat”和“Dog”两个类的共同点,建立一个“animal”类,该类有1个“name”属性和1个“shout”方法。重新构建“Cat”类和“Dog”类,让它们继承自“animal”类。重写主程序,输出“name”、执行“shout”方法。这时学生会发现出现新的问题:“Cat”对象和“Dog”对象执行“shout”方法输出的结果是相同的。由此引出问题3。
  问题3:“为什么执行重构后的程序,‘Cat’对象和‘Dog’对象執行‘shout’方法得到相同的结果?这显然是不合实际的,如何解决?”
  问题3引出了面向对象程序设计的另外一个重要属性“多态”。所谓多态,在面向对象程序设计中是指的同一个消息或者操作作用于不同的对象产生不同的结果。在解决问题3之前要让学生掌握“多态”的概念,然后着手解决问题。重构“animal”类,将“shout”方法改为没有方法体的抽象方法。重构“Cat”和“Dog”类,在其中重载“shout”方法,并分别实现各自的“shout”方法。修改主程序,使用“animal”类分别实例化一个“Cat”对象和一个“Dog”对象,它们执行“shout”方法后得到不同的结果。   单元2:“接口”
  情景2:在情景1的基础上,计算机动画在“猫”的下方显示一只“机器猫”,“机器猫”一边“喵喵”叫,一边变魔术,变出一条鱼。接着在“狗”的下方出现一只“机器狗”,“机器狗”一边“汪汪”叫,一边变魔术,变出一根骨头。
  问题4:“动画中我们看到‘机器猫’和‘机器狗’除了分别具有‘猫’和‘狗’的一般特征外,还具有普通猫和狗不具备的特征,请用程序分别输出‘机器猫’和‘机器狗’叫唤的声音‘喵’和‘汪’,并输出‘机器猫’和‘机器狗’变魔术的动作‘机器猫:变鱼’和‘机器狗:变骨头’。要求运用接口的知识解决该问题。”
  “机器猫”和“机器狗”都要具有普通猫和狗的属性,它们应该分别派生于“Cat”类和“Dog”类。它们又要分别实现“变”这个动作,如果让2个派生类分别实现各自的“变”的动作,则显然又会显出代码的冗余。似乎可以像上面的“猫”和“狗”那样构造一个基类,让“机器猫”和“机器狗”继承基类。可是C#语言只允许单继承,“机器猫”和“机器狗”已经分别继承自“Cat”类和“Dog”类了,如何又能继承自其他类呢?解决问题的办法就是使用接口。接口是用来定义一种程序的协定。在面向对象程序设计中,接口主要用于行为跨越不同类的对象,使用接口可以很好地增强现有类的功能,保证在特定的环境下系统自动实现这些功能。
  要解决问题4必须学习“接口”的相关知识,以及如何使用“接口”的操作。学生将在教师的引导下通过教师的讲解和自主学习掌握这些知识,然后解答问题4。创建接口“IChange”,使其具有“change”方法。分别从“Cat”类和“Dog”派生出两个类“CatMachine”和“DogMachine”,并且这两个类都要实现“IChange”接口的“change”方法,分别输出“机器貓:变鱼”和“机器狗:变骨头”字符串。由于“CatMachine”类和“DogMachine”类分别继承自“Cat”类和“Dog”类,它们的实例对象都可以实现普通“Cat”类和“Dog”类的功能,又实现了“IChange”接口,具有“变”的功能,并且代码复用率高,冗余度小。
  3.教学反思
  抛锚式教学密切联系了课程内容和日常生活,从学生已知的知识出发,运用形象生动的情景、实例或者问题设置好教学内容和教学进程,让学生从问题出发开展积极主动的学习。面向对象程序设计的思想是建立在对现实世界对象的基础上的,运用抛锚式教学模式能够很好地将面向对象的概念和操作与真实世界联系起来,充分利用知识之间的联系一步步地引导学生掌握面向对象程序设计的知识和相关操作。
  参考文献:
  [1]杨帆.面向对象程序设计基本结构和思想分析[J].黄石高等专科学校学报,2000,(2):30-34.
  [2]邵结.面向对象程序设计教学初探[J].宁波大学学报,2002,(6):90-92.
  [3]William R.Booth.Anchored instruction[EB/OL].http://www.coe.enco.edu/ET500/Booth/SL D002.HTM/,2004,7.
  [4]钟志贤.信息化教学模式——理论建构与实践例说[M].科学教育出版社,2005.12.
  [5]马国光.抛锚式教学法在VB教学中的实践初探[J].中国成人教育,2006,(6):127-128.
其他文献
随着社会的发展,人类的进步,教育也在不断地改革。“高效课堂”这个时代的产物,在教育阵地上如春风一般吹进了每一所学校,杜郎口中学就是成功的典型代表。这里,我结合自己多年来的教学经验,谈谈自己对高效课堂的理解。静下心来反思,自己上过的课:有多少节课自己可以肯定地说它达到高效了呢?为什么常常有很多教师感慨教得很累,学生学得也很累呢?到底该如何提高课堂效率呢?这些都是值得我们去深思的问题。  高效课堂是教
《义务教育语文课程标准(2011版)》在“课程性质”中指出:“语文课程是一门学习语言文字运用的综合性、实践性课程。”从这个意义出发,阅读教学就不能仅停留在“理解”的层面,而要以“运用”为目的,通过开展各种扎实的语言文字训练,培养学生运用语言文字的能力。但在实际教学中,语言文字“训什么”“怎么训”一直困扰着一线教师,对此,我认为:时刻怀有训练意识,讲究训练形式,一切从实际出发,才能使语言文字的训练取
摘要: 园本课程目标的制定是园本课程开发的前提和基础,它规定着课程内容的选择与组织,还是课程实施的基本依据和课程评价的主要准则。本文认为,要制定出科学合理的园本课程目标,需要从幼儿终身发展的角度审视园本课程目标,从幼儿学习特点的角度理解园本课程目标,以年龄阶段的心理特点和学科体系为依据制定园本课程目标。  关键词: 幼儿教育园本课程目标制定幼儿围棋活动    园本课程的开发是当前幼教界关注的焦点问
摘要:本文探讨康复虚拟体验设计的基本方法、设计要素、设计特点等方面的特性。在这一分析过程中,以“康复器械的信息设计”为例详细探讨了上述问题。这种虚拟体验系统不仅满足了残疾人康复的功能需求,而且带给了他们对精神的需求。它融合了产品设计、视觉传达设计、界面设计、交互设计等,在上下肢锻炼的时候分别给以正确的引导、优良的环境和人性化的交互方式,给残疾人带来健康的同时,还带来了更多的自信和趣味,让身体恢复地
摘要: 音乐是在人类社会发展的漫长历史过程中产生并不断改进、复杂,发展着。情感它与其他艺术有着密切的联系,它是一颗光芒四射的明珠,是构成人类灿烂文化的一个重要组成部分,在人类生活中起着重要作用。情感体验教育是音乐教学的关键。学生在感受音乐美的同时还能逐步培养正确的审美观念和高尚的审美情趣。在音乐教学过程中,教师应该主动投入情感引发学生,感染学生,进入感情体验,唤起想象与联想,直至通过理解认识来领悟
摘 要: 在素质教育的今天,如何使每一个学生都不掉队,都学到知识,需要我们不断反思。  关键词: 后进生 转化工作 班主任工作  前苏联教育家苏霍姆林斯基曾经说过,每一个学生都是一个完全特殊的、独一无二的世界。每个学生都有自己的特点、兴趣、情感和需要,具有不同的发展水平,要让不同的学生都有所提高,有所发展,班主任必须根据学生的个体差异,采用不同的方法做好个别教育。魏书生说:“只有
摘 要: 想象作文训练是小学作文教学中的重要内容之一。指导学生写好想象作文,有助于他们活跃思维,提高创新能力。作者结合自己执教的《打鸟的启示》一课,从选取材料激发学生“想写”,启迪学生“敢想”,“融情”细节之中,“口头表达,铺就习作之路”四个方面谈了如何指导学生写出一篇较为理想的想象作文。  关键词: 想象作文 《打鸟的启示》 四个方面    《全日制义务教育语文课程标准(实验稿
1.引言  对联是中华民族传统艺术中一道亮丽的风景线,承载着中华五千年文化的厚重与沧桑。古往今来,名家学者对其研究也数不胜数。而在经济全球化的新形势下,很多学者开始致力于中华文化的对外传播,不少具有中国特色的文化产物,如:《红楼梦》、《论语》等名著经典,都被译成英文以加强其跨文化交流。但纵观所有英译作品不难发现,对联的英译只占了其中很小一部分,多数专家将焦点集中于古诗词曲的英译,如许渊冲教授的《中
一、2012年福建高考作文评卷心得  2012年,我有幸参加了高考作文评卷,在六天的时间里,一共批改了两千四百多份作文,我估计,百分之九十以上的作文是议论文,得高分的大部分是议论文。记叙文在高考作文中已是凤毛麟角,得高分更是难上加难。由此看来,议论文写作是高中阶段写作训练的重中之重,这关乎学生高考的成绩。此次评卷,我总结了以下几点心得,仅供大家参考。  1.审题立意决定成败。2012年高考作文“人
摘要:发展性教师评价是教师评价的一个发展趋势,它摒弃了传统的只注重奖惩性评价的观念,重点面向未来 ,促进中外合作办学学校的发展并推动整个教育事业的发展。本文结合国外对教师的评价现状,分析目前我国中外合作办学实施发展性教师评价面临的困难。  关键词:中外合作办学;大学教师;发展性;教师評价  一、我国现有大学教师评价现状。  当前,我国大学教师评价受到不少批评与质疑,究其原因,在于评价实践过分偏重学