基于知识图谱的Web程序设计课程教学改革探讨

作者: 陈荣元 唐扬帆 李广琼 黄少年 申立智

摘要:随着互联网技术的快速发展,Web技术不断更新迭代,社会对计算机类人才的需求越来越高。因此,高校在培养学生时不仅要培养其计算思维能力,也要重视学生们在Web程序设计方面的能力。该文利用知识图谱理念,构建基于知识图谱的Web程序设计课程教学方法,从学生的基本知识、专业素养以及综合能力三个角度出发,构建知识图谱,从单一型的教学方式向复合型教学方式转变,摒弃传统教学方式中的缺点与弊端,做到以学生为中心,强化教学效果,力争为社会培养更多经世致用的人才。

关键词:Web程序设计;教学改革;知识图谱

中图分类号:G424        文献标识码:A

文章编号:1009-3044(2023)06-0123-04

开放科学(资源服务)标识码(OSID)

1 当前Web程序设计课程教学存在的主要问题

Web开发技术作为国家信息化、“互联网+”等战略实施的重要手段和技术,在计算机课程体系中占有重要地位[1]。但目前的教学中仍存在以下问题:

(1)课程知识点多且散

Web程序设计课程本身是一门综合性较强的学科,具有“范围广、知识点多、学时少”的特点,所包含的概念和规则较多,比如程序设计之初要了解页面设计、页面布局、控件、对象、数据库等知识。传统授课过程中讲授的理论多、实践少,而这些零散的知识点对学生来说不易上手学习,学习状态处于“碎片化模式”,不易触类旁通地进行理解,很难在实践中灵活运用。Web技术因为其众多的知识点以及日益更新的新技术,要求具备扎实的应用能力[2]。课程设计作业虽然也包含了实验内容,但所占比重较低,并且实验题目相对独立,无法触类旁通,很难提高学生的实际开发水平。

(2)教学模式较单一

当前Web程序设计课程中大多数教学模式还是采用传统教学的单一模式,而传统教学模式由于受时间和空间限制无法满足学习者日益增长的个性化学习需求[3]。传统教学模式在教学内容的组织与教授方面更多属于“填鸭式”教育,一味地向学生灌输课程内容中的知识点,由于相关的知识点比较抽象,很多概念只可在实践中意会,难以在教授中言传,学生作为被动接受的一方,在听课过程中不易做到全程聚精会神,无法完全掌握其核心知识点。对自主学习能力差的学生来说,更是跟不上讲授进度,学习效果差强人意。

综上所述,目前该课程以学生为中心的教学方式还没有完全展开,Web程序设计课程教学仍存在很多问题,需要采取有效措施解决上述问题[4]。本文提出构建Web程序设计课程知识图谱,从以教师讲授为主的单一模式向以网状的知识图谱为核心的多功能教学模式进行转变,突破传统的教学过程,将各个章节的知识点整理归纳,使学生能够系统性地学习,避免因碎片化学习导致的低效率。通过引入案例教学,改进教学模式,利用知识图谱将知识点融会贯通,对知识点进行细分和可视化,使学生能够触类旁通地进行学习,提高学习效率[5]。

2  Web程序设计课程知识图谱的构建

在制定教学目标时,要让学生在今后工作中能够将所学知识学以致用。因此,在教授过程中,要对课程内容总结归纳,使学生具备扎实的理论基础,充分理解Web工作原理,能够在项目中进行实践,在实践过程中熟悉开发平台,使学生不仅能够熟练搭建应用系统运行环境,又会动手设计、维护网站,了解Web项目开发流程并最终熟练使用所学Web技术与开发框架。Web程序设计课程中知识点较多,含有很多易混淆的概念,如何区分这些概念并不简单,因此,可以利用知识图谱理清实际内涵,罗列好相似关键词和概念相近的知识点,把这些思维结构点以网状的形式展示出来,使得知识点与知识点之间的关系更加直观,从而帮助学生判断和比较。本文的基本思想路线如图1所示。

在教学实施过程中,要根据学生实际情况调整方案,根据知识图谱的总揽性与概括性,对Web程序设计课程中的专业知识进行梳理,建立起知识点之间的关系,针对基础薄弱和能力较强的学生布置不同内容的学习任务,引导学生提高自主学习能力。只有学生在学习上的主观能动力不断提高,才能更有效率地学习丰富的知识,从而构建完善的知识框架与体系。对于一些交叉知识和容易混淆的概念,利用知识图谱可以理清知识点之间的联系,避免概念混淆造成的记忆紊乱,从而对整个专业课程有全局的理解,将各章节知识点的脉络梳理清晰。

