四川理工学院本科毕业论文
第一章 前言
1.1 平台开发背景
网络讨论平台由国外兴起并发展起来的,它的早期被称作为“电子公告板”,与街头和校园内的告示栏性质相同,只不过是通过电脑传播来获得消息而已,它最初主要是用于公布股市价格等信息,一直到个人计算机开始普及,互联网用户暴增之后,电子公告板才开始渐渐普及开来,被人们所熟悉,同时它自身的功能不断的扩充,内容也在不断的变化,逐渐演变成了现今的网络讨论平台[1]。
二十一世纪的今天,电子计算机进入千家万户,网络已经遍布世界各个角落,网络的及时、便利、快捷等优势,使得人们的信息交流变得更加方便。随着网络技术的不断发展,网络讨论平台已经成为互联网中运用最为广泛的通信工具之一,该平台基于Web网页,为用户提供了简洁的聊天交流界面,具有学习公告发布、平台内发送消息、信息搜索、个人信息管理、数据处理、管理操作等功能,用户通过发表主题信息和回复主题信息的方式可以在平台中对学习、生活以及工作等方面进行交流,同时结合后台管理对平台信息进行实时调整管理,从而形成一个稳定的虚拟的信息交流平台。近年来,网络讨论平台的用户每年都在增加,只要有互联网覆盖的地方,用户就可以通过网络讨论平台随时随地获得全球最新的资讯信息,在平台上和其他人讨论自己感兴趣的话题,利用网络讨论平台来刊登一些“交友”、“租房”、“征婚”及“寻人启事”等信息。
网络讨论平台引入国内,是在二十世纪九十年代末,前期的网络讨论平台大多数为一次允许一人访问的单线平台,随着计算机在国内的不断普及,特别是调制解调器的大量使用,平台的活动进一步高涨,多人同时进入一个平台时,不可避免地发生冲突,这就导致了拨号难和抢线难问题的出现;而且由于国内使用的网络讨论平台的架站软件,都是从国外引进的,所以没有必要的中文说明,虽然一些爱好者翻译了一些资料,但是仅靠这些还是远远不够的;另外,有些平台的设立是相互抄袭,所以在结构上有很多雷同之处。
随着网络技术的快速发展,国内逐渐出现了一次可以允许2人以上同时访问的多线平台,有效的缓解了单线平台的诸多难题,目前国内多线平台已经十分普遍。现在国内多数公司或者企业单位都建立了自己的网络讨论平台,网络讨论平
1
网络讨论平台的设计与实现
台已经随处可见,数目众多,按照用户群体和主要用途,大致可以分为校园型、商业型、娱乐型以及私人等几大类,但是目前国内一些网络讨论平台还没有具备简单易用的优点,实用性还有待进一步加强,可以预见,今后国内的网络讨论平台将向着个性化和专业化的方向发展[2]。
1.2 主要设计内容
网络讨论平台采用了Asp.net和SQL数据库技术,并综合运用相应的开发工具SQL Server 2005和Microsoft visual studio 2005设计而成,平台系统包括前台用户和后台管理两大模块,前台用户模块主要实现用户注册、用户个人信息管理、主题的发布、主题的回复、主题的搜索查看、浏览最新资讯等功能,后台管理模块主要是主题信息的管理、平台用户的管理、主题的版面分类、最新资讯的添加删除等,用户可通过发表和回复主题的方式在平台中进行学习、生活以及工作等方面的交流,同时结合后台管理员对平台信息进行调整管理,从而形成一个稳定的虚拟的可以为用户提供学习公告发布、平台内发送消息、信息搜索、个人信息管理、数据处理、管理操作等功能的信息交流平台,用户界面简洁美观,操作方便简单。在设计中有自己的流程图,程序代码和模块连接,能实现一些常用的功能。
1.3 本章小结
本章主要叙述了网络讨论平台的开发背景,开发背景的介绍主要包括网络讨论平台的起源,发展以及壮大,目前全世界的发展状况,同时还涉及到网络讨论平台在国内的兴起以及发展历程,最后简单地阐述了本次设计的主要内容和思路。
2
四川理工学院本科毕业论文
第二章 相关技术介绍
2.1 开发工具
网络讨论平台采用目前流行的Asp.net编程语言和数据库技术,选择B/S系统体系架构,利用微软集成开发环境Vs 2005(Microsoft visual studio 2005)开发设计而成的,SQL Server 2005数据库系统用于存放平台中的数据信息。
2.2 Asp.net的简介
Asp(Active Server Page)即为“动态服务页面”,它是Microsoft公司开发的一种脚本程序应用,是可以与数据库和其它程序进行交互的常用于动态网站编写的编程工具。Asp可以创建和进行动态、交互的Web服务器应用程序,而且Asp程序可以很容易开发和修改。
Net Framework则是一整套的新技术,Microsoft公司推出此技术的目的是改革未来在所有编程开发中所采用的方法,以及各公司从事业务活动的方法。
Asp.net是Microsoft公司的Asp和Net Framework两项核心技术的结合,它是一项功能强大、非常灵活的新技术,用于创建编写动态Web页面,从本质上讲Asp.net是利用Net Framework提供的新功能来创建动态Web页面的一种方法[3]。
Asp.net不仅可以生成动态Web页面,并且可以将这些页面根据正在使用的浏览器进行裁剪,而且,它提供了大量的可复用的预定义控件,用于Asp.net项目,减少了要编写的代码,从而在编程时提高工作效率。Asp.net最引人注目的改进之一是可以用基于Net Framework的任何编程语言创建Web应用程序。在这些应用程序中,Asp.net允许为特殊用户定制页面,当用户在Web站点中浏览时更容易跟踪用户信息[4]。Asp.net具有以下优点:
1、较高的安全性,Asp.net允许创建“个人帐户”和“角色”,以便每个用户都能访问不同的代码和可执行代码,从而提高应用程序的安全性。
2、可靠性,Asp.net是一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝技术,大大提高了运行速度。即使现在的Asp.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变就能提高它们的效能。
3
网络讨论平台的设计与实现
3、可扩展性,Asp.net是一项可扩展技术。提高了应用程序的可扩展性,改进了服务器间的通信,使得可以在多台服务器上进行一个应用程序。
4、高效的管理性,Asp.net使用一种字符基础的分级的配置系统,使服务器环境和应用程序的设置更加简单。因为配置信息都保存在文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。一个Asp.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动。
5、易配置和部署,利用纯文本文件配置Asp.net应用程序,可在程序运行时上传或修改配置文件,而无需重新启动服务器,部署或替换已编译的代码时也无需重新启动服务器,Asp.net会自动将所有新的请求指向新代码。
2.3 B/S架构
目前应用开发领域中,系统的体系结构主要有两种,即C/S(Client/Server)结构和B/S(Browser/Server)结构[5]。
C/S(客户机和服务器)结构可以充分利用两端硬件环境的优势,将任务合理分配到客户机端和服务器端来实现,降低了系统的通讯开销。传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是客户机端还是服务器端都还需要特定的软件支持,没能提供给用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统来开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台计算机以上局域网用户同时使用,而且代价高效率低。
B/S(浏览器和服务器)结构是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式来访问和操作共同的数据库,它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。B/S结构,是随着互联网技术的兴起,对C/S结构的一种变化或者改进的结构,B/S架构管理软件更是方便快捷高效,用户界面完全通过IE浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,用通用浏览器就实现了原来需要专用的复杂软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。因此本平台采用了B/S结构,B/S除了传承C/S结构的优点外,还具有以下的优势:
1、具有分布性特点,可以随时随地进行查询、浏览等操作处理;
4
四川理工学院本科毕业论文
2、业务扩展简单方便,通过增加网页即可增加服务器功能;
3、维护简单方便,只需改变网页,就可实现所有用户的同步更新,维护工作量大幅度减少,降低了总体成本。B/S结构,所有的维护升级工作都只在服务器上进行,用户端始终能通过IE浏览器获得最新版本的软件,不管用户有多少都不会增加任何维护升级的工作量;
4、开发简单,共享性强,平台的依赖性小,可以在多个不同的操作系统上运行,B/S结构的应用软件只需安装在服务器上,可以选择不同的服务器操作系统,用户均可使用浏览器访问,提高了程序的可移植性。
2.4 数据库技术
关系型数据库(Relation Database)是若干个依照关系模型设计的数据表的集合,由若干张完成关系模型设计的二维表组成,以数据表为基本文件,不但每个数据表之间具有独立性,而且若干个数据表之间又具有相关性。关系数据库允许多个用户同时访问,同时提供了各种控制功能,保证数据的安全性完整性和并发性控制。安全性控制可防止未经允许的用户存取数据,完整性控制可保证数据的正确性有效性和相容,并发性控制可防止多用户并发访问数据时由于相干扰而产生的数据不一致。关系数据库有以下特点:
1、以面向系统的观点组织数据,使数据具有最小的冗余度,支持复杂的数据结构;
2、具有高度的数据和程序的独立性,用户的应用程序与数据的逻辑结构,以及数据的物理存储方式无关;
3、由于数据具有共享性,使数据库中的数据能为多个用户服务[6]。 SQL(Structured Query Language)结构化查询语言,是关系数据库的标准语言,SQL是一种功能强大的通用的数据库语言,几乎所有的关系数据库软件系统都支持SQL,SQL具有高度的非过程化、面向集合的操作方式、以同一种语法结构提供多种使用方式,语言简洁,易学易用的特点[7]。
本网络讨论平台采用的是微软公司的SQL Server 2005,它是一种应用广泛的数据库管理系统,具有易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等显著优
5