Java Web应用开发课程目标的研究与设定
2018-06-01李永飞郭晓欣
李永飞,郭晓欣
(华北科技学院 计算机学院,河北 廊坊 065201)
1 背 景
Java Web应用开发是一门关于Web应用开发方法和基本开发技能的专业课,很多应用型本科院校的计算机类专业都在开设。目前在该课程的教学中存在一些问题,例如教师在教学过程中以基础语法知识为主要教学内容,学生在完成课程学习之后不能完成简单的项目开发,甚至有部分学生选择参加社会培训重新学习相关内容等[1-2]。这些问题的存在说明该课程的教学模式和教学方法还存在不足之处。
课程目标确定了一门课程教与学的具体目标和意图,它规定了学生通过一门课程的学习之后应当达到的结果[3]。在课程目标确定之后,课程的教学内容、教学方法、考核要求、教学条件等才有所依据。但是,在目前的教学实践中,无论是教师还是学生,都普遍存在由于课程目标不够明确,以致影响课程教学效果的现象。
2017年8月,笔者参加了中国计算机学会在北京举办的计算机课程改革导教班。在陈道蓄教授的“计算机问题求解”课程中,接触到一种全新的教学理念,特别是其中关于课程目标的设计思路让我受益匪浅。
2 课程目标的分层设定
2.1 课程目标的分解
陈道蓄教授在导教班中系统介绍了南京大学计算机学院开设的“计算机问题求解”这门课程。该课程整合了计算机导论、程序设计基础、离散数学、数据结构和算法设计与分析等多门传统意义下的计算机专业基础课程,分4个学期开设。其课程目标被分解为意识、知识、能力和技能4个方面。具体内容如下[4]:①意识方面:建立在计算机科学领域持续追求效率更高、质量更好的算法的创新意识。②知识方面:掌握能支持在计算机科学领域进行探索所需的离散数学、问题建模、数据抽象、算法设计与分析、算法复杂性理论等方面的基础知识。③能力方面:具备分析问题,并采用一定策略进行算法设计的能力,并能对算法进行基本分析的能力;具备自我探索学习,并凝练问题的能力。④技能方面:掌握熟练使用C++语言及其开发环境, 实现能正确运行的程序的技能。
笔者认为,相较于传统教学观念中把知识传递作为主要课程目标的理解,这里从4个方面对课程目标给出了更为全面的描述,也更加符合计算机专业基础课程的实际需要。
2.2 课程目标的层次性和递进性
陈老师的“计算机问题求解”课程目标设定是服务于学术型本科的人才培养目标,同时也是针对计算机专业基础课程。对于应用型本科的编程技能类专业课,也可以从上述4个方面来设定课程目标,而且在4个方面之间存在层次依赖的关系,如图1所示。
图1 课程目标的层次依赖关系
首先,知识传递是课程教学的基础。知识传递在传统教学观念中是主要任务,甚至是唯一内容。在新的课程目标中,知识传递的重要性仍然不容忽视,它是实现其他目标层次的必要支撑条件。
其次,技能训练是课程教学的手段。对于应用型本科而言,其办学方向是面向行业培养应用能力较强的实用型人才[5]。是否掌握了必要的专业技能是衡量应用型本科办学效果的一个重要标准。同时,技能训练也构成课程目标中的另一个基础支撑。
再次,能力培养是课程教学的目的。通过课程学习,使学生具备应用专业技术在某一特定领域解决实际问题的能力,这正是应用型本科的应有之义,而能力培养需要基于知识传递和技能训练来实现。
最后,意识养成是课程教学的追求。如果学生能够在具备专业能力的基础上,通过多门专业课程的学习,逐渐培养和积累专业意识。在实际工作和日常生活中,能够适时地想到应用所掌握的专业技术来解决所遇到的现实问题,这才是真正成功的专业教育,而意识的养成是在能力培养过程中实现的。
3 “Java Web应用开发”课程目标的设定原则
前面分析了为应用型本科的编程技能类专业课设定课程目标时,可以采用分层的思想。这里针对“Java Web应用开发”课程,提出设定课程目标时应当遵守的几条原则。
3.1 重新定位课堂教学与实验教学的关系
传统的专业课实验是对课堂讲授的理论知识进行简单的验证或应用。课程实验中做什么内容取决于课堂教学中讲了什么内容,所以实验教学是为理论教学服务的。但是对于以培养编程技能为主要任务的专业课来说,学生更多的是要通过上机实验来获得技能训练和对知识的深入理解。因此,需要对课堂教学与实验教学的关系进行重新定位。
笔者认为,“Java Web应用开发”课程中的课堂教学应该为实验教学服务。课堂上讲什么内容取决于实验教学中要做什么、要用到哪些知识来选择,因为实验教学环节才是支持学生完成技能训练、实现能力培养的主要途径。
3.2 教学内容要做合理取舍
“Java Web应用开发”课程所涉及的知识点比较庞杂,系统性不强。在确定课程目标的知识层面需要包含哪些内容时,不能简单地罗列照搬教材中的知识点,而是应该根据实验任务的需要,对教学内容做适当地剪裁,不要一味求多求全。在掌握了主干内容之后,其他知识点可以由学生自学,教师在必要时给予一定的指导。
另外,还要找出各知识点内在的逻辑关系,梳理出相应的知识图谱,这样有助于学生了解相关技术体系的全貌,为在课程结束后进一步深入学习打好基础。
3.3 针对不同的学生分档设立学习目标
课程目标是一门课程的教学意图。由于学生在先修课程学习、专业发展方向、个人能力以及兴趣志向等方面的条件和追求各不相同,在专业课学习中,要求所有学生达到统一的标准事实上是不可能也是没有必要的。应当为学生设立不同档次的学习目标,这样照顾到不同类别的学生,让所有人都能学有所得,避免基础较差或志不在此的学生完全放弃本门课程的学习。
基于前述课程目标的4个层次,可以为学生设立3个不同档次的学习目标。初级目标是掌握课程涉及的专业知识和基本技能;中级目标是培养相应的专业能力;高级目标是养成课程对应的专业意识,不但给好学生以前进的方向,也要给差生留出路。
4 “Java Web应用开发”课程目标设定
基于前述的分层思想及相关原则,这里为“Java Web应用开发”设定新的课程目标。
(1)知识层面:掌握Java Web应用开发涉及的主要知识点,包括JSP基础、Java Bean、JDBC、EL和JSTL、Servlet、MVC设计模式以及AJAX等。这里只给出了完成课程上机实验需要用到的知识点,其余的相关知识点不再列入课程目标。同时,为学生提供涵盖所有知识点的知识图谱,作为学习参考。
(2)技能层面:熟练掌握Web应用中数据传递和流程控制的各种实现机制、数据库操作的实现、面向对象开发技术、常用组件的使用方法以及基于MVC的开发模式等。课程重点是训练学生掌握完成Web应用开发所需要的基础编程技能。
(3)能力层面:具备根据用户需求说明书,进行设计和实现满足所需功能的Web应用程序的能力;具备针对实际问题查找资料并自主学习的能力。通过任务驱动的形式,以完成一个完整的应用开发作为课程教学主线,以期实现Web应用开发能力的培养。
(4)意识层面:建立面对现实应用需求,通过编程解决实际问题的Web应用软件工程师意识。
5 结 语
课程目标是一门课程教与学的总任务,决定了课程教学的其他环节如何组织和设计。我们通过对课程目标进行层次性分解,并研究了课程教学中课堂与实验的关系定位,为学生设立不同档次的学习目标,以“Java Web应用开发”课程为例,设定了新的课程目标。下一步计划对编程技能类课程的考核方式进行研究,希望能够从学习效果着手来促进教学效果的改善。
[1] 孙素华. 应用型本科程序设计类课程教学改革研究[J]. 教育与职业, 2012(36): 146-147.
[2] 李永飞, 赵巧芳. 技能型课程教学模式的设计[J]. 中国电力教育, 2012(20): 61-62.
[3] 高孝传. 课程目标研究[M]. 北京: 教育科学出版社 2001.
[4] 陈道蓄, 陶先平, 钱柱中, 等. 重组计算机专业基础课程, 促进学生能力培养[J]. 计算机教育, 2012(23): 2-5.
[5] 王青林. 关于创新应用型本科人才培养模式的若干思考[J]. 中国大学教学, 2013(6): 20-23.