就业导向的“面向对象程序设计”教学研究
2016-05-14张艳赵逢禹
张艳 赵逢禹
摘要:“面向对象程序设计”课程是计算机专业一门重要的专业课,能够培养学生应用面向对象的思想解决和处理实际问题的能力。本文从就业角度重新定位该课程,研究了以能力培养为导向、以实践为核心的任务驱动教学模式,旨在激发学生的学习兴趣,不断提高课程的教学质量。
关键词:面向对象程序设计;教学模式;实践教学
中图分类号:TP311 文献标识码:A 论文编号:1674-2117(2016)09-0096-03
● 引言
“面向对象程序设计”是高校计算机专业中一门重要的专业课程,其教学目标是让学生熟练掌握面向对象的程序设计思想,培养学生应用面向对象的思想解决和处理实际问题的能力。课程设置的目的符合应用型本科院校计算机专业“培养复合型应用软件人才及产业急需的软件工程高级管理人才”的培养目标[1],其在整个专业教学体系中占据非常重要的地位。
传统的“面向对象程序设计”课程教学模式以教师讲授、学生被动接受为主,不但割裂了面向对象核心知识单元之间的内在联系,而且重理论、轻实践,使得学生在遇到具体问题时,往往不能分析、设计出符合面向对象编程思想的解决方案,在应聘时无法达到用人单位的要求。因此,基于就业导向和追求实用的心理,教师必须将面向对象程序设计的理论教学与实际应用相结合,以激发学生的自主学习兴趣,从而提高教学质量。[2]本文从就业角度重新定位该课程,研究了以能力培养为导向、以实践为核心的任务驱动教学模式,旨在激发学生的学习兴趣,不断提高课程的教学质量。
● 从就业需求出发进行课程的定位
计算机行业的快速发展不仅加快了社会信息技术、经济等方面的发展速度,而且提高了就业市场对求职人员的专业水平和综合素质的要求。在提升学生就业率以及培养应用型计算机人才的背景下,计算机专业的教学应从就业需求出发,在要求学生掌握必要的理论知识的基础上,加强实践教学环节,从而达到提高学生实践能力和就业竞争力的目的。[3]为此,教师要认清当前软件人才的培养与企业用人需求之间的差距,从就业需求的角度重新审视“面向对象程序设计”的课程定位,合理组织、安排和优化教学内容,以保证教授给学生的知识能满足企业的要求。
目前,很多高校为了提高学生的就业竞争力,不仅开展了校内实践、操作比赛,还积极与企业联合,设置校外实习基地,作为专业课的教师也要从教学上积极配合,对课程重新定位,尽量在教学中引入实际工作环境下的现实问题,更好地培养学生解决问题的能力。大量实践研究表明,以就业为导向进行课程定位,不仅能有效调动起学生的学习积极性,激发其学习兴趣,而且也有助于他们树立正确的学习观,形成良好的学习习惯,使其终身受益。
● 引入软件设计模式,从行业需求组织教学内容
找到解决问题的算法并用计算机实现是计算机解决实际问题的主要过程,它离不开软件设计模式这一重要概念,随着面向对象技术的发展和广泛应用,软件设计模式已成为软件开发人员必须掌握的设计思想和开发技能。软件设计模式是一套经过分类编目后被反复使用的面向对象的代码设计经验的总结[4],它反映了软件设计过程中以“重用”为重点的面向对象的设计思想,能够构造出结构良好的程序,有效提高代码的可重用性和可维护性。
“面向对象程序设计”课程核心内容——封装性、继承性和多态性本身就蕴含着设计模式的思想,同时也是设计模式的灵活应用和体现。因此,在组织教学内容时,从设计模式的角度分析封装性、继承性和多态性这些基本的面向对象核心的概念,让学生不只从单个知识点的层面理解这些概念,还要明白这些面向对象的重要特性是如何体现先进的设计模式特色的,这样不仅有利于学生对面向对象的思想有一个全面、整体的把握,而且也有利于培养他们在实践过程中对专业知识的综合应用能力,提高其专业素质。
初学面向对象程序设计时,学生为解决具体问题而设计出的程序多由简单的变量和功能堆砌而成,体现不了面向对象的设计思想。教师可分别用基本的面向对象方法与引入设计模式后的程序进行对比讲解,详细分析后让学生明白:未融入设计模式的程序设计方法虽然也能解决问题,但程序的可复用程度低、缺乏灵活性,后续的变更和功能扩展比较困难;而引入设计模式,代码的复用性和扩展性就很好。因此,教师在分析、讲解实例程序时,不仅要从设计语言的语法和逻辑上进行分析,而且要挖掘实例背后隐含的设计模式和思想。
● 以实践教学模式提高学生的就业竞争力
1.构建“层次化、模块化、渐进式”的实践教学体系
对计算机专业人才培养实践课程体系的不断整合,以专业素质和创新能力培养为主线,实施“以项目实践为核心、学生为主体、学用合一”的实践教学模式,实践内容由低到高依次分为基础训练、综合应用训练、研究创新训练三个层次,实现了不同阶段理论和实践的有机的结合,这样不仅满足“实践—认识—再实践—再认识”的认识论规律,也符合应用型人才的培养目标和要求。
2.改革教学模式、教学内容和教学方法
在学习过程中,学生常会感觉面向对象的内容抽象,难以理解,因此,教师要向学生明确面向对象的思想的建立要循序渐进,教师要注意教学方法,对于基本的理论知识应结合实际应用问题来讲授,以提高学生的学习兴趣和学习主动性,具体可从以下几方面着手。
①采用案例教学,将知识与生活中具体的内容联系起来。案例教学法是在计算机课程教学中非常有用的一种教学方法。对课程中的某些内容,精选一些合适、有趣的实例,注意将例题与实际生活联系起来,先让学生对所学知识有一个感性的认识,再讲解抽象的概念,激发学生的学习兴趣。
②通过分析开源软件领悟面向对象设计思想。许多开源软件本身就是面向对象程序设计的经典范例,学生在教师的引导和辅助下,积极主动思考,从开源软件中获得启示,领悟面向对象设计思想的真谛。教师从知识传授者变为启发者和引导者,学生成为学习的主体,充分调动了学生的主观能动性。例如,Java工具包包含了附有源代码的丰富实例,在教学中可以让学生自己分析。对于面向对象设计能力掌握得较好的学生,教师可以鼓励其根据自己的兴趣向开源软件社区中贡献代码,与高手交流、协作。
③注重抽象思维和技术的锻炼。抽象思维和技术是人类理解和解决复杂问题最重要的工具之一,从抽象角度分析和理解面向对象设计技术的主要特性,也是面向对象程序设计中广泛应用的原则之一。利用抽象技术,通过层次分类方法自上而下地对复杂问题逐步求精和模块化,可以适当引入统一建模语言(UML)的符号与图形表示方法,以简洁、直观的方式表达面向对象思想。
④以任务驱动教学方法实现实践教学环节。任务驱动教学可以引导学生把学习的面向对象知识和思想灵活融入具体的实践项目中去,体会基于面向对象思想的代码设计和结构设计对软件稳定性、扩展性和可维护性的影响。在教学过程中,针对课堂教学内容设置具有真实背景的项目由学生分组协作完成。教师要充分调动学生自主学习、积极探索的积极性,同时通过小组协作,从合作伙伴的反馈信息中形成对问题的再认识也有助于构建相互学习、共同提高的机制。
此外,积极鼓励学生使用多种开发工具完成实验,这样不仅有利于加强学生对各种程序设计语言的理解,而且理论知识与编程实践的结合能够提高学生利用所学的程序设计语言、数据结构和算法分析等专业知识解决实际问题的能力[5],使其更好地适应就业市场的需求。
3.发挥网络教学优势,建立课程教学网站
互联网上有丰富的面向对象程序设计学习资源值得我们借鉴和学习,尤其是一些专门针对就业培训的免费资源。为了有效整合这些资源,笔者通过开发“面向对象程序设计”课程学习网站延伸课堂教学内容,以弥补课堂教学与就业实践的差距,把课堂上的教学难点、重点和未讲授的面向对象程序设计应用实例通过网络平台展现给学生。借助学习网站,学生不仅可以便捷地获取网络上的各种学习资源和职业培训资料,还可以与教师互动交流,解除疑惑,这些专业知识拓展信息对学生设计、完成相应的实践项目和提高从业素质有很大的帮助,并且让教学形式更加多元化,激发学生积极主动地锻炼自身的能力以适应未来行业的专业需求。
● 结束语
“面向对象程序设计”是培养学生应用面向对象的思想解决和处理实际问题能力的核心专业课程。现阶段,传统的课堂教学已经不能满足应用型本科院校计算机专业人才的要求,计算机专业课程的教学模式需要不断改进,才能满足培养企业、行业、社会发展的需求。以就业为导向,将“面向对象程序设计”课程的教学定位于学生的实践操作与应用能力的培养,不但能让学生以实践的方式更好地理解和应用所学的理论知识,而且可以帮助他们达到就业市场对应用型人才的实践应用能力的要求。因此,我们充分利用互联网时代先进的教学方法和手段,给学生创造多样化、弹性化的学习机会,注重程序设计实践与抽象的面向对象理论的有效结合,强化课程知识的使用性,突出教学的针对性,从而调动学生的学习积极性,促进教学质量的提高。
参考文献:
[1]叶利华,殷海明,等.应用型本科计算机专业程序设计类课程实践教学改革探索[J].中国信息技术教育.2014(7):113-114.
[2]杨瑞龙,朱征宇.引入软件设计模式的面向对象程序设计教学方法[J].计算机教育.2012(10):97-100.
[3]梁琨.对“90后”大学生计算机教学的改革与探索[J].教育与职业,2014(23):135-136.
[4]范伟.软件设计模式研究及应用[J].山东工业技术.2015(20):189.
[5]闫俊伢.基于能力培养的软件工程专业实践教学研究与探讨[J].内蒙古师范大学学报(教育科学版),2014(11):143-145.
作者简介:张艳,女,汉族,1976年4月出生,河南南阳人,博士在读,上海理工大学光电信息与计算机工程学院讲师。