首页 > 范文大全 > 正文

面向计算机科学的离散数学网站的设计和实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇面向计算机科学的离散数学网站的设计和实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:离散数学是计算机专业最重要的基础课程之一,也是最难学好的课程之一。为适应计算机技术发展的潮流,我们总结了多年的教学经验,对离散数学课程改革做了初步的尝试,力图把计算机专业的离散数学建设为“面向计算机科学离散数学”,针对教学中的薄弱环节建立了教学支撑网站。网站的实现使用了当今的主流技术,如XSQL、XSLT,JavaScript、OpenJMS等等。

关键词:离散数学;教学网站;面向计算机科学;XSQL;XSLT;OpenJMS

中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)17-31243-02

Discrete Mathematics Dedicated to Computer Science and the Design and Implement of its Supporting Website

ZHANG Yu,ZHANG Jiong-min

(Computer Science and Technology Department, East China Normal University, Shanghai 200062, China)

Abstract: Discrete Mathematics is one of the most important basic courses in computer science. For most students majoring in computer science, the course is among those most difficult ones. In order to accommodate the course to the development of computer science, we tried to renovate the course, making it computer science dedicated. In addition, we built a course supporting website, using some mainstream techniques such as XSQL, XSLT, JavaScript, OpenJMS, etc.

Key words:Discrete Mathematics;teaching website;computer science oriented;XSQL;XSLT;OpenJMS

计算机在其诞生至今短短的几十年间,得到了令人瞩目的飞速发展,它在很多方面都深刻地改变了人类的活动方式和思维习惯。然而,现代数字计算机的理论模型依然是二十世纪三十年代提出的图灵机,这是一种“离散”的机器。所以,现代的数字计算机本质上仍然是一种“离散”的机器,可用来处理“离散”的对象。离散数学是研究离散对象的数量和空间关系的数学,很自然地成为计算机科学的理论基础和有力工具。另一方面,计算机科学的发展又反过来进一步促进了离散数学的发展。当然,离散数学涉及的内容极其广泛,其应用全然不是仅局限于计算机科学及其应用,而涉及到我们生活的方方面面。

1 面向计算机科学的离散数学教学

离散数学是计算机专业最重要的基础课程之一,是许多后继课程必不可少的先行课程。通过学习离散数学,不仅可以获得必要的具体知识,为后续课程的学习创造条件,更重要的是掌握描述和处理离散结构的基本思想、方法和工具,提高抽象思维和逻辑推理的水平,培养分析问题和解决问题的能力,为将来从事应用和研发工作打下坚实的基础。

以往的经验表明,在计算机专业中,离散数学课程的教学效果往往不理想,原因主要有三个方面。首先,在传统的离散数学教学中,往往采用常规的教授“纯数学”的方法,学生不能很好地体会离散数学对计算机科学的重要意义,对“纯数学”不感兴趣,所以学习积极性不高。其次,离散数学确实有一定的难度,抽象、概念多,而通常分配给离散数学的课堂教学课时不可能是十分充足的。另外,大多数计算机专业的学生数学素养有限。

针对目前离散数学教学的现状,我们分析了计算机学科的发展对离散数学课程提出的新的要求,总结了以往多年的教学经验,在此基础上,对传统的离散数学课程进行了革新,强调离散数学在计算机科学中的应用,理论联系实际,把计算机专业的离散数学课程建设为“面向计算机科学的离散数学”,而非“纯数学”。为此,我们建立了离散数学教学支撑网站,并结合学生的专业特长,让学生参与网站建设的过程,从而进一步提高了学生的学习兴趣。

2 教学支撑网站的设计

2.1 网站的功能结构

离散数学教学支撑网站分为8个模块,分别是:主页、公告栏、教学资料、FAQ、教学互动、交流园地、学生自测系统以及后台管理。教学资料又分为3部分: 教学大纲、课堂讲义、参考资料。网站的基本结构如图1所示。

2.2 主页和公告栏

主页显示离散数学的基本信息和滚动公告,便于学生和教师及时获得重要教学信息。公告的详细信息在公告栏中浏览。

2.3 教学资源

教学资源包含教学大纲、课堂讲义、参考资料三个部分。课堂讲义是教师课堂讲义的网络版,供学生随时浏览。参考资料提供了一些相关的学习资料,供学生下载或浏览,包括作业的答案、额外补充的教学内容、进一步的拓展材料等等,学生可以从中各取所需,普通学生可以获得有用的基本资料,学有余力的学生可以扩大知识面。

2.4 FAQ

FAQ是常见和疑难问题的解答,集中陈列从各种途径收集到的问题及其解答,及时解除学生的学习疑惑。可以利用FAQ激发学生的学习兴趣,鼓励学生提问和相互解答疑问,把学生提出的有意义的问题和解答加入到FAQ问题集中,并予以适当的激励。

2.5 教学互动

教学互动是教师和学生的互动栏目,即网上答疑,突破了传统答疑方式在时间和空间上的限制。教师可以在约定的时间点上实时解答学生的问题,也可以在方便的时候解答学生的问题。此外,这种互动还可以是一对多的,即一个教师面对多个学生,某个学生与教师的互动可以被多个学生同时看到,从而充分利用教师有限的时间。当然,学生也可以随时查看教师的解答。

教学互动模块是整个网站较复杂、技术含量较高的模块,比通常的聊天室的功能更复杂。它可以及时刷新留言板,使用户的言论及时显示在页面上,实现实时交流。

