探析AJAX在思维导图辅助系统的应用
2020-03-15梁小鸥
梁小鸥
(广东工程职业技术学院,广州 510520)
0 引言
思维导图作为一种知识管理工具,将抽象的知识通过知识网络图的形式呈现出来,使各个知识之间的结构关系一目了然。思维导图辅助系统是针对思维导图绘制的过程,将其关键字的概念、拓展进行提示而开发的系统。本文就AJAX在开发思维导图学习辅助系统中的应用进行阐述。
1 思维导图概述
20世纪60年代英国著名心理学家托尼·巴赞创立了一种新的笔记方法:思维导图,后来逐渐发展成为一种思维工具和学习方法。思维导图通过绘图的方式将思维过程可视化,以知识网络的形式呈现出来,加深印象的同时又能全面掌握知识的整体架构。
2 AJAX技术
AJAX(Asynchronous JavaScript and XML)即异步的JavaScript和XML,是使用JavaScript和XML实现异步数据传输的技术。AJAX并不是新的技术,而是CSS、XHTML、DOM、JavaScript、XMLHttpRequest等技术的组合。在无需重新加载整个网页的情况下,通过AJAX异步调用的方式向服务器传送数据,再从服务器取得数据,从而实现对网页局部进行更新的功能。AJAX在减轻服务器负担的同时,使客户端无需等待服务器返回结果,便可继续进行别的请求,节省了时间并提高了效率。
AJAX的工作原理是在客户端和服务器之间加了—个中间层(AJAX引擎),使用户操作与服务器响应异步化,如图1所示。当用户向服务器请求进行数据交互时,部分数据可以交给AJAX引擎来处理,只有必须从服务器读取的新数据才由AJAX引擎代向服务器进行数据交互,服务器也只需返回这部分的处理结果。JavaScript中专门负责异步调用,与服务器通信的这部分程序,我们称之为AJAX引擎。
图1 AJAX工作原理图
3 思维导图辅助系统中AJAX技术的应用
3.1 思维导图辅助系统的介绍
思维导图辅助系统是对用户输入的某个知识点进行的知识拓展,从而辅助完成思维导图的绘制。思维导图知识点的拓扑图绘制,分为知识点的向右拓展和向左拓展两种方向。向右拓展是指:对当前知识点再次划分延展所得知识点,即生成子节点,显示在思维导图中当前知识点的右侧;向左拓展是指:对当前知识点总结归纳所得知识点,显示在思维导图中当前知识点的左侧,即生成父节点。为了保证思维导图的可读性,每个知识点的父节点只能选一个。具体思维导图辅助系统绘制效果如图2所示。
图2 思维导图辅助系统绘制效果图
思维导图辅助系统采用了MVC架构,通过模型(model)、视图(view)、控制器(controller)将业务逻辑、数据、界面显示分离,其中视图和控制器包含在业务应用层,模型包含在数据层。通过MVC模式使得控制器和视图各自的功能划分清晰,降低了模型、控制器、视图之间的耦合度,提高了系统代码的可重用性和开发效率。
思维导图辅助系统重点在于知识点的拓扑图绘制和知识点的拓扑提示两个部分,所涉及的数据表主要是思维导图结构表tb_mind和思维导图数据表tb_data,其表结构分别如表1、表2所示。
表1 思维导图绘制结构表tb_mind
表2 思维导图基础数据表tb_mind
3.2 思维导图辅助系统中AJAX的应用
在思维导图绘制过程中,用户可以选中某个知识点后对其进行向右或向左拓展,思维导图辅助系统则会对当前知识点进行拓展提示。例如图2中,用户针对“网络互连设备”知识点选择向左拓展提示进行参考,系统则会在思维导图基础数据表(tb_data)中将该知识点的父节点名称查询出来,在页面左下方为用户进行提示,AJAX引擎在其中完成数据间的交互工作。主要代码如下:
向左拓展提示中的某个选项被选中后,思维导图绘制结构表(tb_mind)会马上更新其相关信息,思维导图辅助系统呈现的绘制内容也会随之变更,主要代码如下:
4 结语
从思维导图辅助系统的设计中可以看出,AJAX技术在绘制思维导图过程中发挥了数据交互传输的优势,在无需等待的情况下,采用异步方式进行数据传输,将知识点的拓展提示、概念解释等信息即时展现给用户,避免了传统用表单form方法把整个页面进行提交的过程,提升了用户体验,节省了网络带宽和网络资源,使得思维导图辅助系统更轻便、简洁。