摘要
从实际工程应用角度出发,以计算机网络原理为指导,结合当前网络中的一些
常用技术开发了本聊天室工具该工具具有聊天室聊天、二人私聊、表情的应用以及
请离用户的功能论文主要对当今聊天软件的发展情况、与该聊天软件相关的各种技
术以及该聊天工具的实现做了一个详细的阐述
本聊天室设计初衷是为软件开发人员在局域网中方便交流,减少成本,消除由
于交流不同带来的开发成本上升作为计算机网络的应用之一聊天工具,受到了用户
的普遍爱好,它把人们带进了一个虚拟的网络世界,大大的加深了人们之间的联系
它将会作为未来人们通过因特网相互联系和娱乐的主要平台聊天工具的开发主要用
到了网络通信技术、语音的采集、压缩、传输、解压缩以及回放等技术,文件传输
技术、 的多线程技术以及视频的采集、压缩解压缩技术等 本软件基于
通信在此基础上实现点对点聊天、广播聊天、一对多聊天、悄悄话以及表情,
可以运行于任何支持 协议的机器上用到了多线程的设计因此线程之间的同
步是一大关键之处由于系统采用 结构客户端与客户端以及客户端
与服务器端需要传送一些控制消息因此系统需要自定义一些消息类型这是该聊天工
具的又一大关键之处
关键词 :网络通信;;;
!"#""$ $ "!""
! ! ! % ! $%
" & """
'"""!!&!""" %
!&(&"%&&
$% )
$ $ & &'$ &
& " ! !
'$ " $ &&% &
"!("" !(!%
""%")"$""(
"& !$ !! ( &!!
" & % ! & &
$% $% "! $$ "
! " !*$%&+!%
$$ "! "+!&
") %
"**" '" % %
!"" $ , !* $ &
%)"&$%-!% !
!!
&% &
& $%"%&
.%/0111
目录
摘 要2
3
引言2
第一章 网络聊天室的概述3
22系统的开发背景 3
23系统的开发意义 3
24系统的开发目标 3
25系统所用知识概述 4
253 协议4
253 协议及端口4
254 与多线程 4
2556 7
第二章 系统分析8
32课题来源 8
33对已有聊天软件的分析 8
322功能分析8
323网页聊天室8
324缺陷9
34项目开发的主要内容 9
37系统方案说明 9
38系统其他要求 :
382系统性能要求:
383 系统环境要求:
39 结构流程 ;
392服务器结构流程图;
393 客户端结构流程图2<
394 登录结构流程图2<
395 注册结构流程图22
=23
023
23
=23
023
=23
023
23
=23
023
=23
023
=23
第三章 系统设计与实现24
42聊天室服务器端设计 24
423服务器设计思想24
423服务器端各主要类的定义及其功能24
424服务器端用户管理功能的设计与实现25
425服务器端显示消息的功能设计与实现25
427服务器端核心代码27
43聊天室客户端设计 28
432客户端设计思想28
433客户端各主要类的定义及其功能28
434客户端登陆的设计与实现28
435客户端发送消息的设计与实现28
437客户端显示收到消息的设计与实现29
438客户端核心代码29
第四章 系统测试2;
52测试目标 2;
53测试过程 2;
532测试与结果2;
结 论35
参考文献37
谢 辞38
引言
自从上世纪中叶第一台计算机诞生以来,计算机越来越走进人们的生活当中,
特别是随着计算机网络的发展,把全世界的人们紧密的联系在一起,大大的扩展了
计算机的功能,人们越来越离不开计算机了如今,作为网络应用之一的聊天工具,
越来越受到人们的欢迎和重视现在已有的聊天软件和聊天工具不胜枚举,流行的主
要有>>、>、?0?$0?$ @和郎码和各种的网页聊天室等这
些软件特别是>>升级很快,其功能是越来越来强大,将代表着聊天软件的发展方向
目前,聊天软件的功能除了最基本的文本聊天,已经可以语音聊天,图像聊天,视
频聊天,文件传输等三维聊天,还发展了短信发送,无线聊天,在线游戏等功能,
可以预见在不久的将来,聊天软件将成为人们通过因特网相互联系和娱乐的主要平
台
目前的聊天软件以,模式为主,但A?B作为一种样式语言,A?B技术本身
却存在着诸多的缺陷,如它限制了交互式的选择,创建和重复使用交互式组件也比
较困难,使用不同的扩充有将导致兼容性问题尽管在目前的上,它充当了数
据表示的主要角色这种不协调在发展的初期还没有什么影响,但随着
上信息量的增多和交互性的加强使A?B显得越来越难以胜任以,服务器的传送
方式可分为静态页面和动态页面以A?B文件的形式传送固定数据称之为静态网页;
对用户的请求进行分析,并将结果声称其它代码,利用客户端进行传送此时,会生
成以$、#"、"等为扩展名的脚本程序文件,这些文件根据服务器脚本的分析结
果会有所不同,称之为动态网页单纯的静态页面已经不能满足发展的需要因为静态
页面是用单纯的A?B语言组成的,它没有交互性而为了与上网的用户产生交互的
关系,随后便发展出了如6"、、、6等各种客户端与服务器端的开
发技术6是第三代解决方案,它易于第二代解决方案相结合,创建动态内容,它
使与其它各种技术相结合的以网络为基础的应用更容易和更快速的建立起来这些技
术包括:网络服务器,网络浏览器,应用服务器和其他开发工具
该毕业设计课题为基于的应用技术的聊天工具的设计与实现它是在
通信和文本聊天的基础上来实现一对一、一对多聊天它要求该聊天软件能够
自建服务器,被应用在一个个独立的自治系统中,灵活性很大
2