浅谈项目教学在面向对象程序设计中的应用

来源 :教育教学论坛 | 被引量 : 0次 | 上传用户:qiyesoft
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:以面向对象程序设计教学中存在的问题为突破口,从我校计算机专业《面向对象程序设计》课程的设计和学生的特点方面入手,根据以往的教学和课程实践方面的经验及体会,初步提出了项目开发与面向对象程序设计教学相结合的方法。
  关键词:面向对象程序设计;教学改革;项目教学
  中图分类号:G642.4 文献标志码:A 文章编号:1674-9324(2012)11-0087-02
  引言
  面向对象设计方法的应用解决了传统结构化开发方法中客观世界描述工具与软件结构的不一致性问题,缩短了开发周期,解决了从分析和设计到软件模块结构之间多次转换映射的繁杂过程,是一种很有发展前途的系统开发方法。因而有必要根据我校计算机专业学生特点及课程的设置,探讨更高效优质的教学方式。
  一、面向对象程序设计在教学过程中存在的一些问题
  在我校的面向对象程序设计的教学中,以C 程序设计语言作为授课语言,因而在这里我先来说说C 程序设计语言目前在我校针对计算机专业学生教学过程中存在的问题。
  1.实践课时较少。按照目前我校计算机专业《面向对象程序设计》教学大纲要求,《面向对象程序设计》这门课程的总的学时是48学时,其中理论讲授的课时为32学时,实验课时是16学时。《面向对象程序设计》作为一门计算机程序设计语言课程,其操作性要求很强,通过几年的教学经验,我认为大纲中的实验课时相对比较少,学生在实验课上也只能练习所学内容的一部分。这样大部分学过的内容不能在课上得以练习,学生如果不在课下进行实践,将无法真正体会到C 的实用性,也不能更灵活地应用C 程序设计语言编写程序。
  2.学生的主动实践能力较差。面向对象程序设计教学不仅是展示编程的语法过程,还要让学生对语法如何应用进行探究,从而达到培养学生独立编写程序的能力。我们老师即使在课堂上演示再多的程序、讲再多的语法结构,学生如果不亲自去动手实践,是不可能真正理解那些语法的应用的,提高其编程能力更是无从谈起。
  从目前我校计算机专业学生的特点看,其主动实践的能力相对比较差。主要表现在以下几个方面:首先,老师要求学生在上实验课之前要进行预习,部分学生或是抄袭别人的预习报告,或是写几行代码应付差事。其次,部分学生在实验课上总是做些编程以外的事情,如上网聊天、打游戏等等。再次,实验课快要结束的时候,老师都要对学生当堂编写的程序进行验收,然而部分学生就会从已经完成程序的同学那里随便拷贝一份来应付老师,一旦向其发问则是一问三不知。最后,在我校给计算机专业《面向对象程序设计》实验课时比较少的情况下,为了让学生巩固其所学到的知识,会让学生在课后完成一些程序的编写任务,从学生的作业完成情况来看,大部分学生不能够自己独立完成作业,能抄就抄,能拷贝就拷贝。
  3.学生兴趣不高。我校针对计算机专业学生的《面向对象程序设计》这门课程的教学过程中,是以C 作为教学语言。C 语言是在C语言基础上扩充了面向对象机制而形成的一种面向对象程序设计语言,它除了继承了C语言的全部优点和功能外,还支持面向对象程序设计,使得C 语言的机制非常丰富,应用广泛而灵活。纵观目前C 语言方面的教材,大多是以传授语言机制为中心,辅以相关的案例,这样的教学设计虽然具有知识系统化的优点,但是因各环节的案例设计主要是为了说明语言本身的机制,从而使得各案例之间连贯性不够强,学生无法将知识点与实际应用相结合,使得学生学习有些盲目性,从而对《面向对象程序设计》这门课程失去兴趣。
  4.课程内容较简单。按照本校计算机专业《面向对象程序设计》的大纲要求,授课过程中需讲授函数、类与对象、C 程序的结构、数组、指针与字符串、继承与派生、多态性、流类库与输入/输出、异常处理等方面的内容,这些内容只是涉及到比较简单的编程机制,与实际项目的编写还相差甚远。
  5.学生不能灵活地编写程序。从以往学生完成作业和考试情况来看,只要与课本上有相类似的程序学生就可以仿照书本来完成,一旦脱离书本或者遇到和书本不一样的程序,特别是完成一个大型项目,学生则无所适从,不能灵活地应用所学过的知识来完成程序的编写。
  综上所述,解决如何使学生在面向对象程序设计课程的整个学习过程中一直保持强烈的求知欲和高昂的学习兴趣问题,是教学改革的关键所在。为此,在这里我初步提出将项目教学法应用到《面向对象程序设计》这门课程的整个教学过程中,以完成项目任务为中心,并辅以案例教学的教学模式。
  二、面向对象程序设计教学与项目开发相结合的基本思路
  “教学”,顾名思义,它涉及到“教”与“学”两个方面,在这里我们将从教师使用项目进行授课和学生通过项目开发巩固知识两个方面进行讨论。
  1.教师使用项目进行授课。按照我校面向对象程序设计大纲要求,课程前三章的内容和学生之前学过的C语言中的部分内容相同,从第四章开始才真正涉及到面向对象的概念。刚上课时,学生们很容易接受,积极性和求知欲都很高,但随着课程的深入,部分学生会感到理论知识太枯燥、太抽象,从而对课程的学习产生恐惧和迷惑,逐渐地丧失了学习兴趣。加之课上所举实例也比较零散,各个知识点连贯性不强,学生学习就像是狗熊掰棒子,掰一个丢一个。为此,在这里我初步提出将项目教学法应用到本课程的整个教学过程中,以完成项目任务为中心,辅以案例教学的教学模式。成功实施“项目教学”的一个首要前提是要有合适的项目案例。因而需要教师先做好市场调研,一则可以体现出技术与市场相结合的价值;二来因为这样的案例是走在社会的前沿,因而可以激发学生的兴趣。在讲授的过程中,教师首先对项目的设计概要进行讲解,并对系统功能模块进行初步划分,给出合理的开发流程和资源要求。按照项目的开发流程顺序,分块进行讲解,并且将大纲中要求的内容都融入其中。通过这样的授课可以带来以下几个方面的好处:一则可以将课程中零散的知识点连贯起来,二来学生对每个知识点的应用场合会有所领悟,最后学生对基于C 语言开发项目的架构和流程有一个清晰的概念。
  2.学生使用项目进行实践。为了提高学生的主动实践能力,我将会在课后为每位同学都分配一个互不相同的项目,并且针对每个项目给出具体任务要求。由于每个学生的题目都不尽相同,没有拷贝的可能性,因而要完成自己的项目必须认真听讲,这样才能在课后模仿老师课上所讲的内容独立完成项目的某些功能,如果某些功能实现的方法在课堂上所讲的内容没有涉及到,则需要学生通过各种渠道查找资料来完成这些功能。
  这种项目实践方法有下列一些优点:学生可以巩固课堂上所学过的知识;培养学生独立思考问题和独立编程的能力;解决学生之间为应付老师相互拷贝程序的问题;可以扩充课本以外的编程知识;增加学生开发项目的经验;提高学生的编程能力。
  三、结束语
  通过上面所述基于项目的“教”与“学”的教学方法,不仅将零散的知识点连贯起来进行讲解,而且可以培养学生独立思考和独立编写程序的能力,同时杜绝了学生相互拷贝程序的现象,最终可以增加学生开发项目的经验、提高编程能力。
  参考文献:
  [1]孙庚.项目教学法在“C 程序设计”课程教学中的实践[J].教育与教学研究,2008,2(4):51-54.
  [2]郑莉,董渊,何江洲.C 语言程序设计(四版)[M].北京:清华大学出版社,2010.
