论文部分内容阅读
摘 要:本文结合“Web程序设计”课程特点,讨论项目驱动教学所存在的问题,提出了以原型框架系统辅助教学的方法。进一步阐述原型框架系统对任务驱动法、学导式教学与案例法等其他多种教学方法的辅助作用。最后,总结了应用原型框架系统的教学注意事项。
关键词:原型框架系统;任务驱动教学法;Web程序设计
中图分类号:TP311.11文献标识码:B文章编号:1673-8454(2010)07-0061-03
一、引言
Web应用系统开发是当前软件领域的流行模式,广泛应用于电子商务、电子政务、远程教育等各个行业。2000年以来,高等院校陆续开设“Web程序设计”课程,该课程实用性强,是一门交叉课程,涉及的语法、规则繁琐,传统程序语言设计课程偏重语法讲授的方法,不适合该课程的教学。笔者结合自身的教学实践和经验总结,探索出一种在原型框架系统支持下,结合任务驱动、学导式和案例法等多种教学法的“Web程序设计”综合教学方案。该方案经实践检验,效果显著。
本文先对“Web程序设计”课程的特点进行总结,指出该课程教学存在的一些问题;然后结合笔者的教学实践,重点介绍利用原型框架系统开展“Web程序设计”课程教学的方法及实践过程。
二、课程特点与存在的问题
“Web程序设计”是一门交叉课程,其先修课程包括:软件工程、网络技术、数据库技术、程序语言设计、数据结构等。仅从程序语言设计来看,“Web程序设计”就涉及JSP/ASP服务端技术、HTML语言、脚本语言(JavaScript/ VBScript)、CSS以及XML等多种技术。可见该课程的学习难度颇大。从时间来看,该课程一般大三或大四开设,学时偏少(一般为32到36学时)而内容却繁多,更加大了教学难度。因此,该课程适合采用“学导式”教学法,以教师为主导,以学生为主体,使学生由内而外地自主探索,通过自学掌握和深化课程知识。[1]
另一方面,“Web程序设计”是工程实践性很强的课程,除了讲授程序设计还要讲授项目开发,训练学生使用计算机技术解决实际问题、构建应用系统的能力。在传统的以教师讲授为主、偏重语法规则的教学方法下,常常是学生上课听得懂,下课却编不了程序,更不用说具备项目经验了。这样的学生用人单位不满意,也不符合本课程的培养目标。因此,该课程一般采用“项目驱动教学法”,提倡以一个完整的软件开发项目贯穿整个教学过程的始终,以项目的构建过程为线索安排教学步骤,教学过程由项目的任务驱动。[2][3]
但是本课程实施项目驱动教学法,有两个操作层面的问题必须高度重视:第一是项目规模要适中。选择一个合适的项目是项目驱动教学法的关键所在。该项目必须涵盖教学的大部分知识,能够引起学生的兴趣,还得规模适中。规模太小的话达不到锻炼学生工程实践能力的效果。而由于Web应用开发涉及语言种类繁多,规模太大则容易让学生感到无从下手,也会加大教师的指导难度。第二是存在偏重技术实现而忽视工程方法训练的问题。目前,项目驱动教学实践中偏向于利用项目为主线,来驱动具体知识点和技能的教学,而往往忽视了软件工程方法的教学(如对项目文档维护不做要求)。这与项目驱动教学法的精神相违背,也无法培养出具备合格职业素养的学生。
针对上述问题,我们采用原型框架系统辅助项目驱动教学的方法,取得了较好的教学效果。下面介绍原型框架系统的定义及其辅助作用。
三、原型框架系统辅助实施项目驱动教学法
所谓原型框架系统是指在项目驱动教学法中对应于所选项目所实现的原型系统,该系统具备如下三个特征:
(1)系统可运行。
(2)系统是半成品,是对项目的部分实现:其中某些模块已完全实现;某些功能部分实现,需要进一步完善;还有一些功能完全没有实现。
(3)系统除了程序代码还包括《系统需求说明书》与已编码部分的《详细设计说明书》。
我们在实施项目驱动教学时,根据所选项目事先开发出原型框架系统,并在教学初期分发给学生,之后项目的开发都是在此基础上的增量开发。这种原型框架系统辅助的项目驱动教学避免了上述的项目规模矛盾,其主要创新是在完整的项目背景下只须完成部分功能开发,改变了以往“要么全部重新实现,要么全不涉及”的认识误区。这样既能给学生一个完整的项目开发体验,又只需实现部分功能,且具有部分可参考的功能实现,大大增强了学生完成项目开发的信心。除了提供程序代码,我们还提供配套的开发文档,在项目驱动教学中把文档维护和系统测试作为重要任务进行评价,向学生灌输相关的项目管理思想和工程方法。
以我们教研组某学期的课程教学为例,笔者选取“个人博客系统”项目,实现了一个原型框架系统,其概要如表所示。
四、结合原型框架系统开展多样化教学
“Web程序设计”课程的特点决定了其教学方法的多样性。教学实践中除了项目驱动教学法,我们还根据教学内容和目标,综合应用了任务驱动、学导式教学与案例法等多种方法。
如图所示,综合教学法是在原型框架系统的支持下开展的。下面以“个人博客系统”为例,通过举例展示原型框架系统与其他教学法的结合方式。
1.与任务驱动法结合
任务驱动法将教学内容设计到一个个小而独立的任务中,通过有层次地推进任务来由浅到深地完成课程教学。例如:
任务1:学习原型框架系统中用户注册模块中实现字段验证功能的JavaScript脚本代码,并修改“电话”字段的验证逻辑,使其识别7位和8位的电话号码。
思考:要学生回答JavaScript脚本什么情况下在客户端执行,除了验证还可以执行其他功能吗?能否在脚本中向服务端请求数据?可以的话响应数据应该如何处理?
任务2:使用Ajax技术,为用户登录功能增加自动完成效果。
任务驱动法的设计要注意任务之间的关联性以及先后次序,同时在完成任务后要引导学生进行总结和深入思考。例如,任务1的思考题,为任务2中Ajax技术的引入提供了很好的准备。
2.与学导式教学法结合
学导式教学法的核心是启发式教育,是学生在教师指导下进行自学的一种教学方法,强调学生的主动探索和自学,包括“自学—解疑—精讲—演练”四个环节。[4]例如:
导出问题:在演示原型框架系统时,发现某个博文有乱码,而其他博文正常显示。通过测试,发现语言为英文时博文都正常,而中文的博文都显示乱码。引出Web开发“中文乱码问题”。
布置自学:要求学生研究中文乱码的原因,并解决原型框架系统的中文乱码问题。
释疑精讲:回答学生自学中的疑问,并总结中文乱码的多种解决方法,并与学生的方法进行比较,注意肯定学生的方法。
演练巩固:要求学生将教师讲授的中文乱码解决方法应用到原型框架中去。
有了原型框架系统,教师能够通过系统演示及事先设计好的缺陷,引导学生观察、发现问题,激发学生自学和探索知识的学习热情。从实际系统引出问题更有代表意义,还能锻炼学生发现问题、解决问题的能力,这种学导式教学将更为有效。
3.与案例教学法结合
例如,在“JDBC数据库访问技术”一章的教学中,我们以原型框架系统的“用户管理”为典型案例,分析该模块的实现步骤、存在不足等,讲解数据库的增加、删除、修改等操作;引导学生学习其中的数据库操作类封装、JavaBean应用以及逻辑验证等实现细节;然后要求学生模仿“用户管理”,实现一个“博文类别维护”功能(即类别的增、删、改功能),并利用连接池技术对数据库操作代码进行改写。
通过原型框架系统,我们可以结合教学的知识体系,更有针对性地开发一些典型实例,在教学过程中作为案例来学习。
五、原型框架系统的教学注意事项
1.提供一个设计合理、实现优美的原型框架系统是课程教学成功的关键。原型框架系统的选取和开发要遵循如下几个原则:
(1)完整性原则,所选项目的功能(包括已实现和未实现功能)必须较为完整,能够给学生真实的项目开发体验;
(2)示范性原则,代码设计要高效、算法优美、编码风格要规范,为学生提供编码实现的范例;
(3)可利用原则,便于结合教学知识体系进行实现,便于讲解;
(4)可扩展原则,包括功能扩展和性能优化,必须设计一定数量的未实现功能供学生独立完成,以驱动教学任务的实施,还应该有一定自由发挥空间,以便学生发挥创造力。
2.项目文档是原型框架系统的重要组成,必须与代码一起提供给学生。学生修改原型系统的时候必须同步维护文档,保持文档与实际系统一致,这种与实际开发尽可能一致的实践教学环节,可以帮助培养学生的职业素养。
3.原型框架系统任务设计时应该重视基本技能的积累。例如,用户注册、登录,数据库操作,文件上传等是Web应用的基本模块。把基本技能、常用组件、基本模块等合理分布到原型框架系统各模块中,通过分步骤教学、逐渐积累的方法来提高学生的编程动手能力。
4.原型框架系统的开发可作为毕业设计题目由高年级学生实现,也可由教师与学生合作开发。一个优秀的原型框架系统往往需要经过几个学期教学实践的积累与完善。
六、结束语
本文是笔者在“Web程序设计”教学实践中的经验总结,原型框架系统能够辅助项目驱动、任务驱动、学导式、案例法等多种教学法的开展,取得令人满意的效果。目前,我们只能给出原型框架系统辅助作用的定性结论,今后我们将结合定性与定量的方法,进一步探讨原型框架系统在教学实践中的利弊。?筅
参考文献:
[1]刘玉.实用学导式教学法的实践与认识[J].教育探索,2003(12).
[2]李庆武.项目教学法在课程教学中的运用探讨[J].教育探索,2008(4).
[3]罗凌.基于项目驱动的“ASP.NET程序设计"课程创新教学法研究[J].计算机教育,2009(13):134-136.
[4]张大生,刘学浩.再谈学导式教学法[J].中国教育学刊,2009(8).
(编辑:杨馥红)
关键词:原型框架系统;任务驱动教学法;Web程序设计
中图分类号:TP311.11文献标识码:B文章编号:1673-8454(2010)07-0061-03
一、引言
Web应用系统开发是当前软件领域的流行模式,广泛应用于电子商务、电子政务、远程教育等各个行业。2000年以来,高等院校陆续开设“Web程序设计”课程,该课程实用性强,是一门交叉课程,涉及的语法、规则繁琐,传统程序语言设计课程偏重语法讲授的方法,不适合该课程的教学。笔者结合自身的教学实践和经验总结,探索出一种在原型框架系统支持下,结合任务驱动、学导式和案例法等多种教学法的“Web程序设计”综合教学方案。该方案经实践检验,效果显著。
本文先对“Web程序设计”课程的特点进行总结,指出该课程教学存在的一些问题;然后结合笔者的教学实践,重点介绍利用原型框架系统开展“Web程序设计”课程教学的方法及实践过程。
二、课程特点与存在的问题
“Web程序设计”是一门交叉课程,其先修课程包括:软件工程、网络技术、数据库技术、程序语言设计、数据结构等。仅从程序语言设计来看,“Web程序设计”就涉及JSP/ASP服务端技术、HTML语言、脚本语言(JavaScript/ VBScript)、CSS以及XML等多种技术。可见该课程的学习难度颇大。从时间来看,该课程一般大三或大四开设,学时偏少(一般为32到36学时)而内容却繁多,更加大了教学难度。因此,该课程适合采用“学导式”教学法,以教师为主导,以学生为主体,使学生由内而外地自主探索,通过自学掌握和深化课程知识。[1]
另一方面,“Web程序设计”是工程实践性很强的课程,除了讲授程序设计还要讲授项目开发,训练学生使用计算机技术解决实际问题、构建应用系统的能力。在传统的以教师讲授为主、偏重语法规则的教学方法下,常常是学生上课听得懂,下课却编不了程序,更不用说具备项目经验了。这样的学生用人单位不满意,也不符合本课程的培养目标。因此,该课程一般采用“项目驱动教学法”,提倡以一个完整的软件开发项目贯穿整个教学过程的始终,以项目的构建过程为线索安排教学步骤,教学过程由项目的任务驱动。[2][3]
但是本课程实施项目驱动教学法,有两个操作层面的问题必须高度重视:第一是项目规模要适中。选择一个合适的项目是项目驱动教学法的关键所在。该项目必须涵盖教学的大部分知识,能够引起学生的兴趣,还得规模适中。规模太小的话达不到锻炼学生工程实践能力的效果。而由于Web应用开发涉及语言种类繁多,规模太大则容易让学生感到无从下手,也会加大教师的指导难度。第二是存在偏重技术实现而忽视工程方法训练的问题。目前,项目驱动教学实践中偏向于利用项目为主线,来驱动具体知识点和技能的教学,而往往忽视了软件工程方法的教学(如对项目文档维护不做要求)。这与项目驱动教学法的精神相违背,也无法培养出具备合格职业素养的学生。
针对上述问题,我们采用原型框架系统辅助项目驱动教学的方法,取得了较好的教学效果。下面介绍原型框架系统的定义及其辅助作用。
三、原型框架系统辅助实施项目驱动教学法
所谓原型框架系统是指在项目驱动教学法中对应于所选项目所实现的原型系统,该系统具备如下三个特征:
(1)系统可运行。
(2)系统是半成品,是对项目的部分实现:其中某些模块已完全实现;某些功能部分实现,需要进一步完善;还有一些功能完全没有实现。
(3)系统除了程序代码还包括《系统需求说明书》与已编码部分的《详细设计说明书》。
我们在实施项目驱动教学时,根据所选项目事先开发出原型框架系统,并在教学初期分发给学生,之后项目的开发都是在此基础上的增量开发。这种原型框架系统辅助的项目驱动教学避免了上述的项目规模矛盾,其主要创新是在完整的项目背景下只须完成部分功能开发,改变了以往“要么全部重新实现,要么全不涉及”的认识误区。这样既能给学生一个完整的项目开发体验,又只需实现部分功能,且具有部分可参考的功能实现,大大增强了学生完成项目开发的信心。除了提供程序代码,我们还提供配套的开发文档,在项目驱动教学中把文档维护和系统测试作为重要任务进行评价,向学生灌输相关的项目管理思想和工程方法。
以我们教研组某学期的课程教学为例,笔者选取“个人博客系统”项目,实现了一个原型框架系统,其概要如表所示。
四、结合原型框架系统开展多样化教学
“Web程序设计”课程的特点决定了其教学方法的多样性。教学实践中除了项目驱动教学法,我们还根据教学内容和目标,综合应用了任务驱动、学导式教学与案例法等多种方法。
如图所示,综合教学法是在原型框架系统的支持下开展的。下面以“个人博客系统”为例,通过举例展示原型框架系统与其他教学法的结合方式。
1.与任务驱动法结合
任务驱动法将教学内容设计到一个个小而独立的任务中,通过有层次地推进任务来由浅到深地完成课程教学。例如:
任务1:学习原型框架系统中用户注册模块中实现字段验证功能的JavaScript脚本代码,并修改“电话”字段的验证逻辑,使其识别7位和8位的电话号码。
思考:要学生回答JavaScript脚本什么情况下在客户端执行,除了验证还可以执行其他功能吗?能否在脚本中向服务端请求数据?可以的话响应数据应该如何处理?
任务2:使用Ajax技术,为用户登录功能增加自动完成效果。
任务驱动法的设计要注意任务之间的关联性以及先后次序,同时在完成任务后要引导学生进行总结和深入思考。例如,任务1的思考题,为任务2中Ajax技术的引入提供了很好的准备。
2.与学导式教学法结合
学导式教学法的核心是启发式教育,是学生在教师指导下进行自学的一种教学方法,强调学生的主动探索和自学,包括“自学—解疑—精讲—演练”四个环节。[4]例如:
导出问题:在演示原型框架系统时,发现某个博文有乱码,而其他博文正常显示。通过测试,发现语言为英文时博文都正常,而中文的博文都显示乱码。引出Web开发“中文乱码问题”。
布置自学:要求学生研究中文乱码的原因,并解决原型框架系统的中文乱码问题。
释疑精讲:回答学生自学中的疑问,并总结中文乱码的多种解决方法,并与学生的方法进行比较,注意肯定学生的方法。
演练巩固:要求学生将教师讲授的中文乱码解决方法应用到原型框架中去。
有了原型框架系统,教师能够通过系统演示及事先设计好的缺陷,引导学生观察、发现问题,激发学生自学和探索知识的学习热情。从实际系统引出问题更有代表意义,还能锻炼学生发现问题、解决问题的能力,这种学导式教学将更为有效。
3.与案例教学法结合
例如,在“JDBC数据库访问技术”一章的教学中,我们以原型框架系统的“用户管理”为典型案例,分析该模块的实现步骤、存在不足等,讲解数据库的增加、删除、修改等操作;引导学生学习其中的数据库操作类封装、JavaBean应用以及逻辑验证等实现细节;然后要求学生模仿“用户管理”,实现一个“博文类别维护”功能(即类别的增、删、改功能),并利用连接池技术对数据库操作代码进行改写。
通过原型框架系统,我们可以结合教学的知识体系,更有针对性地开发一些典型实例,在教学过程中作为案例来学习。
五、原型框架系统的教学注意事项
1.提供一个设计合理、实现优美的原型框架系统是课程教学成功的关键。原型框架系统的选取和开发要遵循如下几个原则:
(1)完整性原则,所选项目的功能(包括已实现和未实现功能)必须较为完整,能够给学生真实的项目开发体验;
(2)示范性原则,代码设计要高效、算法优美、编码风格要规范,为学生提供编码实现的范例;
(3)可利用原则,便于结合教学知识体系进行实现,便于讲解;
(4)可扩展原则,包括功能扩展和性能优化,必须设计一定数量的未实现功能供学生独立完成,以驱动教学任务的实施,还应该有一定自由发挥空间,以便学生发挥创造力。
2.项目文档是原型框架系统的重要组成,必须与代码一起提供给学生。学生修改原型系统的时候必须同步维护文档,保持文档与实际系统一致,这种与实际开发尽可能一致的实践教学环节,可以帮助培养学生的职业素养。
3.原型框架系统任务设计时应该重视基本技能的积累。例如,用户注册、登录,数据库操作,文件上传等是Web应用的基本模块。把基本技能、常用组件、基本模块等合理分布到原型框架系统各模块中,通过分步骤教学、逐渐积累的方法来提高学生的编程动手能力。
4.原型框架系统的开发可作为毕业设计题目由高年级学生实现,也可由教师与学生合作开发。一个优秀的原型框架系统往往需要经过几个学期教学实践的积累与完善。
六、结束语
本文是笔者在“Web程序设计”教学实践中的经验总结,原型框架系统能够辅助项目驱动、任务驱动、学导式、案例法等多种教学法的开展,取得令人满意的效果。目前,我们只能给出原型框架系统辅助作用的定性结论,今后我们将结合定性与定量的方法,进一步探讨原型框架系统在教学实践中的利弊。?筅
参考文献:
[1]刘玉.实用学导式教学法的实践与认识[J].教育探索,2003(12).
[2]李庆武.项目教学法在课程教学中的运用探讨[J].教育探索,2008(4).
[3]罗凌.基于项目驱动的“ASP.NET程序设计"课程创新教学法研究[J].计算机教育,2009(13):134-136.
[4]张大生,刘学浩.再谈学导式教学法[J].中国教育学刊,2009(8).
(编辑:杨馥红)