对局域网QQ聊天系统开发的探讨

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:a1402070128
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着科学技术和网络的飞速发展,网络版的聊天软件种类繁多,如QQ、MSN等,实现了随时随地上网聊天,给人们带来了很大的方便。然而这些聊天软件也存在以下不足:用户必须连接Internet;用户再工作时容易沉迷于网络聊天。为了方便单位企业内部的信息交流,减少不必要的财力和人力资源浪费,开发一个局域网聊天软件是非常必要的。
  关键词:局域网;系统开发
  中图分类号:TP393 文献标识码:A文章编号:1007-9599 (2011) 14-0000-02
  Study on the LAN QQ Chat System Development
  Wei Wei,Nong Lin
  (Yuchai Machinery Company Limited,Yulin537005,China)
  Abstract:As the rapid development of science technology and Internet,online chat software variety,such as QQ,MSN,etc.,to achieve anytime,anywhere access to chat,to bring great convenience.However,the lack of chat software,there are the following:the user must be connected to Internet;users work longer easy to indulge in chat.In order to facilitate the exchange of information within the enterprise unit,reduce unnecessary waste of financial and human resources to develop a LAN chat software is necessary.
  Keywords:LAN;System development
  前言:当今社会,随着全球信息化进程的不断发展,网络也在飞速发展。出于高效、快速地处理各种事务的目的,越来越多的企业在其内部使用局域网来进行工作。在内部局域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。然而,随着企业规模的扩大,业务量的增加,企业内部的信息越来越私密,企业只希望员工通过内部局域网进行沟通与交流,避免企业内部机密通过Internet泄露到外部。为了解决上述矛盾,人们提出了开发局域网聊天软件的构想,通过局域网聊天软件,企业员工可以随时的进行即时消息传递,召开网络会议等,有利于提高工作消息效率,同时又保护了企业内部信息的安全性。
  一、系统概述
  该局域网QQ聊天软件操作简单方便、界面简洁。该系统分为客户端和服务器端。前台为客户端,包括的主要功能有用户注册、用户登陆、文字聊天、文件传输、语音聊天和视频聊天等功能。后台为服务器端,主要功能包括:数据库的建立、查看用户的状态、管理用户的资料、开启和关闭服务器的监听等功能。服务器端直接与数据库相连,服务器端要先开启监听,然后客户端登陆的时候要与服务器端进行通信,服务器端进行验证客户端的用户名和密码。客户端经过服务器端的验证后,才可以登陆成功。本软件还对客户端的各个窗口进行了皮肤加载,使界面看起来更加的美观、大方。本局域网QQ聊天软件还具有系统托盘和右键菜单的功能。每个客户端只能进行一次并且只需注册一次。用户登录成功之后,可以看到局域网内所有的在线和不在线的注册用户。用鼠标双击打开某一个在线的用户的聊天窗口,就可以与该用户进行文字信息的互发与接收,可以利用本地的摄像头进行录像和拍照,还可以与对方进行点对点的视频、语音和传输文件等操作。本系统运行比较的稳定、安全可靠。此外,本软件还对源程序进行了打包成安装源,便于用户使用的时候进行安装。安装源也分为客户端和服务器的安装源。一般的局域网用户只需要安装客户端即可。
  二、需求分析
  本局域网QQ聊天软件主要是采用Microsoft Visual Studio 2005结合SQL Sever 2000数据库技术,采用C#语言来实现各功能模块的开发。开发出来的软件必须结构比较的合理、功能比较的齐全、使用起来比较的方便。该局域网QQ聊天软件开发的重点和难点是客户端和服务器端与数据库的连接,建立连接后还要保证通信的畅通性和正确性。此外要实现在两个客户端之间实现点对点的文件传输,语音聊天以及视频等功能,也是本局域网QQ聊天软件开发的难点。此外,还要着重处理好各模块间的划分以及模块间的连接。在开发中应注意系统性能的优化,数据库的安全和优化,尽可能的提高系统的安全性和整个系统的运行的稳定性。同时,开发出来的软件系统还必需功能完备、安全性高、易于维护和使用,操作也要简单、方便,界面也要简洁、美观、大方。
  (一)功能需求
  网络聊天已经成为人们工作生活中传递信息、交流感情的重要工具。网络版的聊天软件种类繁多,如QQ、OICQ、MSN等,实现了随时随地上网聊天,给人们带来了很大的方便。但是这些聊天软件也存在以下不足:用户必须连接Internet;用户在工作时容易沉迷于网络聊天。为了方便单位企业内部的信息交流,减少不必要的财力和人力资源浪费,开发一个局域网聊天软件是非常必要的。开发该局域网聊天软件需要完成以下的几个要求,以便于用户进行操作。这样才能使该软件易学易用、更加的人性化。
  1.合理的设计数据库。尽量合理地减少数据库数据的冗余,使重复的数据保持在最小限度,这样将不必要的多占用存储空间,减少产生混乱影响的危险,还能提高计算机的运行速度。
  2.设计出友好的界面。界面的友好与否是用户评价一个软件优劣的重要方面之一,使用户有一个良好的心情。另外窗口界面的各个控件布局要合理,美观。要充分的利用Microsoft Visual Studio.Net 2005提供的强大的功能。
  3.根据局域网对QQ聊天软件的要求,本QQ聊天软件需要实现以下的目标:(1)操作简单方便、界面简洁美观。(2)每个客户端只能注册一次。(3)可以在局域网中实现文字的传输。(4)可以实现多用户的信息通信。(5)可以实现两个用户之间的点对点的语音聊天。(6)可以实现两个用户之间的点对点的视频聊天。(7)可以使用本地的摄像头的进行录像和拍照。(8)可以实现两个用户之间点对点的文件的传输和接收。(9)系统运行要比较的稳定、安全可靠。
  (二)性能需求
  1.可靠性高,能在由于系统问题或其它原因产生错误后,做出相对应处理,比如网络初始化失败、服务器未启动等,可以提示用户安全退出本程序,在出现不可知的错误以后,可以尽量安全的退出程序。在程序的设计过程中,要求能尽可能多的设想到用户使用过程中可能发生的事件,并能在判断事件后做出相应的处理,使程序具有较高的容错性能。
  2.易操作性,程序简单易懂,容易上手使用。设计界面是,简化界面的复杂性,模拟QQ等现有即时通讯工具的界面,使用户能很容易看懂并使用。
  3.模块化设计此软件的功能,不同的模块实现不同的功能,使得软件易于以后的维护与扩展,在以后可以更好的完善本软件的功能,更方便于在工作中的应用。
  三、数据库设计
  基于局域网QQ聊天软件是一个数据库网络应用系统,系统的所有信息都是保存在数据库中。在数据库应用系统的开发中,数据库的结构设计是一个非常重要的问题。我们这里所说的数据库结构设计是指数据库中各个表结构的设计,包括信息存在哪个表中、各个表的结构如何以及各个表之间的关系。数据库结构设计的好坏,将直接对应用系统的效率以及实现的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等。由于数据库设计的重要性,人们提出了许多数据库结构设计的技术。但这些方法和设计者的工作经验有很大的关系。因此要从根本上解决所有数据库结构设计的问题,就需要多实践,在实践中积累经验和教训,最终成为数据库结构设计的专家。
  (一)数据库需求分析
  数据库结构设计的第一个阶段,也是非常重要的一个阶段时数据库需求分心。在这个阶段主要时收集基本数据以及数据处理的流程,为以后进一步设计打下基础。
  1.内容:调查应用系统用户所需要操作的数据,决定在数据库中存储什么数据。
  2.处理:调查应用系统用户要求对数据进行什么样的处理,理清数据库中各种数据之间的关系。
  3.数据项:包括名称、含义、类型、取值范围、长度以及和其他数据项之间的逻辑关系。
  4.数据结构:若干个数据项有意义的集合,包括名称、含义以及组成数据结构的数据项。
  5.数据流:指数据库中数据的处理过程,包括输入、处理和输出。本设计通过对聊天室内容和过程分析,设计的数据项和数据结构如下。
  用户基本情况:包括的数据项有姓名、性别、年龄、昵称等。
  (二)数据库逻辑结构设计
  概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能进行数据库应用的设计,也就是要将概念上的结构转化为数据库系统所支持的实际数据模型。第一种转化是将实体转化为关系表。这种转化比较简单,只需要将实体的属性定义为表的属性即可。第二种转化是联系的转化。即将各个实体之间的联系转化为表格之间的关系,如外部键的定义。在上面工作的基础上的基础上归纳出人员管理数据库表格的组成、列的属性、表格之间的联系等等。
  该数据库系统要求具有以下方面的特点:结构合理;所建立的数据冗余度小,独立性强;建档、修改、查询、统计快准确;保密性、可靠性好。聊天软件中各个表格的设计结果如下面的各表格所视。每个表格表示数据库中的一个表。
  (三)数据库设计
  1.概念设计。基于局域网QQ聊天软件包括的实体有:好友表实体,用户表实体。好友表实体包括的属性有:自己的编号,好友的编号。好友表实体E-R图详见图3-1所示。
  
  图3-1:好友表实体E-R图
  用户表实体包括的属性有:编号,用户名,IP,性别,年龄,mail,密码,是否在线。用户表实体E-R图详见图3-2所示。
  
  图3-2:用户表实体E-R图
  2.逻辑设计。基于局域网QQ聊天软件包括的表有:好友表表,用户表表。他们的逻辑设计分别如下所示。好友表(U-Friend)包括的字段有:自己的编号(ID),好友的编号(Friend ID)等字段,详细见表3-1好友表。
  表3-1好友表(U-Friend)
  
  用户表(U-User)包括的字段有:编号(ID),用户名(User Name),IP(IP),性别(Sex),年龄(Age),mail(E-Mail),密码(Pwd),是否在线(On Line Flag)等字段,详细见表3-2用户表。
  表3-2用户表(U-User)
  
  3.物理设计。基于局域网QQ聊天软件包括的表有:好友表,用户表。物理表结构设计如下:
  好友表表结构SQL脚本代码如下:
  CREATE TABLEU_Friend(
  [ID] int NULL
  [FriendID] int NULL
  )
  用户表表结构SQL脚本代码如下:
  CREATE TABLEU_User(
  [ID] int NOT NULL
  [UserName] varchar (50) NULL
  [IP] varchar (50) NULL
  [Sex] varchar (50) NULL
  [Age] varchar (50) NULL
  [E_Mail] varchar (50) NULL
  [Pwd] varchar (50) NULL
  [OnLineFlag] varchar (50) NULL
  )
  参考文献:
  [1]冉林仓,尹建民.Visual C#.NET入门与进阶[M].清华大学出版社,2007,2
  [2]Christian Nagel,Bill Evjen,Jay Glynn. C#高级编程(第4版)[M].李敏波,静审.华大学出版社,2006,10
  [3]刘强,张高.C#编程语言程序设计与开发[M].清华大学出版社,2003,9
  