其他文献
本研究采用调研问卷的形式,调查疫情期间低年级医学生对于在线课堂技术接受度与学习态度。研究结果显示低年级医学生普遍喜欢在线课堂并能够重视其价值,对于在线课堂技术接受
20世纪中华民族的最大进步,就是获得了民族独立。毛泽东在领导中国人民争取民族独立的斗争中,形成了独立自主的外交思想,它的基本点是:在对外交往中,坚定地站在中华民族的立场上,不
【正】 明代张燮的《东西洋考》,是考察我国古代与东南亚诸国的贸易关系及航海事业的重要著作,也是记载西沙群岛、南沙群岛历来是中国领土的历史文献。今年一月三十一日,我国
【正】 党的十一届五中全会高瞻远瞩地把“确定适合国民经济发展需要的教育计划和教育体制”作为一个重大问题提到党的十二次全国代表大会议事日程上来,具有深远的战略意义。
目的:鉴定FHL2与Id家族蛋白成员之间的相互作用及分子表位。方法:GST-pulldown方法检测。结果:FHL2与Id家族的4个成员蛋白均存在直接的相互作用关系,FHL2蛋白中的第二个LIM结构域
【正】 柳永的生年,近来文学史多采取唐圭璋先生的推测,为约在宗太宗雍熙四年公元九八七年。唐先生的根据见《柳永事迹新证》,他说:“柳永的生年与张先是差不多的(李易安并说
【正】 英雄祖国英雄人,英雄生长大海滨.有一位英雄周春富驾驶着一只神鹰;随着大队返航归来,空中传来马达声.机队出现在云端,闪现金色的身影.突然间,周春富在上空发现敌人,他
目的:观察重型颅脑损伤联合应用针刺康复训练与中药醒脑静注射液的临床疗效。方法:选取2019年1月—2020年1月我院收治的60例重型颅脑损伤患者,对照组(n=30)采用常规治疗措施;
中华人民共和国是中国共产党领导中国人民推翻帝国主义、封建主义和官僚资本主义统治之后建立的社会主义国家。中华人民共和国史是党领导全国各族人民开创和推进中国特色社会