即时通讯课程设计.docx
《即时通讯课程设计.docx》由会员分享,可在线阅读,更多相关《即时通讯课程设计.docx(18页珍藏版)》请在冰点文库上搜索。
即时通讯课程设计
《计算机应用系统(软件)》课程设计报告
题目:
即时通讯软件
专业:
计算机科学与技术
班级:
学号:
姓名:
指导教师:
完成日期:
2014年8月23日
一、系统需求分析
➢项目名称
“MyQQ”聊天系统
➢开发背景
在当今信息化的时代,人们需要简捷快速的方式进行沟通。
用手机交流存在费用高,
操作麻烦的问题。
因此开发一个基于C/S架构的QQ,可解决在局域网范围内与好友进行便利交流,无需任何费用。
1、文档说明
改文档描述了MyQQ的功能、数据库、以及ER图、等、让用户可以大体的了解该软件安的功能。
2、实现功能
01注册QQ号
02登录到主界面
03登录后可以显示好友列表、QQ头像、未查看的消息
04可以通过性别、年龄、QQ号查询好友,并添加好友
05编辑个人的信息、修改密码、设置添加好友的模式
06可以与好友进行实时聊天
07头像列表、可以从100个头像里面选择自己喜欢的。
08、可以设置聊天字体,颜色。
3、功能说明
1、登录
显示登录界面。
用户输入用户名称和口令后,提交页面。
系统验证用户的登录:
若用户名称或口令不正确,系统显示登录失败消息,用户可再次登录;若用户名
称和口令正确,登录成功,系统显示一个登录后的页面,可供用户进行聊天。
若
忘记密码,可找回密码。
2、注册、忘记密码
用户必须先申请QQ号,才能登录MYQQ系统。
用户注册信息的妮称不能相同。
注册信息除包含基本资料外,还包含星座和血型,忘记密码可以找回。
3、登录后主窗体
显示好友信息,扫描未读聊天信息,同时来消息的好友头像闪烁。
可添加和删除
好友,并将头像设置为小图标。
4、查找添加好友
查找好友的方法可有精确查找和模糊查找。
也可通过年龄和性别进行查找。
可将
查到的网友添加为好友。
个人信息管理
可以修改个人信息资料,如头像等。
也可进行安全设置。
如更改密码。
更改完成
显示更改成功
6、聊天
可与好友进行聊天。
信息即时更新。
7、头像列表
用列表的方式显示系统提供的头像。
供用户选择。
8、系统消息
用户在操作MYQQ系统时,出现异常均采用系统消息的方式进行提示
系统的UML基本模型
1、用例图
三、数据库设计
(1)E-R图
(2)数据库逻辑结构
表名
功能说明
Users
存储用户信息
Messages
存储QQ消息
MessageType
存储QQ消息类型
Friends
存储好友
FriendshipPolicy
存储好友策略
bloodType
存储血型
star
存储星座
SavePwd
保存密码
1、用户信息表Users
字段名称
含义
类型
约束
其它说明
Id
QQ号码
Int(4)
主键
标识种子
10000
LoginPwd
QQ密码
varchar(50)
非空
FriendshipPolicyId
好友策略ID
Int(4)
非空
NickName
昵称
varchar(50)
非空
FaceId
图像ID
int
Sex
姓别
varchar(50)
非空
Age
年龄
int
非空
Name
真实姓名
varchar(50)
StarId
星座ID
int
BloodTypeId
血型ID
int
State
在线状态
int
非空
Status
身份证号码
varchar(50)
非空
15~18
2、QQ消息表Messages
字段名称
含义
类型
约束
其它说明
Id
发消息的用户号码
int
主键
FromUserId
收消息的用户号码
int
非空
ToUserId
消息内容
int
非空
Message
外键
varchar(50)
MessageTypeId
消息状态
int
非空
MessageState
消息发送时间
int
非空
MessageTime
发消息的用户号码
datetime
非空
3、QQ消息类型表MessageType
字段名称
含义
类型
约束
其它说明
Id
int
主键
MessageType
消息类型
int
非空
4、存储好友表Friends
字段名称
含义
类型
约束
其它说明
Id
int
主键
HostId
主机QQ号码
int
非空
FriendId
好友QQ号码
int
非空
5、好友策略表FriendshipPolicy
字段名称
含义
类型
约束
其它说明
Id
int
主键
FriendshipPolicy
策略类型
varchar(50)
非空
加为好友
6、血型表bloodType
字段名称
含义
类型
约束
其它说明
Id
int
主键
BloodType
血型类型
varchar(50)
非空
7、星座类型表star
字段名称
含义
类型
约束
其它说明
Id
int
主键
Star
星座类型
varchar(50)
非空
8、密码表SavePwd
字段名称
含义
类型
约束
其它说明
Id
int
主键
LoginId
QQ号码
varchar(50)
LoginPwd
QQ密码
varchar(50)
三、系统运行结果(截图)
1、登录界面:
2、申请QQ界面
3、忘记密码窗体
4、主窗体:
5、修改个人信息
6、查找好友界面:
7、聊天界面:
8、设置字体
9、有新消息提示
10、退出
核心代码
1、整体类截图
2、登录
3、查询添加好友
4、读取添加好友信息和发送添加好友信息
五、课程设计总结
这个即时通讯软件MyQQ是使用C#和SQL共同开发的C/S模式的应用程序、实现了局域网内的通讯、
开发的时候遇到很多问题、比如数据库的设计、如何实现即时聊天、如何实现局域网通讯、如何实现有未读消息就发出声音等。
不过随着这些问题的慢慢解决、自己也成长了很多、对C#和SQL掌握更加熟练了。
附件:
代码和数据库文件放在另外一个文件夹里面。