其他文献
随着以柑桔为主的果业生产快速发展和农机购置补贴项目的实施,果园机械化也得到迅猛发展。如何使果园机械化与果业发展紧密结合,以减轻果农劳动强度,增加经济收入,本文阐述了城同
本文针对C语言课程从教学目标,教学方法,教学模式等方面对这门课程的教学改革作一些简单的分析,主要在于加强学生的动手实践能力,改变以往的灌输式教学方法,采用循序渐进式,启发式,
阐述了阳平关镇畜牧业生产发展现状和特点,剖析了存在问题,提出了畜牧产业发展思路和对策:合理布局,调整畜牧养殖结构,利用地理交通优势,打造畜产品集散地和贸易市场,发展“一村一品
摘 要:分层教学是现在大学英语教学中普遍存在的一种模式,本文阐述了高校英语教学中分层次教学的理论依据,将理论和实践相结合,使大学英语课堂更好的为不同层次的学生服务,因材施教,制定适合不同层次的教学方案,从而不断提高独立学院的办学水平。  关键词:大学英语 独立学院 分层教学  中图分类号:H319 文献标识码:A 文章编号:1673-9795(2013)03(a)-0229-01  1 简介  分
在我国,无论是猪肉产量或者是猪肉消费量均占肉类总产量的70%以上,猪肉的安全问题已引起社会各界的密切关注,它不仅仅是食品的安全问题,现已提升到了社会安定和经济稳定的政治高度
科举制在中国始于隋唐,终于清末,历经1300余年,对我国封建社会的发展产生了重大影响,但同时也饱受批评.近年来,我的现行的高考制度也日渐处于舆论的风口浪尖.同样作为评价的