手机站

当前位置: > 论文发表 > 高校教学论文 >

浅析面向研究生阶段面向对象程序设计课程内容设置

作者:鏈?煡 时间:2017-10-18 阅读:( )

  吴正江,高岩

  河南理工大学计算机科学与技术学院 河南焦作454003

  关键词:面向对象程序设计、研究生培养、轻量化教学、项目教学、翻转课堂

  1背景介绍

  2015年教育部出台《关于改进和加强研究生课程建设的意见》[1],在研究生的培养工作上,《意见》要求重视研究生课程在研究生培养过程中的积极引导作用,另一方面要求尊重研究生的主体地位,鼓励研究生参与教学设计、教学改革和教学评价。作为计算机专业硕士及学术硕士,《面向对象程序设计》是一门专业类型的基础课,其目的在于培养学生面向对象编程的思维,并进一步提升学生的创新、合作及实践能力。

  面向对象的程序语言是目前软件行业的主流,面向对象的程序设计语言具有开发和使用简单、容易模块化、开放、健壮、平台无关性等优点,2017年上半年最流行的5种编程语言中,面向对象程序设计语言占了4种,他们分别是JAVA(第一位),C++(第三位),Python(第四位),C#(第五位),唯一的面向过程的程序设计语言C语言占据第二位,足见市场对于面向对象类程序设计语言的偏爱。

  现阶段,随着IT行业成为社会上月工资最高的行业,越来越多的学生开始学习计算机专业相关课程,在考研过程中选择计算机专业。而在研究生层面,计算机这在大专业分化出大量的分支学科,学生兴趣及研究对于计算机语言日益多样化,这使得计算机专业的专业硕士及学术硕士的专业基础课程在设置方面,特别是在课程内容方面出现了其它专业没有面临的困境和挑战。

  2面临的困境与挑战

  研究生阶段的课程教育有别于本科阶段教育,本科阶段的教学以系统性、循序渐进、完整性为基本特点,其目的是辅助学生学习相应的课程内容。而研究生阶段的课程设定应以引导学生学习为主,因为研究生基础及其期望比较分散,这与本科生统一大纲要求,统一学习目标有着较大的差异[2],因此,我们面向研究生设置课程时,即要考虑程序设计类课程体系、知识性的要求[3],也要考虑课程对于学生创新精神和合作精神的培养[4]。实践过程会面临一些困境与挑战:

  (1)学生基础的多元化

  时至今日,计算机大类研究生入门考试多数是以C语言为基础进行考核,这导致很多非专业学生可以在不掌握面向对象程序设计的条件下,通过研究生入学考试。但是,因为这些学生在原有专业具有比较优势,加之今年计算机在各行业的大量应用,社会也比较认为这类跨专业的研究生,有些导师也乐于指导这类研究生。这类学生在研究生通过系统地学习的面向对象程序设计语言,体会面向对象设计思想及理念是十分有必要的[5]。

  另一方面,对于本专业考取研究生的同学,他们经过计算机专业系统的学习,已经掌握一至两种面向对象程序设计语言,面向此类学生开设的课程需要有一个更高层次的要求,而不能仅仅停留简单的代码讲解及实现这一层面。

  在现实中将这两种学生合班上课就会出现学生基础多元化的困境。

  (2)学生需要多元化

  研究生的学习方向与本科分专业学习方式有很大的不同,研究生由于学习、研究内容决定了,其使用程序设计语言的多样性。如学习方向为图形图像方向和控制系统的同学,其主要使用Matlab进行仿真;研究物联网与密码学的同学,则主要使用C++;研究数据挖掘方向的同学主要学习Java、Python。

  (3)教材内容过于具体

  现阶段《面向对象程序设计》课程所使用的教材、包括网上资源或其它线下资源多为体编程方法,所假想受众为掌握某种语言的学生或学习者,对于存在差异性基础的学生适应性较差,尤其是对于研究生而言,对于这个阶段学习需要着重加强的创新性、合作性培养体现不够充分。

  基于上述三个原因,将一种面向对象的程序设计语言系统地,详细地在研究生中讲叙虽然会给没有学过学生补课,但会使大学本科阶段学过该课程的学生重复学习,对于此课程失去学习兴趣,也浪费了他们宝贵课程学习时间。因此,通过课程让同学体会面向对象程序设计的思想,理解程序编写在科研实践中实现手段及意义,并建立一种引导性质的课程框架是必要的[2]。

  3项目引导的翻转主动学习

  当软件设计者设计框架时,为了兼容底层多样化实现,设计者多会使用越来越轻量化的框架[6],虽然会牺牲了一定的实现效率,但是更好的适应性、兼容性及不依赖于原生系统的特点给开发者带来了很大的便利性。

  研究生教学所面临的困难与软件在轻量化过程解决的问题从性质是一致的。轻量化框架的优势也可以类似地解决研究生阶段面向对象程序设计课程中问题:(1)非侵略性API。映射到课程教育中,代表着在学生原有知识体系上,构建新的知识体系,对于研究生的自由发展的提供基础性保证。(2)对容器依赖性低。在课程体系中表现为:可以让新的课程适应于更复杂地学生,让课程可以即适应跨专业学生,又适合于本专业的学生。(3)易于通用。可以匹配学生在研究生阶段中分散地学习目标。(4)启动时间短。可以让学生快速地融入课程,加入学习过程中。

  轻量化教学在《面向对象程序设计》课程上应用可以从以下几个方面进行:

  (1)引入案例教学。从生活及研究案例出发,从设计角度对案例进行设计讨论,可以从思想上对于面向对象的程序设计产生直观,感性方面的认识。案例化教学可以让学生快速融入课程,通过案例设计可以将基础知识的融入案例中,通过引导学生可以从多个角度探讨案例,可以从多方面,多角度的学习、复习已有知识。

  (2)引入翻转课堂[7]。翻转课堂的引入,让学生基础学习阶段下放到课下,而将验收及应用阶段放到课堂上,可以方便教师有效地监督、了解学生的学习进度,方便教师监督不同基础的学生的学习进度。通过教师在课堂对学生回答的问题进行点评,及使用问题不断引导学生思考完成项目。

  (3)分组讨论,竞争发言为主的学习手段,教师点评及辅导为主要教学手段[8]。小组的讨论是多名同学共同结果,讨论过程可以让学生在知识体系独立思考,并通过头脑风暴的方法对一个问题提出尽可能多的方案,并在自有知识基础上,通过小组讨论的方式选优,快速吸收外界的知识,有助于培养学生的创新思维。这种方式的课程体系更容易在教学实践中展开,也可以按学生具体的知识层次进行动态、灵活的微调,以期达到更优的教学目的。

  上面的四个方面是相辅相承的,一切以翻转课堂为基础,以案例教学为主线,分组讨论发言,教师点评为主要教学方式。将基础语法的学习下放到课下,有利于不同基础、不同需求的学生开展自主学习,在课上学生分组讨论案例,可以充分调动学生的学习的积极性、主动性,让来自不同专业方向的学生可以个自的角度对同一问题发表自己的意见,通过分组发言的方式让学生之间相互借鉴思想,让组内同学相互合作,形式研究生的竞争合作模式,并通过教师点评,讲解问题的方式,讲授面向对象程序设计的设计理念、程序设计过程所考量的问题及其解决方案。

  4.教学实施和效果总结

  综合翻转课堂,分组讨论、案例教学的三大特征的面向对象的程序设计课程在组织形式满足了研究生教育过程中一方面让研究生学习了相应的课程知识,另一方面,在课程中培养了研究生的合作与创新意识。

  在实践过程中,将学生按自主与随机组合原则划分5-6个小组,每小组控制在4-5人,让课上所有提问及发言都以小组为单位,在讨论后统一意见后公开展示。在职能上,教师在每次课堂中承担主持者,主要工作是出题,点评各小组答案,并将问题最终导向解决方案的职能。对学生考评以小组为单位的,其过程是对于每个小组每次排名,每组最终排名决定该组中优秀、良好、中等学生数量。

  经过实践,该方法收到了较好的结果。学生反映自己在课堂上积极思考,通过参与问答互动,让自己更注意教师所传授的知识,且课程参与程度提高的同时,课堂学习、课后完成练习及思考的积极性也极大提高,对于教师讲授的内容也有较深地印象。

  综上这样的课程设置从目标上契合了教育部对于硕士研究生培养工作的思路,学生通过本课程的学习,不仅学习相关知识,也培养了创新思维及合作意识,对于硕士研究生之后课程学习与研究工作的开展是积极有益的。

  参考文献

  [1]中华人民共和国教育部.教育部关于改进和加强研究生课程建设的意见.2015.

  [2]余虓.略析硕士研究生与本科生课堂教学讲授方式的主要区别.学校党建与思想教育.540:62-65.2016.

  [3]马洪霞.“C++程序设计”课程教学与创新型人才培养.电气电子教学学报.33(4):14-15.2011.

  [4]张丽丽.研究生课堂教学创新思维的培养.学理论.23:299-300.2013.

  [5]鲍威,张倩.扩招后我国研究生入学选择的实证研究.复旦教育论坛.7(5):5-11.2009.

  [6]陈盛雄,罗艳霞,陈超,崔灵珍.反向控制原理和面向切面编程在Spring中的应用.计算机与信息技术.12:62-67.2006.

  [7]谢晓霞,罗鹏飞,张文明.翻转课堂在研究生核心课程中的实证研究.高等教育研究学报,39(2):38-42.2016

  [8]魏志刚.分组讨论式研究生课堂教学的实践.安徽工业大学学报.32(5):77-78.2015.

上一篇:基于终身教育理念的教师教育研究

下一篇:课例研究对实践教学能力影响探索的文献综述

奇速英语直播体验课
相关文章
精品推荐