西南石油大学肖斌廖浩德陈汶滨
基于软件工程专业的JAVA程序设计教学改革
西南石油大学肖斌廖浩德陈汶滨
Java程序设计语言是高校计算机相关专业的核心基础课程,传统的教学方法不重视专业的特点,往往只关注语法和算法,导致各专业学生专业方向不明确,和后续课程脱节,学习效果不理想。笔者根据软件工程专业的培养目标,在教学中结合java的面向对象的特点,融合工程化的思想,采用项目驱动的方式进行教学,强调对问题的分析和设计能力,以及解决实际问题的能力,提高了学生的动手能力和工程运用能力。并为后续的面向对象分析与设计、软件设计模式以及软件工程等核心课程做好了铺垫,达到了该门课程为该专业培养目标服务的目的。
软件工程专业针对企业选拔人才的标准,都把操作能力强、创新能力强的人才作为培养目标,然而毕业生往往无法达到用人单位的要求,课程教学内容和教学方法存在的问题是造成这一现象的重要原因。JAVA语言课程是计算机专业必修的一门专业课,由于JAVA语言具有面向对象、可移植性、简单性、动态性、健壮性、分布性等优点,已广泛应用于游戏控制台、互联网、手机智能卡、手持式电子消费类产品和企业应用等多个领域。因此,许多软件工程专业以JAVA语言为必修课程,并构建JAVA体系课程群以达到其培养目标。课程群分层次逐步推进。以C为编程入门语言,以JAVA SE为JAVA基础,以Servlet、JSP为WEB开发基础,以Struts,Spring和Hibernate等框架整合应用为提高,构建JAVA语言四阶段培养模式。
在JAVA语言的教学过程中,该门课程往往给学生留下了该语言内容枯燥乏味,理论与实际脱节的印象,使得学生缺乏积极学习的兴趣和主动独立分析问题的能力。其具体分析如下:
面向对象思想不突出,在JAVA语言四阶段培养模式下,C语言作为程序入门语言有其独到的优点,其程序结构简单,便于学生理解语言基础知识。其重在培养学生面向过程的编程思想。而JAVA是完全面向对象的语言,应侧重于面向对象的编程思想,但是,在JAVA当前的教学内容中,针对JAVA特有语法和算法设计的案例多,JAVA和C之间的教学内容重叠。在JAVA培养四阶段模式背景下,不能突出JAVA SE教学的重点,冲淡了面向对象思想培养的主题。
灌输式的教学方式,目前,JAVA课程教学主要采用灌输式的教学方法,此方法主要是以教师讲课为主,学生听课为辅的一种教学形式。
教学和实验脱节,现在的JAVA语言课程的教学模式大部分采用多媒体讲课和上机交替进行,且理论课时多,实验课时少,这种先理论后实验的模式阻碍了学生的知识的连贯性。
结合软件工程的工程认证评估的需求,以及本校软件工程专业的实际情况,在教学班实施以下教学改革。
从设计模式理解面向对象编程,从JAVA教学四阶段培养模式的整体考虑,JAVA SE的教学应该重视面向对象思想的培养,这需要重新组织和安排JAVA SE的教学内容,减少JAVA基本语法知识的内容,突出JAVA语言特性,并引入与基础知识密切相关的常用设计模式,例如简单工厂模式,工厂方法模式,装饰模式,观察者模式等。结合JAVA API,JAVA WEB开发框架中用到的设计模式进行重点分析,开阔学生的设计视野,提高其分析设计能力。教学内容的变化引起教学方法的相应调整,对于设计模式的讲解要擅于结合日常生活的例子进行案例设计,并在教学时采用对比法,在不使用设计模式的情况下实现案例代码,然后分析代码存在的弊病。应用设计模式改进设计。总结使用模式的优点。
选择有利于培养学生创新能力的教学形式,教师的教学目标不是让学生背语法,默写程序,而是培养学生的软件开发能力,使学生能够自己独立设计程序,采用理论与实践相结合的教学方式,采取项目驱动式教学,使学生在项目中学习语法,语句和知识点。教师将学生分为项目小组的形式,模拟公司中软件项目中的各种职员角色(编写代码人员,系统架构人员,项目经理,程序测试员等),选择学生感兴趣的具有代表性的实际项目,使学生适应就业需求,强化学生的项目合作意识,锻炼学生的动手创新能力。
以教师为主导,学生为主体,教学过程中要让学生参与到教学过程中,充分体现学生的主体地位,避免满堂灌的现象,否则学生上课时积极性不高,课堂气氛不活跃,教学效果不理想,针对程序设计课程,教师可以采取让学生展示讲述自己的代码,老师带领大家一起分析,评价学生的程序,指出其程序的优点和不足,这种互问互答的讨论式和启发式的教学方式,不仅可以调动学生学习的主动性和积极性,而且有利于学生在整个教学过程中集中精力,培养学生的创造性思维能力。而且更容易锻炼学生的设计分析能力和实践能力。
通过一学期的教学,教学效果明显。首先学生明白了学习java程序设计不是学语法,而是学习用这个工具如何来解决实际问题;学生也清楚了该门课程与后续课程的关系;也懂得了一些软件工程项目开发的过程。在最后的结业考试中全班同学顺利通过考试。同时积极引导学生进行各类项目的申报,成功申报Google创新项目和创业项目2项。完成校内创新创业项目申报6项。参加南桥杯、软件杯、java甲骨文程序设计大赛均获得不错的成绩。
软件工程专业在Java语言教学中实施项目案例教学,通过改革课堂及实验教学内容和模式,能够理论与实践兼顾,能够提高学生的分析与设计能力,提供学生的实践能力。从而适应当今社会对软件人才的需要。项目教学法可以充分调动学生学习的积极性,激发学生的学习热情,引导学生学习新的知识和技能,提高学生分析问题和解决问题的能力。增强学生的实际动手能力。项目教学法充分体现了学生的主体地位和教师的主导作用。