2.6 交流园地

交流园地是供学生相互讨论的板块,类似于BBS。学生可以在这里交流学习心得、提问、解答其他同学的问题、浏览其他同学的问题和解答等等。为了激励学生积极思考,提高学习积极性,这里还设置了加分机制,对提出“好问题”或“好解答”的学生予以鼓励。

交流园地成功地解决了复杂数学公式的输入问题,并允许设定字体的各种格式,如同使用word一样方便,使学生可以充分展示自己的个性。

2.7 自测系统

学生可以在这里选择所需要的章节,系统自动从题库随机生成一套测试题。学生做完题目后,系统自动批改。通过自测系统,学生可以及时了解自己的学习情况和薄弱环节,有针对地进行下一步的学习,做到心中有数。

2.8 教学和站务管理

管理模块的大部分操作是针对教师的,包括学生管理、助教管理、权限管理、角色管理、成绩管理以及班级管理等等。学生也可以在此查看修改个人资料、查询成绩等等。

管理模块还提供了与excel表之间的导入和导出,可以从excel学生表批量生成用户,也可以把学生的相关信息(如成绩等)从系统中备份出来,为教师开展教学工作提供了方便,提高了工作效率。

3网站的实现和关键技术

3.1系统架构

在一般情况下,网站的负荷不会太高,出于方便管理和降低软硬件成本的考虑,以及技术的先进性和今后的扩展等等考虑,网站基于windows 2003 server,使用Tomcat 5.0,数据库采用Access。

网站的系统框架如图2所示。

3.2 Oracle XSQL、 XSQL Servlet和XSLT

XSQL可扩展的结构化查询语言是目前流行的一种高效、易用、功能强大的技术。XSQL可以通过使用参数化的SQL查询语句,动态地生成XML文档,也可以将XML文档导入数据库。XSQL Servlet是包含在Oracle XML开发工具包中的一个实用Servlet,应用于JAVA程序、JSP程序之后,通过JDBC实现数据库与XML文档的交互。XSQL Servlet运行在Java虚拟机上,使用JDBC驱动,与具体数据库无关。XSLT是XSL(可扩展样式表语言)的派生物,用来实现不同结构的XML文档之间的转换,它是XML的标准之一。XSLT程序接受XML文档,将XSLT样式表作为输入,产生样式表指定的结果。

网站使用XSQL进行业务逻辑处理,查询结果以XML的形式表示, 利用XSLT转换成页面表示。在具体实现时,尽量使每个页面只对应一条查询语句,以提高查询的效率,降低服务器的压力,从而降低系统对硬件的要求,提高系统在大量并发访问下的响应速度。

3.3 OpenJMS与教学互动

OpenJMS是一个简单易用的开源的Java Message Service API 1.0.2 规范的实现,既支持点到点(PTP)模型和/订阅(Pub/Sub)模型,也支持同步和异步消息发送,支持RMI、 TCP、HTTP和SSL协议,支持Applet,具有可视化管理界面,支持客户端验证,提供可靠消息传输、事务和消息过滤,能够与Jakarta Tomcat这样的Servlet容器结合,通过JDBC持久性管理使用数据库表来存储消息。

教学互动模块基于OpenJMS和JSP实现消息的传递和显示。在传递消息时,首先接收者发送的消息,然后将它保存在内容节点中,最后将内容节点中的消息发送给订阅者。系统的消息者为客户机,订阅者为服务器。服务器在接受到消息的同时将信息存入数据库,以便页面显示时调用数据库。/订阅模型实现为两个类,分别完成消息的和订阅。

在离散数学的网上交流中,数学公式的编辑是必不可少的。xinha编辑器是一款强大的所见即所得的编辑器,是为了迎合用户的多种需要而从原来的htmlarea演化出来的一个变体。xinha不仅具有很多常见的编辑功能,而且支持生僻的编辑要求,支持数学公式编辑,还具有拼写检查的功能。

本网站集成了xinha编辑器,利用JavaScript完成嵌入和初始化工作。在初始化时,编辑器的名字与表单中textarea的名字相同,因为预览时要调用编辑器中的程序,这样才能正确地传送数据。

4 总结

离散数学是计算机专业最重要基础课程之一,由于多种原因,这门课的教和学都比较困难。针对这样的现状,我们对离散数学的教学进行了改革,把离散数学与计算机科学结合起来,充分展示离散数学在计算机科学中的重要作用,使学生认识到学习离散数学的意义。此外,我们还建设了一个教学支撑网站,提高了教与学的效率,也进一步强化了教改的思想。网站的实现充分考虑了今后可能的扩展和总体成本,使用了当今主流的技术。

实际教学实践表明,教改后,学生认识到了离散数学的重要意义,学习兴趣提高了,大部分学生都能比较好地理解所学的基本内容及其实际意义,成绩提高。

参考文献:

[1]李锋,孙莉.任务驱动式方法在离散数学教育中的运用[J].计算机教育,2006(3):27-29.

[2]翁梅,刘倩,冯志慧,等.“离散数学”课程教学实践与探索[J].计算机教育,2004(12):62-63.

[3]耿祥义,张跃平.JSP实用教程[M]. 北京:清华大学出版社,2003.

[4]Michael D.Thomas,著,徐焱,孙扬,译.Oracle XSQL技术[M].北京:清华大学出版社,2004.

[5]宋朝东.巧学巧用HTML,CSS,JavaScript制作网页[M].北京:人民邮电出版社,2005.

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。