将知识图谱引入教学过程中,加强学生对基本概念、方法及思想的理解,启发思考、引导探索、逐步培养学生的计算思维能力。转变思维模式,将知识图谱思维融入思维方式的培养中,促进学生对各知识点的理解,使学生能够有更多的思考空间和创新空间,能够以突破式的角度去解决实际应用中的复杂问题。针对Web程序设计实践性、应用性强的特点[6],采用“理论、实践和应用”三合一式教学方法,设置以此三点展开的Web程序设计课程知识图谱。Web程序设计知识体系如图2所示,在构建Web程序设计课程知识图谱中,将知识体系层次化、模块化以及体系化,知识图谱是基于结点之间的语义关系而形成的知识逻辑网络[7],本文从各章节知识点出发,将知识点分为基本知识、专业素养以及综合能力,通过知识图谱,揭示这三个要素间的逻辑与内在联系。其中,基本知识由学习任务中各章节目录及章节下对应的知识点组成,专业素养是对所学知识的巩固,由各知识点对应下的经典案例组成,综合能力是检验学生是否能够将理论知识应用于实践,由学生自己上机做实验的综合实例组成。

3  Web程序设计课程体系架构设计

基于知识图谱的Web程序设计课程体系架构,以章节知识为主体,以基本知识、专业素养和综合能力等为关系,以章节目录知识点为属性。本文基于知识图谱的Web程序设计课程设计原理如下:首先,将Web程序设计课程确定为知识图谱的构建领域;再定义知识图谱的层次结构,本文设置了三个层次结构;根据提取出的所在知识领域的知识概念确定所属层次;然后进一步定义关系模型,确定知识概念之间的关系模型以及关系连接的节点所在层次[8];最后根据定义好的层次类型、关系模型和选取的知识概念构建本课程的知识图谱,以呈现出本课程的专业知识与相关知识点。

以检索JSP基础为例的知识图谱如图3所示:

3.1 Web程序设计课程基本知识体系架构

基本知识模块描述课程包含基本知识点及其关系,利用知识图谱帮助学生建立起完整的Web程序设计知识体系。在学习中,利用知识图谱做好课程的思维导图,打破固化的思维,融会贯通,促进发散思维,帮助学生将零散的知识点条理化和集成化。鼓励学生多独立思考,将不能解决的问题带到课堂中来,教师在帮助解惑的过程中,可以通过知识图谱举一反三到类似的问题,旁征博引与之相关的知识点,帮助学生更透彻地理解知识点,使得理解问题本质的方式从封闭型向开放型转变。由于Web程序设计课程的章节相对抽象和独立,在学习过程中需要教师将各个知识点进行总结与归纳,将抽象、独立的知识点串联起来,启发学生的创造性思维,故利用知识图谱做到章节融合,对各项知识建立有条理的内在联系,有利于后续的整合与改进。

由于传统教学方式主要是按照教材讲解知识点与技术点,教学方法往往枯燥无味,因此,要在实际教学中改变传统的教学方式,要善于抓住难点、重点,将抽象的概念可视化。利用知识图谱中的知识点具有相关性与可视化的特点,可以在课堂上通过回顾旧知识来讲解新知识,采用循序渐进、由点见面、由浅入深的教学方式,以面向知识图谱的方式做好问题导入,突出所学书面知识与程序实际操作中涉及的技术点的关联性,带领学生攻克难关,激发学生的主观能动性。培养学生形成独立思考、主动学习的良好习惯,并在学习中不断地发现问题、解决问题的过程中获得更多有效的学习成果。

3.2 Web程序设计课程专业素养能力的培养

专业素养模块是为了巩固学习成果而设置的案例教学步骤,由于Web程序设计课程相关的技术内容涉及广泛,在教学过程中,应该在完整的Web程序设计知识体系基础上,从全局理解课程精髓,不只是将学习停留在基础知识上,而是时刻关注行业发展,关注与领域相关的技术更新,掌握前沿动态,对所学知识进行扩展,根据前沿领域的发展引入案例教学,对教学内容进行动态更新与调整,在规定的授课计划中增加对创新技术的培养,引导学生掌握新旧知识的联结,抓住技术革新的重点,在奠定学生技术基础的同时,增加新知识的补充,加重课堂教学的可持续性。

