Java应用方向四阶段系列课程教学理念与实践_彭志平
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java 应用方向四阶段系列课程教学理念与实践
彭志平,姚明,李启锐
(广东石油化工学院计算机与电子信息学院,广东茂名
525000 )
摘要:根据教学应用型本科院校在办学定位、人才培养模式方面的要求,针对计算机专业学生就业普遍存
在的问题,阐述Java 应用方向四阶段系列课程教学理念,结合课程的教学实际,在增强学生的实践能力、提
高学生的就业能力方面取得成效。
关键词:教学应用型本科院校;Java 系列课程;教学理念
文献
[1]
对教学应用型本科院校在办学定位、人才
培养模式方面的要求作了清楚的诠释。
教学应用型本
科院校的学科和专业在强调必须的学术性和基础理
论性的同时,要更加强调面向市场现实需要和学生的
实际与未来发展需求。
作为教学应用型本科院校的计
算机专业教师,我们将人才培养的目标定为职业性和
工程技术应用型,在专业结构和课程设置中努力去凸
现“应用性”。
根据计算机语言的发展和应用形势,
结合学生的实际情况,我们构建了以Java 技术为主
线的Java 应用方向四阶段系列课程教学。
通过近几
年的教学实践,取得了良好的效果。
1 选择Java 作为教学语言和开发工具
多年的编程语言教学实践让我们深刻地体会到
编程语言选择的重要性。
对于教学应用型本科院校计
算机专业的程序设计教学来说,程序设计语言选择得
当,能为学生铺设出一条成才的捷径。
在互联网时代,程序员的职位更多的与网站相
关。
随着网络技术走向成熟,在软件开发体系方面,
目前主要流行两种架构:Java EE 与.NET。
来自软件
公司和培训机构的调查显示,全国各大IT 企业,招
聘职位最多的是Java 开发工程师;目前软件编程的
最热门语言当属Java,大量毕业生进入软件编程行
业,主要使用的还是Java 技术;同时,使用.NET 技
术进行软件开发的公司和人员也比较多。
我们对Java EE 与.NET 架构作了较为全面的比
较。
二者各有优势,简要说来,从易用性、开发成本、
对语言的支持、开发周期、对Web 服务支持的力度
等角度看,.NET 略胜一筹;从稳定性、安全性、移
植性、开放性、产品的多样性等角度看,Java EE 略
胜一筹。
Java EE 与.NET 对应的核心语言分别是Java
与C#,两者共通之处较多,掌握其中一种会有助于
快速学习另外一种。
欲选择其一作为教学内容,可以
从其应用的前景和学习的便利来考虑。
这两者都是面
向对象的语言,并且都具有良好的应用前景,而Java
的跨平台等许多特性使其拥有更多的用户,且直接支
持分布式的网络应用为编程提供了方便,已成为网络
应用开发的首选语言和工具;同时,Java 的开源也让
学习者和使用者能获得更多的资源,能更好更深入地
学习和应用。
目前,Java 技术框架已发展得非常庞大,
其各方面的内容都非常丰富和精深,可以很好地解决
实际问题。
这是Java 的魅力所在,也是驱使很多人
学习和使用Java 的动力所在。
Java 语言从诞生至今
的短短十多年间,已经发展成为世界上编程使用人数
基金项目:广东省自然科学基金资助项目(10252500002000001),广东石油化工学院计算机科学与技术特色专业建设
(214084)。
作者简介:彭志平,男,教授,研究方向为机器学习、面向服务的计算;姚明,男,副教授,研究方向为软件工程与面向
对象技术;李启锐,男,讲师,研究方向为图像处理与模式识别。
最多的语言。
经过分析和对比,我们选择Java 作为
教学语言和开发工具,通过开设Java 相关课程,形
成了以Java 技术为主线的Java 应用方向四阶段系列
课程教学。
2 分阶段教学的必要性
虽然Java 应用广泛、学生就业面大,但是对该
类人才需求旺盛的IT 企业却很难招聘到合格的Java
开发人员。
其中最根本的原因,是许多计算机专业的
毕业生在就读期间没有掌握实用的技能与经验,距离
企业的实际用人需求有较大的差距。
较之于.NET,从学习的难易程度来看,Java 技
术框架庞大,知识与经验靠积累,学习和使用的门槛
较高;从软件开发的周期和成本来看,Java 较长较高。
由此,我们可以找到问题的症结所在,即Java 内容
庞大,仅仅通过一门课或一个学期的教学很难让学生
真正掌握并熟练应用。
在计算机课程的安排上注意分
解难点,对教学效果的提高会有很大的帮助;我们制
订应对的教学计划时,应是围绕着“如何将其内容分解”进行。
完成Java 相关课程的学习与应用,还需要其他
课程内容作基础与配合,涉及到的课程较多,其教学
前后会跨越几个学期。
因此,我们设想将Java 相关
课程的教学分成几个阶段进行;一是因为课程本身内
容庞大需要分解,二是因为某个阶段的学习可与同学
期其他课程配合进行,这样可使教学做到有的放矢、
循序渐进,收到较好的教学效果。
已有一些计算机专家和教育工作者,在教材的编
写上进行改革,力图改变教育未能很好地适应需求的
问题。
近年来,出版的一些新编Java 教材
[2-3]
,其变
化特点是将Java SE的内容与JSP的内容整合,以Java SE 为基础部分、JSP 为应用部分,在介绍Java 基础之后,以Java Web 编程作为应用与提高。
这种试图“一竿子插到底”的目的,是欲达到避免重复学习、
实现事半功倍的效果,以及提高学生学习的目的性和
积极性。
然而,Java SE 本身内容就很丰富,另外,Java
Web 编程部分的内容也不是仅仅通过两三章内容的
介绍和讲解就能处理好的,因为Java Web 编程是知识的综合运用,JSP 只占其中一部分,除了这部分内
容需要一定时间的学习之外,一般说来还要涉及到数
据库、HTML、JavaScript、CSS 、XML 等内容的学习,而这些基础知识,学生在此之前一般并不具备。
所以,我们认为,将以Java SE 为主的内容放在第一阶段,而将以JSP 为主的Java Web 编程内容放在第二阶段,均利用一个学期、前后分开完成教学,学生
的掌握情况会好很多。
Java EE 技术经过多年的发展,已经日趋成熟、
成为最佳电子商务解决方案之一。
使用框架会带来开
发的便利,它是面向对象技术中软件复用粒度最大的
方式。
我们注意到介绍流行应用框架Struts、Hibernate 和Spring 的教材
[4-5]
在逐渐出版,并且其内容由单一
介绍其中某种框架及应用逐渐转向到对这三个框架
及其相互之间整合的介绍。
学生如果在第一阶段的学习完成之后就学习这些框架及应用,难度是相当大的,因为面对的新内容太多,即使是依葫芦画瓢写出了程序,也是知其然而不知其所以然。
如果有第二阶段的Java Web 编程基础,则对这些内容的理解和认识会好很多;而尽管如此,这些框架及应用仍然需要一定时间的学习才能较好地理解掌握和熟练应用。
我们认为,将流行Web 框架及应用的内容放在第三阶段,进行一个学期的教学较好。
分布式计算是当前软件开发技术的一个重要发
展方向。
“分布式计算是一个具有重大理论与实践意
义的迷人课题,其迷人之处在于理论与实践的同步发展,一方面实践推动了理论,另一方面理论又指导着实践”
[6]。
分布式计算技术形成了OMG 组织的
CORBA、Sun 的EJB/Java EE、Microsoft 的.NET 三足鼎立的局面。
目前很多软件项目都使用了分布式计算技术。
Java 支持分布式计算技术,早期用得比较多的有RMI、CORBA 等;在EJB 3.0 推出后,EJB 技术更为流行一些,越来越多的应用使用了EJB 技术。
作为软件开发技术的一个新兴领域,各种分布式
计算技术还在持续、迅猛地发展。
有必要开设一门课程,对这些内容作一些简要的教学,让学生储备对Internet/Intranet 的分布式软件开发的后劲,同时也可提高学生就业的竞争力。
要完成此课程的学习,学生
66 2011
除掌握面向对象程序设计方法与Java 程序设计语言
之外,还须具备面向对象软件工程的基本知识。
从教学内容以及与其他课程的衔接上考虑,宜将此课程放在第四阶段,安排在四年级上学期进行。
3 四阶段系列课程教学计划
根据前面的分析,我们制订了Java 应用方向四
阶段系列课程教学计划,如表 1 所示。
表1 Java 应用方向四阶段系列课程教学计划
阶段名称教学目标主要内容开设时间
第一阶段
面向对象原理与
Java实践
理解和掌握面向对象的思想和方法;掌握Java
基本语法及其编程方法;掌握JDK、Eclipse等开
发工具的使用;掌握Java API学习方法;培养学
习兴趣。
结构化程序设计、面向对象程序设计、异常
处理、文件与IO流、多线程、GUI程序设计、Applet、Java常用数据结构、Socket编程、数
据库程序设计。
第四学期
第二阶段
Java Web应用编
程基础
掌握开发Java Web应用基本编程技术;理解n 层
体系结构概念和掌握MVC设计模式;掌握MyEclips、Ant等开发工具的使用;掌握Tomcat
容器的配置。
HTML、JavaScript、CSS、XML、JSP、Servlet、Filter、Listener、JavaBean、EL、JSTL、自定
义标签、MVC设计模式及其实现。
第五学期
第三阶段
Java Web应用框
架技术
掌握目前流行的几个Java EE框架应用技术,能
根据这些框架的组合进行软件编程。
Struts 2、Hibernate和Spring三种轻量级、开源
的框架技术; 通过整合这三种框架技术构建
松散耦合型Web应用。
第六学期
第四阶段分布计算技术
掌握分布计算技术、分布式系统理论的主要概
念,了解分布计算技术、分布式系统的主流应
用范例,并对分布式应用系统中的一些高级课
题有所了解。
培养和锻炼学生检索和阅读科技
文献的能力、自学和科学研究的能力。
Socket、RMI、CORBA等传统分布计算技术;CORBA模型与EJB组件模型;跟踪当今先进
的分布式软件开发方法,了解Web服务、网
格计算等新型分布式计算技术;WebLogic
Server或JBoss的使用。
第七学期
从应用的角度看,第一阶段为Java 桌面应用,
第二阶段为以JSP 为主要内容的集中式Web 应用,第三阶段为以应用框架为主要内容的集中式Web 应用,第四阶段为Java 分布式应用。
4 教学实践
在学生具有高级语言程序设计(C++)以及数据结
构课程内容的基础之后的几个学期里,我们进行了Java 应用方向四阶段系列课程教学。
4.1 第一阶段:面向对象原理与Java 实践
此阶段所教学的Java 内容,是Java SE 部分,也
是Java 的基础部分。
我们认为,学习是为了更好地
应用,如果这部分基础不牢,对后续Java 相关课程
内容的理解、掌握与应用是有影响的。
我们很难做到仅通过课堂教学与实验指导便将
此门课程的内容几乎一网打尽,需要做的是抓住课程的重点和突破其中的难点,进行有的放矢的教学,以达到纲举目张的效果。
对于此阶段的教学,我们围绕抽象、封装、继承与多态这些面向对象程序设计中的核心概念,将面向对象的思想和方法贯穿于整个教学之中;通过联系实际的例题与应用对比,突破I/O 流类众多、多线程部分概念抽象以及它们如何应用的难点;详细处理常用Java 数据结构的使用,以及Java 网络访问、Java 数据库应用程序的编写这些对后续
课程的进行相关性很大的内容。
此阶段是整个系列课程教学的基础阶段。
从应用
的角度来看,完成此阶段的学习之后应该具备Java
桌面应用系统开发基础。
4.2 第二阶段:Java Web 应用编程基础
基于Java 的Web 服务器端编程主要涉及JSP、Servlet 和JavaBean 技术。
它们是最基本的Java EE 技术,也是基于Java 的网络编程的基础,它们之间
的交互为Web 服务提供了优秀的解决方案。
此阶段的教学内容应用性较强。
教学中,我们注
重面向实践技能培养,通过案例组织内容。
一是抓住实践项目中常用的基础技术重点讲授,二是将常用的DAO、VO、MVC 等设计模式引入教学内容之中。
对于关键的知识模块,提供典型的、可操作的实验案例,通过实例来增强学生对知识的理解,并以此培养学生的学习兴趣和实践技能。
最后通过一个综合实验,让学生完成一个小项目的实施。
JSP 2.0 规范推出了EL 表达式、JSTL 和自定义
标记等技术,结合使用JavaBean 和MVC 设计模式,可以使Web 应用的开发更加快捷和易于维护。
值得
注意的是,目前的相关教材中,只介绍JSP 1.x 内容
的仍为数不少。
我们在教学中,使用包含JSP 2.0 内
容的教材
[7]
,采用JSP 2.0 的技术组织实践项目,并
提倡JSP 网页中多用标记和EL 表达式、少用Java 代码段的网站开发理念。
此阶段是Java Web 应用编程的基础阶段,同时
也可为Java Web 框架的学习铺平道路。
从应用的角度来看,完成此阶段的学习之后应该具备使用JSP、JavaBean、Servlet 等技术并采用MVC 设计模式进行Web 编程、开发中小型应用系统的基础。
4.3 第三阶段:Java Web 应用框架技术
目前,基于Web 框架开发的Web 应用的时代已
经来临。
使用框架特别是不同框架的组合,可以方便地开发出优秀的、利于维护和扩展的程序。
继Struts 成功推出后,市面上涌现了大批优秀的框架。
我们选择流行的几个Java EE 框架Struts 2、Hibernate 和Spring 进行教学。
对每个框架及应用逐一讲授之后,再讲授它们之间的整合应用,此阶段着重于学生动手能力的培养。
我们以一个实际项目贯穿于教学之中,利用Struts 2 实现系统的部分功能,与Hibernate 整合实现系统的部分功能,通过Spring 应用这三个框架
之间的整合来实现系统的部分功能。
此阶段是Java Web 应用开发阶段,完成此阶段
的学习之后应该具备使用常用Web 框架技术开发与
维护大型应用系统的基础。
值得一提的是,相对于第二阶段,使用框架技术使得开发变得快速高效,但这只是在开发时所采用的方法和手段不同而已,并不意味着第二阶段的开发方法和手段可以被淘汰。
4.4 第四阶段:分布式计算技术
此阶段的教学主要有Socket、RMI、CORBA
和Web 服务等相关内容。
对于基于Socket 的分布
式应用程序开发,我们在第一阶段相关教学内容的
基础上有所提高,以FTP 服务器与客户端开发为例,我们让学生进一步理解C/S 交互模式,加深对
于网络协议概念的理解以及掌握协议的设计和实
现方法。
我们以仿消息中间件机制实现客户端通信
为例,让学生熟悉和掌握基于RMI 的分布式应用
程序开发的基本方法和步骤,并进一步理解C/S 交
互模式、消息通信机制的应用背景。
之后,将设计
内容用CORBA 程序设计方法重新设计,让学生熟悉和掌握基于CORBA 设计开发分布式应用的基
本方法和步骤并进一步理解C/S交互模式和消息通
信机制,引导学生考虑如何采用CORBA 提供的多种程序设计范例,并比较采用CORBA 进行程序设计的优点及难点。
最后,再将设计内容用EJB 程
序设计方法重新设计,让学生掌握EJB 的基础知
识、熟悉和掌握基于EJB 设计开发分布式应用的基
本方法和步骤、熟悉如何在Weblogic 中部署一个
简单的应用。
此外,对分布式应用系统中的对象服
务、性能与可伸缩性等高级课题也作了一定的介绍
和探讨。
在四阶段系列课程教学过程中,我们还根据教学
进程组织和动员学生加入到校内外的各个团队中,参
加项目开发、软件设计大赛等活动,使学生进一步得
到锻炼。
5 结语
根据教学应用型本科院校在办学定位、人才培
养模式方面的要求,并针对计算机专业学生就业所
普遍存在的问题,我们确立了通过Java 应用方向四
阶段系列课程教学增强学生实践能力、提高学生就
业能力的教学理念。
以我们制订的教学计划进行横
向对比,其他院校一般只开设前两个阶段的教学,
而资深培训机构也只开设前三个阶段的教学。
我们
68 2011
制订的计划,课程涵盖了主流技术和前瞻技术,可
使学生具备单机应用、集中式网络应用和分布式网
络应用开发的能力。
教学的实施,增强了学生的实践能力。
在我们组
织的以实战项目为主要教学内容的Java 职业技能培
训中,学生的基础和表现受到来自软件企业的培训教
师的赞许,同时,通过实战培训也有效地缩短了学生
能力与企业具体的用人需求之间的差距。
教学的实施提高了学生的就业能力(而且其待遇
明显高于.NET 同事)。
2006 年以来,毕业生从事Java
开发工作的人数逐届递增。
其中,2006、2007 届不
少毕业生已成为单位骨干和中层领导,受到用人单位
充分肯定。
2008 年,有应届毕业生通过两千选2 的
考试进入深圳某大公司从事公司业务软件的Java 开
发工作。
而在2009 和2010 年,应届毕业生就业质量
进一步整体提升,不少毕业生就业于广州、深圳等地
知名公司、企业从事专业技术工作。
2010 届毕业生
中有5 人进入了广州某知名软件公司从事Java 开发
工作,因工作表现突出,今年该公司决定给我院2011
届计算机专业毕业生提供20 个Java 就业岗位。
Java
应用方向四阶段系列课程教学正逐渐成为我院的专
业特色。
参考文献:
[1] 陈小虎,屈华昌,邵波. 教学应用型本科院校的办学理念及其路径选择[J]. 中国大学教学,2005(2): 59.
[2] 史斌星,史佳. 新编Java 实用教程[M]. 北京:清华大学出版社,2009:328-508.
[3] 李芝兴,杨瑞龙. Java 程序设计之网络编程[M]. 2 版. 北京:清华大学出版社,2009:397-495.
[4] 李宁. Java Web 开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax[M]. 北京:清华大学出版社,2009:166-807.
[5] 郑阿奇. Java EE 实用教程[M]. 北京:电子工业出版社,2009:1-401.
[6] 李文军,周晓聪,李师贤. 分布式对象技术[M]. 北京:机械工业出版社,2004:i.
[7] 覃华,韦兆文,陈琴. JSP 2.0 大学教程[M]. 北京:机械工业出版社,2008:212-250. Teaching Philosophy and Practice of Four-stage Series of Courses in Direction of Java Application PENG Zhiping ,YAO Ming, LI Qirui
(School of Computer, Electronics and Information, Guangdong University of Petrochemical Technology, Maoming 525000, China)
Abstract: According to requirements of orientation and training mode of teaching-centered and
application-oriented universities, and to solve the common problems during computer major students' employment,
this article describes the teaching philosophy of four-stage series of courses in direction of Java application,
combined with teaching practice, achievements are gained in enhancing students' the practical ability and improving
their employability.
Key words: teaching-centered and application-oriented universities; series of courses of Java; teaching
philosophy
(编辑:姚彦如)。