JavaWeb课程统一项目教学改革与实践
2017-05-12张小华黄波
张小华+黄波
(成都东软学院 计算机科学与技术系,四川 都江堰 611830)
摘 要:针对Java Web课程的特点,运用项目驱动教学模式,提出统一项目教学方法,从授课流程、授课内容、授课设计等方面介绍课程改革过程,并以一个项目的迭代开发贯穿始终,阐述在不同的教学环节如何采用不同的教学方法和手段,更好地培养学生的工程实践能力。
关键词: Java Web课程;教学改革;教学方法;统一项目教学;统一项目实践
0 引 言
Java Web是高等院校计算机专业和信息技术专业的一门重要专业技能课程。目前,web软件开发已成为软件开发的主流。Java凭借其语言的跨平台性,成为web开发的首选。 Java Web技术发展很快,从最初的Servlet,到后来的JSP+Servlet+java bean,进而到SSH(Struts、Spring和Hibernate的简称)框架技术。同时,采用Java Web开发的网站涉及HTML、CSS、javascript、ajax、数据库等技术。该课程起点高、内容广且实践性强,对教师的要求很高,教学难度较大[1]。Java Web课程需要教师既能胜任Java Web理论教学,又能指导学生进行Java Web项目实践,即“双师型教师”。这些特点决定了采用陈旧的理论灌输式教学方法难以达到良好的教学效果。因此,针对Java Web课程的教学改革是大势所趋。
由于Java Web课程主要培养学生开发Java Web项目应具备的知识、技术和能力,因此该课程最佳的教学模式是项目驱动教学模式。项目驱动教学模式是在教学过程中,以学生为中心、以项目为驱动的教学方式[2]。项目驱动教学的核心是课程案例项目的选取,课程案例项目不能太多,也不能太大太难:①课程项目太多,不仅会增加学生的学习负担和教师的备课负担,更重要的是会分散学生学习和教师备课的关注点;②课程项目太大太难,不仅会导致教师无法讲授完所有知识和技能,也会导致学生无法按时、按质量地完成项目,不便于教师对其考核。
1 课程教学改革
采用统一项目教学方法进行教学的步骤如下:①调研目前IT公司进行Java Web项目开发的流程,并将此流程作为本课程的授课流程;②调研Java Web项目开发流程中每个步骤必需的核心知识和技能,并将这些核心知识和技能作为本阶段的授课内容;③选择一个规模和难度适中的案例项目,并用此项目中合适的模块或功能涵盖所有阶段的知识和技能;④对每个知识点和技能的讲授进行设计,用合适的项目案例和工具简明扼要、清晰明白地讲授各知识点和技能。
1.1 授课流程改革
通过调研国内IT公司Java Web项目开发的流程,归纳出Java Web项目的开发流程[3],见图1。
图1的开发流程简述如下:①投标项目,并得到项目的初始需求;②初始需求存在歧义,需要与客户进行确认,使用HTML语言制作一个项目的静态原型给用户使用,并根据客户的反馈进行修改,经过多次协商,基本确认需求;③需求确认后,将项目的静态原型交给数据库设计人员进行数据库设计,并在设计完数据库后进行可行性分析,同时将项目的静态原型交给美工设计人员进行界面设计和实现;④数据库设计完并进行可行性分析后,持久层编码人员使用JDBC技术进行数据库编码;⑤当持久层编码和Web界面都完成后,动态编码人员开始进行动态页面编码实现,从而完成整个项目的编码。
为了使学生毕业后能够直接进入公司项目组进行Java Web项目开发,省去或缩减岗前培训的时间,成都东软学院直接采用图1所示的项目开发流程作为Java Web课程的教学流程。但由于Java Web课程主要讲授动态页面的相关知识和技能,因此在课程的实际教学中采用的是图1左边虚线框起来的流程,而右边的界面设计不会涉及。
1.2 授课内容改革
教学流程确认后,可以根据图1中每个步骤必须要掌握的知识和技能对教学内容进行裁剪,进而形成授课需掌握的知识和技能列表,见表1。
通过表1的“掌握的知识和技能”栏,授课教师能清楚哪些授课内容必须详细讲解、哪些内容可以略讲。
1.3 支撑项目选择和授课设计
统一项目教学方法的最后一步是选择一个规模和难度适中的项目作为授课案例项目。案例项目选择后,需要按照子系统、子模块、子功能对项目进行三级功能划分,并提取出合适的模块或功能支撑教学步骤中每个知识点和技能的授课。
成都东软学院Java Web课程选择的案例项目是网上书店系统。网上书店系统类似淘宝网站,因此对学生和教师来说,功能理解上不会存在任何难度。网上书店系统规模适中,主要包括供客户使用的前台购书子系统和供管理员使用的后台信息管理子系统。前台购书子系统主要包括图书展示、图书购买、顾客信息管理子模块。后台信息管理子系统主要包括登陆、用户管理、用户组管理、功能管理、权限配置、权限控制、图书管理、图书类型管理和订单管理模块[4]。网上书店系统功能模块劃分完成后,提取出合适的模块或功能支撑教学步骤中每个知识点和技能的授课,形成课堂案例模块的内容[4],见表1。
在每个知识和技能的授课过程中,可以使用一些辅助工具提高授课效果。例如,在HTML原型阶段讲解HTTP协议时,可以使用集成开发环境MyEclipse中的“TCP/IP Monitor”插件进行辅助教学,使学生更好地理解HTTP请求的结构以及用GET请求和POST请求传数据的异同。再如,在DB编码阶段讲解JDBC编码之前,可以配置集成开发环境MyEclipse中的“Database Explorer”插件来链接数据库,由于“Database Explorer”插件基于JDBC技术,因此使用“Database Explorer”插件不仅可以验证使用JDBC是否可以连通数据库,而且JDBC代码中的JDBC驱动类名、数据库URL等可以直接从插件中获取。在讲解课堂核心代码时,首先讲解代码的逻辑流程,然后带着学生实现每个流程步骤的代码。特别是在编写代码的过程中,要回顾、强调以前所学的知识和技能,并重点强调编码规范。
2 实践环节的教学改革
Java Web是一门注重实践教学的课程,如果教学内容与现实技术脱节,培养出的学生就无法适应社会的需求。因此,为了提高学生的实践能力,在课程教学内外添加了相应的实践教学环节[5]。
课程教学学期的最后两周作为学生的项目实践时间,在此阶段,学生以项目组为单位完成案例项目的所有功能。项目组由学生自愿组队,以3~5人为宜,并选一个组长管理项目组的研发工作。教师负责答疑,负责定期检查各项目组项目开发的完成情况,并最终选择做得最好的3~5个项目组进行项目展示。
在课程教学外,授课教师一旦完成某个阶段的授课,就将案例项目中与课堂案例相似的模块或功能作为学生的课后作业,如表1“课后项目实践”栏所示。例如,HTML原型阶段的课后作业为提交网上书店系统的静态原型网站,DB设计和可行性分析阶段的课后作业为提交网上书店系统的数据库设计文档和可行性分析报告,DB编码阶段的课后作业为提交网上书店系统的所有持久层代码,动态页面编码阶段的课后作业为用户组管理模块的两层和MVC实现代码。
此外,学院目前已与多家IT企业建立了校企合作基地。在每学期的暑假安排学生直接到合作基地学习;在大四毕业设计期间,安排学生直接到合作基地实习,使学生尽早进入工作角色,通过实习满足企业用人的需求,实习完成后,学生可立即就业。
3 结 语
实践证明,课程改革收到了良好的效果,切实提高了学生的能力和素质,激发了学生的学习兴趣,学生在全国和省内大赛中屡次获奖,毕业生供不应求。
然而,Java Web技术的内容更新快,因此在教学内容和方法上还需不断地探索和改革,加强学生的理论基础,提高学生的实践能力,以期培养出优秀的Java Web技术人才,满足社会的需求。
第一作者简介:张小华,男,讲师,研究方向为人工智能、物联网,137136612@qq.com。
参考文献:
[1]刘向阳, 朱根, 王庆飞. JavaWeb 应用开发技术课程教学改革探索[J]. 福建电脑, 2013(3): 77-78.
[2]冯林, 郑薇薇.“ 任务驱动”与“项目驱动”相结合的创新教育研究 [J]. 黑龙江教育(高教研究与评估版), 2010(4): 57-59.
[3]黄志超. Java web项目开发流程[EB/OL]. (2011-12-08)[2016-12-20]. http://blog.csdn.net/hzc543806053/article/details/7052953.
[4]陳云英. 基于B/S架构的网上书店系统的设计与实现[D]. 成都: 电子科技大学, 2012.
[5]崔军. 回归工程实践: 我国高等工程教育课程改革研究[D]. 南京: 南京大学, 2011.
(编辑: 孙怡铭 )