利用知识图谱也可以帮助培养学生分析和理解问题的能力,将一些经典案例囊括进知识图谱中,使得学生可以通过知识图谱的网状结构,找到问题中的组成要素,进入相关领域进行学习,并理清要素间的关系,综合各个知识点进行思考以解决问题。运用经典的精选案例进行教学示范,选取来源于实际应用中的丰富案例,帮助学生更透彻地理解其原理,进而提高学生的学习兴趣,能够在实际操作过程中对重点难点把握得更精准,有效地提高学习效率。因此,在知识图谱中引入专业素养模块,使得学生能够通过相关案例加强学习,从众多案例资源中快速了解相关技术与知识点,提高学习效率与自身的专业素质。

3.3 Web程序设计课程综合能力的培养

综合能力则要求学生能够将理论知识应用于实际项目中,巩固基础知识,加强专业素养。Web程序设计不仅要掌握相关理论知识,更要有很强的实践能力,以“应用”为主旨和特征构建教学体系,加强针对性和实用[9],提升学生的综合适应性,故要强化综合应用教学,在课程教学中加入实践环节,提高学生的动手能力。让学生对所学Web程序设计知识进行系统化的训练,进而提高自己的综合应用水平。结合理论知识与实践,运用理论知识解决实际问题。针对开发流程布置实训项目,如网站需求分析、概要设计、详细设计等,组织学生成立项目组,选择感兴趣的模块进行实践,自行进行任务分工,合作互助,共同完成项目。在项目实训过程中,引导学生利用所学知识解决问题,深化自己的编程技术,提高自身学习能力与创新能力。在课堂教学过程中,以项目为载体,以问题为驱动,通过知识图谱罗列的知识点之间的逻辑关系,将不同层级间的要素逻辑关系梳理清晰,从而一步步解决核心问题,完成项目任务[10]。

从实践教学的角度,加强理论与实践的衔接,综合能力模块是很有必要的。通过项目实训,培养学生的创新思维与综合能力,在完成实践学习后,教师总结实践过程中遇到的问题,并在课堂上对其进行分析讲解,根据知识图谱中的相关技术要点运用联想、归纳等策略解决实际问题。通过分析实际项目案例,对程序中涉及的语法结构进行讲解,在重点剖析过程中深入浅出,有的放矢地帮助学生解决问题,提高学习效率。在实践教学过程中因材施教,针对基础薄弱的学生,可以使其反复练习基础学习任务,再逐渐提高任务难度,以确保学生对知识点的掌控能力。根据学生感兴趣的项目方向,利用知识图谱找到相关的项目实例,使学生的学习从被动型向主动型转变,激发学生的积极性和创造性。在上机实验过程中,鼓励学生遇到问题首先要尝试自己解决,在此过程中联系知识图谱体系中基础知识模块中的理论部分,耐心地对问题进行跟踪、调试与测试,在解决问题的过程中加深对所学知识点的理解,通过使用Web程序设计课程知识图谱促进学生的逻辑思维,使得学生不仅能掌握Web程序设计课程的理论知识,也能很好地应用于实际,为未来项目的开发奠定坚实基础。

4  基于知识图谱的Web程序设计课程改革实践

对Web程序设计课程进行教学改革实践后,在头歌(EduCoder)实践教学平台中对本校计算机科学与技术专业与软件工程专业共242名学生进行了教学效果调查,从通关率、学习效率、能力值、平均通关时间以及实训成绩等情况进行考量。

图4为选取Web程序设计课程的前9个实训关卡的通关率对比,基于知识图谱的教学方式使通关率提升了约29%;图5为在实训过程中的学习效率对比,学习效率=log(实训总得分/实训总耗时);图6为学生的能力值对比,能力值=实训获得经验值/实训测评次数;表1为通过实训关卡的平均时间对比;图7为学生的实训成绩分布,从图表中的数据可以看到,基于知识图谱的教学方式在降低时间耗费的同时使得通关率、学习效率、能力值与学习效率均有所提高。

上一篇 点击页面呼出菜单 下一篇