发布时间:2023-10-22 04:14来源:www.sf1369.com作者:宇宇
摘 要: 大学生测评是认识自我的一亩野种有效的手段,是一种了解自己各种心理特质的方法,它通过一系列的科学手段对人的一些基本心理特质进行测量与评估。用PHP+JavaScript技术开发一套大学生测评系统,提供给大学生职业能力、职业兴趣、素质能力等多方面的测试,并在测试后针对个人的特点提出建议,为大学生的全面发展提供导航。
关键词: PHP;JavaScript;大学生测评系统
中图分类号:TB534 文献标识码:A 文章编号:1671-7597(2012)0720090-025
1 开发技术要点
1.1 面向对象
与传统的Web开发不同,当前的Web开发在许多时候都采用了面向对象(OOP)的方法来进行设计编码。在软件开发领域,面向对象开发软件已形成一种标准茄蚂,而面向功能则已过时。但是由于种种原因,大多数网络脚本的设计和编码仍然是基于面向功能的。当然利用传统的面向功能的开发方法,也可以实现网站需求,但在代码的维护性及扩展性方面,这种做法就要远差于面向对象了。PHP的前三版对面向对象的支持显得太过模糊,但到了PHP4和PHP5,对面向对象的语法支持明显增强了不少。应该说,目前的PHP已经完全支持用面向对象的方法来进行Web开发了。
同时PHP是一个混合型语言,你既可以使用OOP,也可以使用传统的过程化编程。然而,随着项目越来越大,使用OOP可能会有帮助,OOP代码很容易维护、理解和重用,这些就是软件工程的基础。在基于web的项目中应用这些概念可以为将来网站的成功增加有利因素。
1.2 使用模板技术
在Web开发过程中,可以使用PHP强大的模板技术,使得PHP脚本设计尽量与HTML页面设计相分离。每个进行过较大型的Web应用程序设计的开发人员大概都有如下的经历:花大量的时间写超文本语句,为页面排版,兼作美工等;或在整合的程序代码在和HTML静态页面时花费大量的时间。的确,用脚本语言开发Web应用不容易将数据的处理和数据的显示分开,但在多人合作的情况下,如果无法将数据和显示分开,将大大影响开发的效率,专业分工的发挥。为了解决这个问题,PHP提供了许多解决方法,例如PHP的扩展类库PHPLIB就提供了Template类来实现这一方案。
说到底,PHP的模板技术主要是利用它的读写文件的技术。PHP的读写文件与C语言的实现差不多,实现的线路清晰明了:首先利用文件读写读出html文件的内容,然后取出我们想要的部分,接下来对html中的变量赋值,最后输出html的内容。PHP的模板技术使得往后的版面更新可以非常快速,就算是一个完全不懂PHP的人也可以随意快速地更换网站的风格,前提是必须保留原来html中的PHP变量名。
1.3 代码重用
在进行系统开发的大多数时候,我们会尽可能地编写可重用的代码。这里说的可重用并不单纯是创建面向对象的类,更多时候我们会把将大多数页面都要利用的东西(如输出的数据等)统一封装一个文件(也可以称这种做法为模块化),然后在利用到的页面里用include或require函数将它包含进迅纳喊来就可以了。重用技术不但可以让我们的工作更轻松,提高我们的工作效率,而且可以增加代码的可靠性并提高它的一致性。
1.4 客户端功能的实现
在进行Web开发时,除了PHP以外,还需要使用JavaScript语言来编写一些由客户端完成的功能。例如最常见的在线文章编辑器,通过使用这个编辑器,用户可以非常方便地定制文章的样式。编辑器采用JavaScript语言编写,用户无需熟悉HTML语言,只需要通过一些按钮即可得到自已想要的排版效果。例如:想要使某段文字居中,只要用鼠标将该段文字选中,单击“居中”按钮,便完成了文字居中的效果。而且,编辑器提供了三种显示模式,分别是“普通”、“HTML”、“预览”,其中“普通”和“预览”效果基本一样,都是文章最后在网页中显示的效果。而“HTML”则是显示出文字的HTML源代码,用户如果对HTML语言比较熟悉,就可以直接在该模式下用HTML语言对文章样式进行编辑。而在本测评系统中,将使用JavaScript语言来实现测评过程中对客户端的一些控制。
2 系统概要设计
网上测评是一种心理测验,它是通过一系列的科学手段对人的一些基本心理特质(能力素质、个性特点)进行测量与评估。因此,系统的主要功能就是提供大量的测试试题。考虑到试题的更新频率以及页面访问的速度要求,决定使用静态html来保存测试题目,而将测试结果存入数据库。另外在后台,管理员应该可以查看到用户的测试成绩。
系统结构如下图:
3 系统详细设计
3.1 功能模块
系统主要功能模块有测试模块与结果存储/读取两大模块。
测试模块:主要实现输出静态html,对测试实行计时处理,检测用户是否完成试题。
结果存储/读取:实现将用户的测试结果加入数据库,或者将测试结果从数据库中读出来。
3.2 测试模块功能与实现思路
1)输出静态html
功能目的:为了使网页的打开速度达到令人满意的程度,系统采用了静态html来保存测试题的题目。另外由于许多测试题页面包含有题目所需的众多图片,所以有必要让用户知道他们正在等待试题的载入,而不是死机。
实现思路:在页面上新建一个层,在页面载入时,如页面还没完全载入完,不断地显示这个层,而不显示页面的实际内容,当页面完全载入后则把这一个层隐藏掉,显示页面实际内容。这种效果用PHP或HTML本身是无法实现的,所以必须使用JavaScript来实现。
2)对测试实行计时
功能目的:在用户进行测试时,为了保证测评的效果,应该尽量得到用户在第一反应下做出的回答,而不是经过长时间思考后再做出回答,所以必须要对用户答题的时间进行限制。因此,要在测评的页面设置一个时钟来督促用户,希望他们能在规定的时间内完成测试。