常德职业技术学院现代教育技术中心 傅 波 彭春富
湖南科技学院 外语系 赵 芸
基于构建Java课程体系下的项目化教学改革探索
常德职业技术学院现代教育技术中心 傅 波 彭春富
湖南科技学院 外语系 赵 芸
以项目开发过程为导向,从教学思路、教学内容与结构、教学方法和考核方法等方面进行高职院校Java课程改革实践,力图从多方面培养学生的Java项目开发能力。
Java课程;教学改革;项目开发
Java作为目前功能强大、最流行的网络编程语言之一,因其具有面向对象以及平台无关等特性成为当今应用软件开发的首选技术。由于Java 语言“一次编写,到处运行”的特点,使其在国内外软件开发企业中的使用比例排名第一。Java编程人员的需求市场广阔,仅以51job人才招聘网2013年7月的发布消息为例,关于Java招聘的岗位信息多达4万余条。在企业级应用方面,据W3Techs公司2013年6月统计数字显示[2],服务器端最为流行的5种常用计算机语言中,Java 是企业级高访问量网站的首选。
鉴于Java的迅速普及和良好的跨平台特性,Java已成为当代成长最快的软件产品之一,受到大约150个许可证颁发机构、200所大学和50万开发者的拥戴。从1997年起,美国麻省理工学院就设置了Java作为必修课。2002年,美国加州大学伯克利分校开设了25门Java相关课程。世界计算机排名前列的高校,均开设有Java及其相关课程,详见表1。
表1 国外一些高校的Java开设情况
在我国最新教育部计算机基础课程教学指导委员会制定的白皮书中,Java课程被列为核心课程之一。国内高校从1997年开始陆续开设Java相关基础课程,在原有的C和C++基础上,新增Java编程课程;2012年国内已有近80%的高校开设了Java及相关课程,国内高校Java课程开设情况,详见表2。
表2 国外一些高校的Java开设情况
在Java市场和人才培养需求面前,如何合理组织和安排Java课程的整体教学,已成为我们急需探讨和解决的问题。国内外高校的Java教学中,基本上把整个Java的课程设置为1年,分为Java程序设计基础知识部分与Java程序设计高级开发部分,其中基础部分以Java程序设计为主,而高级程序开发部分则以J2EE 以及J2ME课程为主。学生经过第一个学期对Java基础知识的掌握后,可以在下一学期开始高级开发部分的学习。在一些高校中,课堂上老师除了授课之外,课程设置中还专门安排了一些Tutorial的授课安排,相当于课堂讨论课。老师会预先给出教学中的重点、难点,同学们可根据自己的情况及时发言或讨论,从中获得自己想要的东西。参照国内外多所高校的Java教学计划,依据吉林大学最新教学大纲的编程类语言教学内容,笔者所在团队提出了Java课程教学体系构建方案,如图1所示。
图1 以Java SE为核心、企业应用与移动开发为拓展的Java教学体系探索
在高级语言程序设计和面向对象程序设计的C和C++语言基础上,依托算法设计和数据结构课程,从第4学期开始Java课程教学;以Java SE为核心,侧重理论结合实践,注重程序和架构的设计,突出实践对于Web企业应用和Android移动开发的重要作用;在任务和项目驱动教学理念下,制订实践教学内容,详见表3;
表3 任务与项目为驱动的实践教学设置
强调数据库应用在其中的重要地位,融入架构设计和团队开发等实际软件工程内容,为学生实际操作提供支持。
以就业为导向,提高施教的针对性。分析就业市场需求,定位课程岗位能力培养目标。Java技术在J2EE、J2ME、4G、物联网以及移动互联网等领域处于举足轻重的地位,这些专业岗位(群)都需要Java程序员,这些专业岗位(群)也正是计算机相关专业学生的主要就业领域。此课程要求学生掌握Java基础、Java数据库开发和Java Web编程等模块的基本理论、知识和技能,并能熟练掌握Java软件项目开发的各项技术,使其具有Java项目的设计、开发和测试的职业能力。
对应职业岗位,整合设计课程内容。Java程序员的市场需求量稳居第一,它对学生的要求也较高,传统的教学很难达到企业的需求。因此Java教学不能仅仅满足于完成教学任务,而应该以企业需要为出发点,重新整合设计教学内容,对学生进行强化训练,使学生能够达到企业用人的基本要求,提高学生的就业能力。为了到达这个目的,我们根据软件职业岗位能力需求来设计课程内容,按照软件企业岗位需求,对Java教学内容重新设计,分别设计了Java基础、Java数据库开发和Java Web编程等学习任务,并以软件项目开发及管理流程来培养学生。
针对教学存在的忽视交流能力、管理能力的问题,以就业为导向,对Java课程进行项目化教学改革。在教学设计时主要突出对学生的专业技能、项目经验、职业素质等方面的训练。在专业技能方面,首先,通过教师的案例示范、大量的上机练习、代码阅读、规范化检查,训练学生编写程序的熟练度和规范性;通过学生项目设计提高了学生的项目经验;通过项目开发过程中小组成员的分工合作,培养了学生的团队精神、协调能力与良好的职业习惯。
根据就业岗位要求和职业领域可持续发展的要求,重构课程教学内容,形成模拟实际工作过程的模块化课程体系(如图2所示)。
图2 Java项目化课程体系
改革后的Java课程体系以“工学结合”的学习项目为知识载体、以程序员的职业发展规律为主线开发课程内容,以项目导向的课程活动作为课堂教学的主要组织形式,突出在具体项目开发过程中让学生学会做人做事,以项目过程中人的行为表现和项目评分作为主要的考核评价手段。
吸取以往的教训,将课程教学改革为以学生为主体,教师为主导,采用“任务驱动教学法”,通过实际项目开发(如图3所示)实施教学。
图3 项目教学流程
在项目开始前,教师就该项目用到的相关技术进行概括式介绍。在项目开发过程中,教师只负责巡回指导,细心观察各组学生在实现软件项目过程中遇到的问题和解决问题的方法,不必过多地干预学生的项目完成过程;学生模拟软件开发流程,分成若干学习小组,每个小组由5~6人组成,学生确定各自在项目小组中的分工,分别担当项目管理员、系统分析员、程序员、测试员、文档编写员和界面设计等角色。在项目开发过程中,学生的开发学习活动必须与任务或问题相结合,以探索问题来引导和维持学生的学习兴趣和动机,创建仿真工作任务,让学生带着任务学习,以使学生拥有了学习的主动权。
项目成绩评分包括项目成员组内评分(30%)、项目组间相互评分(30%),老师对项目评分(40%)。完成上述评价后,再组织教师和学生共同讨论,指出在项目工作中出现的问题,归纳出学生解决问题的方法和学生在整个项目中的学习行为特点,并将教师和学生的评价结果进行对比,寻找出评价结果差异的具体原因。这样,对学生的综合素质的考核就是理论考核(25%)、职业技能考核(45%)、创新能力(5%)、团队合作(5%)和出勤(10%)等。
改革后的Java课程打破传统教学模式,以一个完整项目贯穿整个教学过程的始终,以工作过程为导向,通过软件工程方法将课程内容进行重构。Java语言作为跨平台的面向对象语言,在近10年的流行开发语言排名中位居前茅,在Web企业级应用和移动设备开发中更是发展迅猛。在庞大的Java市场和人才培养需求面前,需要教师提供合理的课程讲授体系和实践内容支撑,构建以提高学生能力和素质为目标的Java人才培养教学体系架构。
[1]乔晖.近十年教学技能研究综述[J].盐城师范学院学报:人文社会科学版,2004,24(1):112-117.
[2]王槐源.微格教学在师范生教学技能训练中的应用模式研究[J].琼州大学学报,2002,9(5):35-39.
[3]刁俊明,叶广炎,梁云章,等.多媒体组合教学提高高等师范生教学技能的研究与应用[J].嘉应大学学报:自然科学版,1996(6):82-85.
[4]宣桂鑫.德国的微格教学[J].高等师范教育研究,1995(5):69-74.
[5]周红,董志澄,祝智庭.运用现代教育技术培养师范生教学技能的研究[J].高等师范教育研究,1999(5):67-73.
[6]汪家宝,刘丽.构建教学技能训练的新模式[J].广西高教研究,2002(4):16-18.