多功能聊天软件的设计与开发
——文字聊天/文件传输模块
摘 要
当前中国的互联网技术已经进入了一个飞速发展的时期,即时通讯工具作为当今网络应用的主流,越来越受到了人们的青睐,使人们的网上生活更加丰富多彩。当今使用最为广泛的即时通信工具——聊天软件,可以方便人们随时随地进行在线交流,比如腾讯公司的QQ聊天软件。本毕业设计就是模拟QQ聊天软件,开发一个包括文字聊天、文件传输、语音及视频交流等功能的聊天软件。
本设计的开发采用C/S结构,在基于.NET开发环境下,使用C#编程语言进行开发。本文首先论述国内外聊天工具的发展情况和现今的发展方向,并对开发环境和开发语言进行了简单介绍;对本设计所要开发的多功能聊天软件作了较为全面的需求分析,并给出了多功能聊天软件的设计方案,主要功能包括文字聊天、文件传输、语音聊天及视频聊天等;本毕业设计主要实现的是多功能聊天软件的部分功能,即文字聊天、文件传输等功能,主要完成的任务包括服务器模块的设计、数据库的设计、添加好友、文字聊天和文件传输等功能。与另一位同学开发实现的语音聊天与视频聊天模块集成在一起,构成一个实用的、功能完善的聊天软件,达到预期目标;通过运行、测试与分析,该多功能聊天软件运行稳定、可靠,具有一定的实用价值。
关键词:聊天软件;文字聊天;文件传输;C/S结构;QQ聊天软件
目 录
1 引言 1
1.1 课题背景 1
1.2 国内的发展现状 1
1.3 本课题研究的意义 2
1.4 本文的主要工作 2
2 系统需求分析 2
3 开发环境及开发工具 3
3.1 开发环境的概述 3
3.2 C#语言的概述 5
3.3 SQL数据库的介绍 5
4 多功能聊天软件的设计方案 6
4.1 聊天系统流程的分析与设计 6
4.2 数据库模块的分析与设计 7
4.3 添加好友模块的分析与设计 8
4.4 服务器模块的分析与设计 9
5 文字聊天、文件传输模块的设计与分析 9
5.1 文字聊天模块的分析 9
5.2 文字聊天模块功能具体实现 9
5.3 文件传输模块的分析 12
5.4 文件传输模块功能具体实现 13
6 添加好友、服务器以及其它特殊功能模块实现分析 15
6.1 添加好友模块功能具体实现 15
6.2 服务器模块功能具体实现 15
6.3 好友信息窗体显示、排序功能具体实现 16
7 系统的综合测试与分析 17
结 论 21
参考文献 22
致 谢 23
声 明 24
系统需求分析
此聊天软件系统是模拟现今国内最为流行的即时性通讯工具QQ,其功能类似于QQ,能够实现注册、登录、添加好友、文字聊天、文件传输、语音聊天、视频聊天等功能。该聊天软件系统是采用C/S结构,也就是客户端与服务器端的结构体系,基于对该聊天软件功能的分析,分别对客户端与服务器端进行了设计。
该聊天软件的服务器端是用来实现对客户端提交的用户信息进行处理的功能。服务器设计内容包含:信息接收、注册、登录、刷新、更新、用户退出处理、添加好友等。信息接收是提供服务器接受用户端发送信息的功能;注册是服务器接受到用户的注册信息请求后,并将其请求信息写入到数据库,为用户的注册提了相关服务;登录是服务器通过验证登录时信息来实现相关服务; 刷新是服务器每过一段时间用来刷新一次,来显示用户当前在服务器的信息状况,如在线状态等;更新是服务器对用户在服务器中信息操作进行相关的服务;用户退出处理是服务器在用户推出聊天系统后作出的相关处理工作;好友添加是服务器将用户的好友信息写入数据库中用户好友表的操作。
客户端既是用户使用的应用程序端,用户通过该聊天软件的客户端来实现网上聊天的相关功能:注册、登录、添加好友、文字聊天、文件传输、语音聊天、视频聊天等。注册的功能是提交用户相关信息以及获得一个属于自己登录该聊天软件系统的用户ID号;登录的功能是实现验证用户信息与合法使用该聊天软件系统的权限;添加好友是实现用户之间好友添加功能;添加好友成功后,就可以与好友之间开始文字聊天、文件传输、语音聊天、视频聊天等功能。
(1)该服务器的运行环境:
① 操作系统:windows2000或windows2003;
② 内存:256M以上(最低为256M);
③ CPU:Intel(R) Celeron(R) 2.0GHz或AMD 1800+以上均可;
④ 其它:Microsoft .NET Framework SDK。
(2)客户端的运行环境:
① 操作系统:windows XP或windows2003等;
② 内存:256M以上(最低为256M);
③ CPU:Intel(R) Celeron(R) 2.0GHz或AMD 1800+以上均可;
④ 摄像头、耳机等外部设备。
第一次使用系统的用户通过填写个人信息来注册,服务器返回一个注册ID号给注册用户,用来登录用。已经注册的用户可以在验证他的登录信息(一般指用户名和密码)后登录系统。在线用户通过查看所要添加好友的用户列表相关的信息,并且向添加好友发送请求添加的信息,好友通过验证后,向请求方发送同意添加消息,请求方添加完成后,并把相关信息存入到好友表的数据库中。在添加完好友后,两人同时在线时,就可以聊天了。