MyQQ设计
仿QQ聊天软件MyQQ源代码教学(北大青鸟完整版)
需求分析——功能分析
主要功能:
注册与登录 好友管理 消息管理 个人设置
需求分析——界面分析
需要的界面:
注册界面 登录界面 登录后的主界面 查找/添加好友界面 聊天界面 系统消息界面 个人设置界面
头像列表界面
需求分析——辅助类分析
需要添加的辅助类:
DBHelper类 UserHelper 类
小组分工
4
4 4 4 4
软件开发流程
比尔盖子是一名建筑工人 起初只干一些比较简单的 建筑工作 凭个人技术和经验,不需要特 别设计,可以顺利完成
如同编写早期比较小的程序
软件开发流程
新任务:建造一间非常美 丽而完整的房间 工作变得复杂许多
像不断发展的软件,功能 越来越多,越来越复杂
软件开发流程
软件复杂性
图形用户界面 客户/服务器结构 分布式应用 数据通信 超大型关系型数据库
// 判断 ListView 中是否有选中的项 if (lvFaces.SelectedItems.Count == 0) { // … } // 获得选中的头像的索引 int faceId = lvFaces.SelectedItems[0].ImageIndex;
第四次集中编码:A任务
个人信息修改功能
第一次集中编码:难点分析
好友列表——第三方控件 SideBar
SbGroup 类型 Items 属性 Groups 属性 SbItem 类型
第一次集中编码:难点分析
SideBar
// 命名空间 using Aptech.UI; // 添加组 sbFriends.AddGroup("我的好友"); sbFriends.AddGroup("陌生人"); 显示的文字 // 添加项 SbItem item = new SbItem((string)dataReader["NickName"], (int)dataReader["FaceId"]); sbFriends.Groups[0].Items.Add(item); 显示的图像索引
腾讯QQ界面分析
腾讯QQ界面分析伴随着电脑的慢慢普及,人们的聊天的方式也越来越多样化,但是平时我们绝大部分现在正在用的正是腾讯公司的软件QQ,这款软件不仅方便了我们的聊天方式,而且她大大的丰富了我们的交际方式和范围。
对待如此熟悉的一款软件,现在我来主要分析它优美的界面:下边从界面中的交互功能与图标、色彩、导航、窗口和聊天功能创意上的对比方面分析一下腾讯公司的软件QQ。
1、交互功能的进一步广泛20世纪80年代后期,两个国际机构开始把“用户界面设计”作为计算机科学的正式课程,这标志着人们开始重视系统的“可用性”和“用户体验”。
交互设计由IDEO的一位创始人比尔.莫格里奇(bill Moggridge)提出的,当时命名为“软面(soft face)”,后更名为“Interactive Design”。
比如,在腾讯软件QQ的登录界面中,最能体现交互功能的就是“记住密码”功能,表明腾讯公司现在越来越注意与用户之间的交流。
登录成功之后,又会发现交互功能的多次运用,每个用户可以根据自己的喜好更改图表的显示与否和各种图表的位置,更改“我的资料”也是交互功能的运用,每个人可以自行更改自己的各种信息。
同样的,用户还可以更改皮肤,这是人性化越来越明显的象征。
2、图标设计理念图标就是制造方用简单的图的形式让用户了解软件最基本的意义,是具有明确指代含义的计算机图形,界面中的图标是功能标识。
狭义上说是应用于计算机软件方面,包括:程序标识、数据标识、命令选择、模式信号或切换开关、状态指示等。
图标的设计理念有三点:⑴察表象,抓特点。
⑵此及彼,开联想。
⑶析寓意,字表达。
腾讯QQ登录成功后界面中,可以看到很多图标,一系列的图标大小都是相同的,样式丰富,但不繁杂。
如“QQ邮箱”图标是一个冷灰色小信封,让人能一目了然,知道这是什么工具。
又如“查找”图标是一个放大镜的样式,用户自然会想到“搜寻”、“寻找”,用户也能更好运用。
3、色彩以蓝白色为主人类对于不同的色彩会产生不同的生理反应,这一点已经通过科学的实验得到了证实。
MyQQ文档
MyQQ聊天工具一、需求描述某公司出于网络安全考虑,不允许使用QQ、MSN等网络聊天工具,为了提高员工间间的沟通效率,公司决定开发一套内部使用的实时聊天工具MyQQ。
项目调研期间,通过与该公司领导的面谈,并做出总结和归纳之后,他们需要软件具备以下功能:1.用户注册要使用本聊天工具,必须具备一个MyQQ号码,通过注册功能填写昵称、年龄、性别、密码,由系统自动生成一个MyQQ号码,号码从10000开始,依次递增。
注册时,真实姓名、星座、血型作为选填资料。
2.用户登录要使用本系统必须先登录。
登录的时候需要输入正确的MyQQ号码和密码。
3.个人信息编辑用户登录后,可以修改自己的个人信息。
个人信息分为两部分:个人资料和安全设置。
1)个人资料个人资料包括用户号码(不可修改)、用户昵称、性别、真实姓名、年龄、星座、血型。
其中星座、血型需要提供列表进行选择。
2)安全设置安全设置是身份验证条件设置。
身份验证条件包括3个:允许任何人加我为好友,需要身份验证才能加我为好友,不允许任何人加我为好友。
用户注册后默认的是允许任何人加我为好友。
4.查找/添加好友1)查找好友查找分为通过QQ号码查找和昵称查找。
2)添加好友在查找的结果中选择一个用户,可以添加他为自己的好友。
要求不能添加自己为好友,已经是好友的不能重复添加。
5.聊天双击好友的qq号码,弹出聊天窗口,即可进行聊天。
6.其他要求1)建议使用的技术本软件使用WinForms+技术来实现。
2)数据库使用 SQL Server 2005 数据库。
二、开发环境开发工具:Visual Studio 2008、SQL Server 2005。
三、需求分析1.使用 SQL Server 设计数据库表(1)Users:用户表。
(2)Friends:好友表。
(3)Star:星座表。
(4)BloodType:血型表。
(5)FriendshipPolicy:好友策略表。
(6)Messages:消息表。
迷你QQ最终设计文档
迷你QQ最终详细设计文档1.总体设计 (1)1.1需求概述 (1)1.2软件结构 (2)1.3参考资料 (2)2.程序描述 (3)2.1类及其方法的功能设计 (3)2.2用户界面设计 (5)2.3算法 (9)2.4注释设计 (9)1.总体设计1.1需求概述随着Internet的发展,微博、SNS社交网站等,都在越来越多的融合即时通信的功能,其中典型的QQ、MSN、GTalk等,已经成为大家网络生活中不可缺少的一部分。
有了即时通信软件,我们能和亲戚朋友密切联系,可以广泛交友,为此我进行了MiniQQ的开发。
1.2软件结构1.3参考资料: JAVA 核心技术卷I & 卷II (原书第八版)(机械工业出版社)2.程序描述2.1类及其方法的功能设计(一)服务器端1.DatabseServer :1.1 DatabseServer类main()方法的功能:程序入口为多个连接的客户端确定其所需服务,分配相应线程1.2 DatabaseServerHandler类(实现Runnable接口)Run()方法的功能:判断连接的客户端所需的服务命令连接DatabaseHelpsr类,直接提供对数据库的访问和操作1.3 MessageServerHandler类(是吸纳Runnable接口)Run()方法的功能:接收连接客户端所需发送的消息,账号,找到地址发送消息,并把消息储存在数据库2. DatabaseHelpser类2.1 DatabaseHelper类DatabaseHelper()方法的功能:注册驱动器,连接数据库executiveCommand()方法的功能:解析命令和参数,并调用其他帮助方法执行命令,返回字符串结果 ShutDown()方法的功能:关闭与数据库的连接(二)客户端1. Main:1.1 Main类main() 方法的功能:程序入口对关闭事件进行响应1.2 Login类Login()方法的功能:初始化登入窗口提供注册,忘记密码,登入的选择2. Register2.1 Register类Register()方法的功能:创建注册窗口init()方法的功能:初始化注册窗口,提供注册服务3. Forget3.1 Forget类Forget()方法的功能:创建忘记密码的窗口init()方法的功能:初始化忘记密码窗口,提供找回密码服务4. Talking4.1 Talking类Talking()方法的功能:创建聊天窗口对关闭事件进行响应init()方法的功能:初始化聊天窗口刷新好友类表管理聊天面板(不同正在聊天好友间的切换)提供查看资料,查找好友,查看聊天记录,文件传输,语音聊天,等等功能4.2 ListenServer类(Talking类的内部类,实现Runnable接口)Run()方法的功能:调用DatabaseClient类的startReceive()方法开始不断监听来自服务器的好友消息4.2 ListenApp类(Talking类的内部类,实现Runnable接口)Run()方法的功能:调用DatabaseClient类的startApplication()方法开始不断监听来自好友的应用请求4.3 MyActionListener类(Talking类的内部类,实现ActionListener接口)actionPerformed()方法的功能:更改分组的帮助类4.3 FontChange类(Talking类的内部类,继承JDialog类)FontChange()方法的功能初始化字体对话框,提供选择字体,字号,颜色的功能5.DatabaseClient5.1 DatabaseClient类sendCommand()方法的功能:连接服务器,发送命令和相应参数startSend()方法的功能:连接服务器,启动messageSender线程发送信息startReceive()方法的功能:连接服务器,启动messageReceiver线程接收信息startApplication()方法的功能:启动friendApplication线程监听好友的应用请求fileTrantsport()方法的功能:向好友请求传输文件,启动sendFile线程startAudioChat()方法的功能:向好友请求语音聊天,启动audionChat线程(注:各个不同的线程类接都实现Runnable接口,有着对应的功能。
QQ设计规范
六、整齐的概念和应用
类似这样“豆腐块”的文字排列,在大型网站中尤为重要。 如何去分割和组织大量繁杂的信息?将文字块当作图片一样来排版优化,来平衡页面。 • 对齐 网页设计中的”对齐”同传统的印刷排版中的对齐概念是一样的,并且同等重要。 并不是说一切都应该在一条直线上,而是尽可能的保持一贯的整齐,不仅左对齐,也要尽量右对齐。使我们的设计更有序。更方便阅读。
二、文本框设计规范
1.基础规范
• 文本框 a. 搜索框文本框的长度应适中,至少应提供显示10个中文字符的宽度 b. 搜索组件中使用的文本框必须为单行文本框 c. 文本框的长度不得少于130个像素 高度不得低于18个像素 • 帮助信息 a. 帮助信息一般包括三块内容:限定标签提示、标示性文字、热门关键词提示等, b. “限定标签提示”一般放在搜索框的上面 c. “热门关键词提示”一般放在搜索框下面 d. “标示性文字” 可设置灰色(#cccccc)显示,点击输入框后提示文字消失。提示文字应简明扼要,文字一般用于内容、用途、搜索范围等对用户有 真正帮助的提示,”请输入关键词”这样的提示不应出现.
二、参考指南
01 页面修饰 • 简单的光影效果 • 质感的表现 • 透明效果的应用 02 个性皮肤的应用 03 图标的统一使用 04 图标表意
一、页面修饰
1。简单,不需要繁杂的修饰
一、页面修饰
3. 透明效果
二、个性皮肤
QQ首页个性皮肤:
二、个性皮肤
其他产品个性表现:
建议使用:
五、文字的编排
深蓝色 当使用纯蓝色为文字颜色时,明度数值(B)不大于60%。当蓝色介于纯蓝往天蓝之间的时候,根据色相不同,应对明度值(B)作相应调整。 当色相越接近天蓝时,(B)值应该越低。 很多门户网站使用蓝色为文字颜色,常用的有
myqq9项目代码
SqlDataReader rd = cmd.ExecuteReader();
while (rd.Read())
{
cbo_xing.Items.Add(rd[0].ToString());
SqlDataReader r = cm.ExecuteReader();
while (r.Read())
{
cbo_xue.Items.Add(r[0].ToString());
}
r.Close();
DBHelper.connection.Close();
}
private void btn_zhu_Click(object sender, EventArgs e)
{
string sex;
{
if (DBHelper.connection.State != ConnectionState.Open)
{
DBHelper.connection.Open();
}
SqlCommand cmd = new SqlCommand(string.Format("select Id from BloodType where BloodType='{0}'", xue), DBHelper.connection);
return;
}
if (cbo_xue.Text == " <请选择你的血型>")
{
MessageBox.Show("请选择血型!", "温馨提示", MessageBoxButtons.OK, rmation);
SqlDataReader rd = dd.ExecuteReader();
MyQQ开发文档
Windows程序设计服务器客户端型聊天程序设计方案2006年12月21日服务器客户端型聊天程序设计方案本程序设计分为服务器应用程序及客户机应用程序部分,采用Socket套接字库网络编程。
(UDP)和(TCP/IP)相结合的连接方式,及解决了数据传输的时效性又能保证数据在传输的过程中不会丢失。
另外程序采用多个线程来避免程序阻塞。
具体设计思路及部分代码如下:程序设计目的1:练习使用套接字进行网络编程。
2:练习使用自定义消息。
3:练习多线程方面的编程思想。
4:练习使用各种控件。
服务器与客户端通信方式模型图说明:1,服务器首先启动并在6020端口进行监听。
等待连接。
2,客户端发出连接请求,并发出用户信息。
3,服务器验证用户信息。
返回结果给客户。
4,如果验证成功将好友信息发给客户并通知启动聊天信息接收线程。
5,应用程序启动成功~文件传输流程图说明:1,用户1向用户2发出传送文件请求。
并发送文件相关信息等待用户2回应。
2,用户2收到请求,回复用户1如果同意接收启动文件接受线程统治用户1可以发送文件了。
否则通知用户1不接受。
3,用户1 收到回复后做相应的动作。
4,文件开始传送。
程序有关连接及端口信息1:(UDP)连接部分:服务器监听端口6020作用:接收客户机发送登录和申请号码等数据用户信息发送接收端口6000客户机接收服务器发送身份验证信息60302:(TCP/IP)连接/部分端口号:4000作用1:接收好友信息2:服务器控制DOS :^+命令启动网页:&+网站地址3:服务器发送信息用户使用说明1:首先启动用户服务器端程序,程序运行如下:2:用户登录:输入用户名3:申请号码3:登录成功4:发送消息文件传输功能点击传文件出现以下对话框选择要传输的文件点击发送即可发出象对方请求(对方必须在线否则发送失败)对方会自动弹出以下窗口,点OK即为接收。
数据发送中文件传输完成程序设计方案及部分代码:一客户端程序:1:建立及于对话筐的MFC工程QQClient。
MyQQ聊天程序设计
2. 好友管理
用户可以添加、删除、查找好友,并实时在线查看好友的在线状态。用户可以通过好友列表直接好友进行聊天。
3. 群组聊天
用户可以创建、加入群组,并在群组内与群友进行聊天对话。群组聊天提供了一个多人实时交流的平台。
4. 文件传输
用户可以通过My聊天程序进行文件的传输。用户可以选择发送多种类型的文件,并在聊天界面进行实时的传输进度显示。
5. 消息通知
用户可以接收到来自好友或群组的消息通知,确保不会错过重要的聊天内容。
实现细节
My聊天程序的实现细节如下:
1. 技术架构
My聊天程序采用C/S架构,即客户端/服务器架构。客户端负责用户界面展示和用户交互逻辑,服务器负责消息的中转和处理。
My
My聊天程序设计
简介
My聊天程序是一款基于网络的实时聊天应用程序。该程序旨在提供用户之间的即时通讯能力,使用户能够方便地与朋友、家人和同事进行聊天对话,并共享照片、文件等各种多媒体内容。
本文档将介绍My聊天程序的设计概念、功能特点以及实现细节。
设计概念
My聊天程序的设计遵循以下几个Βιβλιοθήκη 要的概念:1. 用户注册与登录
用户可以通过注册账户来创建自己的My账号,并使用该账号进行登录。账号和密码将身份认证的凭证。
2. 好友管理
用户可以添加、删除、查找好友,并实时在线查看好友的在线状态。好友关系将为用户建立一个互相联系的网络。
3. 实时聊天
My聊天程序支持用户之间的实时聊天对话,用户可以发送文字消息、表情、图片等多种多媒体内容。
4. 群组聊天
MyQQ设计
C#实训项目:MyQQ项目要求和实现第一部分:需求概述某公司处于网络安全考虑,不允许使用QQ、MSNden等网络聊天工具,为了提高员工间的沟通效率,公司决定开发一套北部使用的实时聊天工具MyQQ。
第二部分:整体设计该项目的角色:通过与该公司领导的面谈,并做出总结和归纳以后,他们需要软件具备以下功能:1、用户登录2、用户注册3、个人信息编辑4、查找/添加好友5、好友列表6、好友列表7、点对点聊天8、员工间的群聊9、聊天信息字体颜色、字体类型设置10、查看聊天记录11、修改头像12、邮箱功能13、查看好友信息14、类似QQ的公告新闻15、动态显示好友以及分组16、员工间的文件传输17、聊天主界面的皮肤更改第三部分:实现说明1、用户注册要使用本聊天工具,必须具备一个MyQQ号码,通过注册功能填写昵称、年龄、性别、密码、密保,由系统随机生成一个9位数的MyQQ号码。
注册时,生肖、星座、血型、出生日期作为选填资料。
2、登录:要使用本系统必须登录,登录的时候需要输入正确的MyQQ号码以及密码。
3、个人信息编辑:用户登录后,可以修改自己的个人信息。
个人信息分为三部分:个人资料、密码修改、安全设置。
1)个人资料个人资料包括用户号码(不可修改)、用户昵称、性别、真实姓名、星座、血型、生肖、头像。
其中星座、血型、生肖需要提供列表进行选择。
2)密码修改为了密码安全,用户进行密码修改时,需要就输入当前密码。
3) 安全设置身份验证条件包括3个:允许任何人加我为好友、需要身份验证才能加我为好友、不允许任何人加我为好友。
用户注册后默认的是允许任何人加我为好友。
4、查找/添加好友1)查找好友查找分为基本查找和高级查找。
基本查找又分为“查找所有人“和”精确查找“,可以通过对方的账号或昵称进行查找。
高级查找可以通过省份、城市、年龄、性别进行查找。
2)添加好友在查找的结果中选择一个用户,可以添加他为自己的好友。
要求不能添加自己为好友,已经是好友的不能重复添加。
MyQQ聊天程序设计
My聊天程序设计My聊天程序设计1. 引言随着互联网的快速发展,人们越来越需要一种方便、高效的聊天工具来进行即时通讯。
而作为目前最流行的聊天软件之一,具备了强大的功能和用户友好的界面,成为很多人的首选。
设计一个类似于的聊天程序是很有意义的。
2. 功能设计2.1 用户注册和登录在使用聊天程序之前,用户需要先进行注册,并创建一个账号和密码。
注册成功后,用户可以使用账号和密码登录聊天程序。
2.2 好友管理聊天程序中,用户可以添加好友,并建立好友列表。
好友列表中显示了每个好友的昵称和状态。
用户可以进行好友的添加、删除和查找等操作。
2.3 即时通讯用户可以使用聊天程序发送和接收文本消息、语音消息、图片等。
程序需要提供一个聊天窗口,用户可以在窗口中选择好友进行聊天,并发送各种类型的消息。
2.4 群组功能除了私聊,聊天程序还需要提供群组功能,用户可以创建群组并邀请好友加入。
在群组中,用户可以发送群组消息、管理群组成员等。
2.5 数据存储和同步为了保证用户聊天记录的安全性和可靠性,聊天程序需要提供数据存储和同步功能。
用户的聊天记录需要存储在服务器上,并能够实时同步到用户的设备上。
3. 技术实现3.1 前端前端部分使用、CSS和JavaScript等技术来实现。
利用和CSS 创建用户界面,通过JavaScript实现与服务器的通信和数据处理等功能。
3.2 后端后端部分使用一种服务器端编程语言来实现,如Java、等。
利用后端语言来处理各种业务逻辑,包括用户注册、登录、好友管理、消息发送等。
3.3 数据库为了存储用户数据和聊天记录,聊天程序需要使用数据库来进行数据存储。
可以选择使用关系型数据库,如MySQL,或者使用NoSQL数据库,如MongoDB。
3.4 网络通信聊天程序需要使用网络通信来实现用户之间的消息传递。
可以使用常用的TCP/IP协议来进行通信,也可以使用更高层的协议,如HTTP或WebSocket等。
4.通过设计和实现一个类似于的聊天程序,我们可以提供给用户一个方便、高效的聊天工具,满足用户的即时通讯需求。
QQ个性美化教程通用版
一:登录框部分:1.横竖登陆框修改:删除Default\LoginPanel minilogin_png_bkg.gft进入Res\AppFramework\LoginPanel删除safeminilogin_png_bkg.png safeminilogin_png_bkg2.png 修改图片\Res\LoginPanel mini_defaultbanner2.gft 大小350*266 bmp 或者335*221 bmp(看你自己的图,那个清晰用那个尺寸)竖直登陆修改Default\LoginPanel stdlogin_png_bkg.gft 大小自己确定(297*600)登陆框头像边框:Default\LoginPanel 删除login_head_bkg.gft---------------------------------------------------------------------2.登录框按钮的修改:(不想修改的话可以删除变透明)登录按钮删除Res\AppFramework\LoginPanellogin_btn_down.gftlogin_btn_focus.gftlogin_btn_highlight.gftlogin_btn_normal.gft----------------------------------------------------------------------登录框的多账号登录,设置,登录按钮的修改删除Themes\Default\AppFramework\Buttonbtn_focus.gftbtn_down.gftbtn_highlight.gftbtn_normal.gft------------------------------------------------------------------3.登录框细节修改:修改文件夹:1.Res\AppFramework\LoginPanel1.帐号密码输入框修改:小键盘图标:keyboard.png 大小20*20竖直登录框细节注册新账号newid.png 20*20找回密码password.png 20*20设置netsetting.png 20*202、帐号密码输入框外观蓝色背景(不建议修改)Default\AppFramework\FrameBorderframeBorderEffect_normalDraw.gft3‘登录框右上角最大化最小化关闭按钮修改(和主面板的一样)Themes\Default\AppFramework\SysButton替换自己想要的就行4、多账号状态时头像上删除账号的叉叉按钮图标位置Default\LoginPanelaccountdel.gftaccountdel_down.gftaccountdel_mouseover.gft5、添加待登陆的QQ账号的小加号图标Default\LoginPaneladdaccountbtn_icon_normal.gftaddaccountbtn_icon_highlight.gftaddaccountbtn_icon_down.gft6、添加背景上面的删除按钮Default\LoginPaneladdaccountframe_close_down.gftaddaccountframe_close_mouseover.gftaddaccountframe_close_normal.gft6、添加账号的背景Default\LoginPanelAddAccount_Frame_bkg.gft7、多账号单账号前面的小图标的位置Default\LoginPanel switchbtn.gft------------------------------------------------------------------------------4、登录框的字体修改(只要是涉及到需要改字的地方都在\I18N\2052这个路径下面的配置文件里面记事本打开自己找,下面列举几个)登录框的登录按钮上面的字\I18N\2052 PreLoadStringBundle.xml右键记事本打开<String id="LoginPanel_Online_S">在线</String><String id="LoginPanel_Offline_S">离线</String><String id="LoginPanel_Latent_S">隐身</String><String id="LoginPanel_Busy_S">忙碌</String><String id="LoginPanel_Away_S">离开</String><String id="LoginPanel_Login">登录2 改这里的字即可</String><String id="LoginPanel_RememberPsw">记住密码</String><String id="LoginPanel_Sel_Account">选择本次登录帐号:</String>------------------------------------------------------------------------------------------------------------------------------登录框上面的设置单账号多账号按钮上面的字\I18N\2052 PreLoadStringBundle.xml右键记事本打开<String id="LoginFail_DetailInfo">尊敬的用户,该版本$CON$已经退休了,请您升级到最新版本再登录。
仿QQ聊天软件MyQQ源代码教学北大青鸟完整版
课时 2 2 4
4
4
4 4
软件开发流程
比尔盖子是一名建筑工人
起初只干一些比较简单的 建筑工作 凭个人技术和经验,不需要特 别设计,可以顺利完成
如同编写早期比较小的程序
软件开发流程
新任务:建造一间非常美 丽而完整的房间 工作变得复杂许多
像不断发展的软件,功能 越来越多,越来越复杂
软件开发流程
软件复杂性
阶段项目 MyQQ
阶段项目简介
任务:MyQQ 聊天工具 系统结构:C/S,通过数据库交换聊天消息 小组形式完成 学时:24学时
项目实施和课程安排
课程进度 第一次课 第二次课 第三次课 第四次课 第五次课 第六次课
描述 项目讲解 项目准备阶段 任务讲解 第一次集中编码 任务讲解 第二次集中编码 任务讲解 第三次集中编码 任务讲解 第四次集中编码 总结和答辩
MyQQ聊天程序设计
My聊天程序设计正文:1、引言本文档旨在提供关于My聊天程序设计的详细说明和指导。
My 是一款基于网络的聊天程序,旨在提供轻松、安全和实时的聊天体验。
2、需求分析2.1 功能需求2.1.1 用户注册2.1.2 用户登录2.1.3 添加好友2.1.4 聊天功能2.1.5 发送图片和文件2.1.6 创建群组2.1.7 加入群组2.1.8 群组聊天功能2.2 非功能需求2.2.1 用户界面友好2.2.2 数据安全性2.2.3 实时消息传输3、系统设计3.1 架构设计3.1.1 客户端-服务器模型3.1.2 MVC设计模式3.1.3 数据库设计3.2 用户注册设计3.2.1 用户名和密码校验3.2.2 用户信息存储3.3 用户登录设计3.3.1 账号密码验证3.3.2 登录状态管理3.4 好友管理设计3.4.1 查找好友3.4.2 添加好友3.4.3 删除好友3.5 聊天功能设计3.5.1 单聊功能3.5.2 消息发送和接收3.5.3 消息存储和读取3.6 图片和文件发送设计3.6.1 图片和文件的传输3.6.2 图片和文件的存储3.7 群组聊天设计3.7.1 创建群组3.7.2 邀请成员加入群组3.7.3 群组聊天功能4、系统实现4.1 开发环境4.2 开发技术4.3 数据库选择和配置4.4 代码实现4.5 系统测试5、部署与维护5.1 系统部署5.2 系统维护6、附件本文档所涉及的附件包括:系统架构图、用户界面设计图、数据库设计图、代码实现文档等。
7、法律名词及注释以下是本文档中可能涉及的法律名词及其注释:1. 用户隐私保护:指在用户使用聊天程序过程中,程序应保护用户的个人信息和隐私不被泄露。
2. 数据安全性:指在数据传输和存储过程中,要采取相应的安全措施,确保数据不会被非法获取和篡改。
3. 著作权:指相关程序的著作权归属以及用户在程序中发布内容的可分性和权益。
4. 知识产权:指程序中的程序源代码、界面设计、图像、音频、视频等知识产权的归属和保护。
MYQQ项目开发文档
武汉理工大学课程名称:C#软件开发专业/年级:软件工程201101项目开发小组名单:组员A:叶晓组员B:杨洋组员C:万鹏摘要现在科技迅速发的,计算机的普遍给我们的生活带来了很大的方便。
目前一些家电公司用笔和纸来记录他们的销售和进货情况,这样做很麻烦。
现今有数据库的安全性比较高,用C#编程语言来实现的家电库存管理系统应用在其上面会很方便。
在进货的时候,输入要进货的产品名和型号,点击确定就行了。
摆脱了以往的纸质文档。
这样不仅方便,而且会给公司带来更多的时间来管理。
目录1 页面布局 (IV)1.1 界面布局 (IV)1.1.1 登录页面设计.................................................................................... I V1.1.2 注册页面设计 (V)1.1.3 主页面................................................................................................ V I1.2 数据库设计 (IX)2 系统设计 (XI)2.1 系统功能图 (XI)2.2 系统流程图 (XII)3 主要功能 (XIII)3.1 功能简介 (XIII)3.2功能实现 (XIII)3.2.1 页面设计控件说明 (XIII)3.2.2 主要功能实现代码 (XVI)4 功能调试 (XXXIV)4.1 登录窗口调试 (XXXIV)4.2 主功能界面调试 (XXXV)总结 (XXXV)1 页面布局1.1 界面布局MYQQ聊天系统的整体布局采用QQ软件的布局方式,通过用户的需求合理设计。
首相是登陆页面,用户需要注册一个属于自己的MYQQ号码,然后输入自己的MYQQ号码和密码进行身份验证,进入MYQQ主页面进行操作。
在MYQQ主页面中,有显示以及修改个人头衔、昵称功能。
MyQQ测试计划书
MyQQ 测试计划书1 .简介“MyQQ”项目为一个网上聊天系统,该系统主要包括用户注册,登录,个人信息编辑,查找/添加好友,好友列表及聊天等模块。
该系统可以实现在线实时聊天等好友管理功能。
“MyQQ”项目的“测试计划”文档有助于实现以下目标:1.确定项目内各个功能是否正确。
2.数据的传输的完整性,正确性,安全性。
3.系统是否具有良好的兼容性。
4.应用程序是否具有良好的易用性和可操作性。
2 .测试提交文档1.测试用例通过测试前的准备和测试后的总结,不断完善测试用例,并按照模块分类,模块内分出优先级。
2.测试日志测试人员每天或阶段性进行小结,记录进行了哪些工作,包括未发现问题的部分和对MyQQ软件的评价,以上记录保存到192.168.5.1的STB中定期(每天)进行谈论总结。
3.缺陷报告测试完成后,对MyQQ软件进行整理和分析。
4.验收测试总结报告验收测试完成后,按照要求填写验收测试总结报告,对整个测试过程进行小结。
3. 测试模块范围4.系统风险由于目前同类产品比较多,市场压力比较大。
(列如MSN)计划的测试时间不够充足,使软件不够完善。
测试人员的培训。
开发进度的变化,需求或设计的变更。
开发组的版本控制。
5. 测试策略5.1申请登入功能测试6.测试进度6.1 各测试阶段资源要求及时间安排7.资源7.1 角色下表列出了在此项目的人员配备方面所作的各种假定。
7.2 系统测试项目所需的系统资源。
1.硬件环境测试环境:1.8GHzCPU,内存1GB,可用空间20GB测试管理工具环境:1.8GHzCPU,内存1GB,可用空间20GB数据库环境:1.8GHzCPU,内存1GB,可用空间20GB2.软件环境测试环境:Windows xp sp3测试管理工具环境:Windows xp sp3 数据库环境:SQL Server2008。
MyQQ阶段项目V10合集
数据验证测试
单元测试
安全性测试
测试阶段涉及的活动
强度测试
集成测试
维护阶段
• 为客户提供故障诊断支持
– 网络 – 电话 – 上门
• 应用程序要求的任何软件升级
– 版本 – 补丁
软件开发过程
比尔通过类似软件瀑布模型的方 式成功完成了自己的建筑项目
阶段项目需求描述及效果展示
用户注册 用户登录 个人信息编辑 查找/添加好友 好友列表 聊天
需求分析——功能分析
• 主要功能:
– 注册与登录 – 好友管理 – 消息管理 – 个人设置
需求分析——界面分析
• 需要的界面:
– 注册界面 – 登录界面 – 登录后的主界面 – 查找/添加好友界面 – 聊天界面 – 系统消息界面 – 个人设置界面 – 头像列表界面
需求分析——辅助类分析
• 需要添加的辅助类:
• 产生明需确求分的析 交付成果需求说明书
• 阶段之间通过文档进行沟通
设计
设计文档
• 每个阶段都必需完成全部规定的任务(文
档)后才能够进入下开一发 个阶段程序
测试
测试报告 维护
可行性研究与计划阶段
• 确定项目目的 • 了解系统中客户的期望 • 确定系统的规模 • 论证项目可行性
– 技术可行性 – 经济可行性 – 操作可行性 – 其他需求
需求分析阶段
设计阶段
• 目的:根据用户的需要制定标准,划分并分
配任务
构建原型
设计GUI标准
设计阶段涉及的活动
设计数据库
设计过程模块
分配任务和监督任务
设计编码标准
开发阶段
开发阶段
对用户界面 进行最后的修改
概念版设计,触摸未来的QQ
最后出 的 4 是什么 现 08 意思呢 请大胆发挥体们的想象力吧! ?
一
吏用体验
嚣 畿
“ 西西. 体电脑 中 安装的是什么 测
览 嚣啊. 水货吗? 慢死了 ” ! “ 没办法 唉, 我千懂. 随 下 兢 便
的一个, 再加上电脑配置也不怎 么样。
远 超T 浏览器哦 超快的启动和浏 览 T 速 度. 开机 后首次 宕动不到3 , 秒 再次 启 动只 . 打 网 蔫0 秒. 开 页比一般I浏览 2 E 器 几 快 倍l 投 ̄( b i 和普通【 L W k) e t 1 由接摸 E 式 在 速和兼容之阊智能切 。 , 快 换 无须
还推 出了全 新 的登录 面板 , 动感 相框、 动态 肾景 四盘 武的 表情
管 理界面、 标签聊天窗口、D 多 3交互等一 系列新功能、 新体 验 这不 仅是 一 场诬觉盛宴, 也是一次伟大的 科技革命!
Q 实验室的新宠 Q
所以, 5 5… …” 555 O 剁览器。 0 ”
Q 浏览器 Q
起步 干预。 简洁清爽的u设计. I 聪明曲
“ 没关 系. 给 评介绍遣 赣 哦. 我
0 实验室的新宠—— O 浏览 器. 0 0
失 速链 接. 动计算最常访问的 自 硒址,
叮 晰 索历 清 搜 史记 录. 拽一 个 天前看 N 吐的 帖子不再是什么 罐事。 半透明 的皮 戋效果 更加贴合Wn o s7 idw 系统下的
淀 粉 们, 用遮 软件之前先 来雷 垂
寅示视 频. 保证让 , 尔口水直流!
另类的贪吃蛇游戏 … 籼
MyQQ演示文稿
一 SQL Server数据库表说明 数据库表说明
(1) Users:用户表 : (2) Friends:好友表 : (3) Star:星座表 : (4) BloodType:血型表 BloodType: (5) FriendshipPolicy:好友策略表 : (6) Messages:消息表 : (7) MessageType:消息类型表 :
用户表Users:存放用户基本信息、安全设置的信息。 :存放用户基本信息、安全设置的信息。 用户表
列名
Id LoginPwd UserState FriendshipPolicyId NickName FaceId Sex Age Name StarId BloodTypeId
数据类型
int varchar(50) varchar(50) int varchar(50) int varchar(50) int varchar(50) int int
允许空
否 否 血型名称
说明
主键,自增,标识种子 主键,自增,标识种子1
消息表Messages :存放聊天消息、添加好友请求消息。 存放聊天消息、添加好友请求消息。 消息表
列名
Id FromUserId ToUserId Message MessageTypeId MessageState MessageTime
通过账号或昵称 查找好友。
通过年龄和性别 查找好友。
根据查找条件 根据对方好友策 略发送添加好友 消息。 查找好友。
查找/添加好友窗体功能: 查找 添加好友窗体功能: 添加好友窗体功能 (1) 通过选项卡和单选按钮显示不同查找界面,进行不同类别的查找。 通过选项卡和单选按钮显示不同查找界面,进行不同类别的查找。 (2) 单击查找按钮,可根据用户号码、昵称、年龄和性别等查找条件 单击查找按钮,可根据用户号码、昵称、 查找符合条件的用户;单击上一步按钮回到未查找时的界面; 查找符合条件的用户;单击上一步按钮回到未查找时的界面;单击 加为好友按钮,根据不同的好友策略向对方发送添加好友信息。 加为好友按钮,根据不同的好友策略向对方发送添加好友信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C#实训项目:MyQQ项目要求和实现
第一部分:需求概述
某公司处于网络安全考虑,不允许使用QQ、MSNden等网络聊天工具,为了提高员工间的沟通效率,公司决定开发一套北部使用的实时聊天工具MyQQ。
第二部分:整体设计
该项目的角色:
通过与该公司领导的面谈,并做出总结和归纳以后,他们需要软件具备以下功能:
1、用户登录
2、用户注册
3、个人信息编辑
4、查找/添加好友
5、好友列表
6、好友列表
7、点对点聊天
8、员工间的群聊
9、聊天信息字体颜色、字体类型设置
10、查看聊天记录
11、修改头像
12、邮箱功能
13、查看好友信息
14、类似QQ的公告新闻
15、动态显示好友以及分组
16、员工间的文件传输
17、聊天主界面的皮肤更改
第三部分:实现说明
1、用户注册
要使用本聊天工具,必须具备一个MyQQ号码,通过注册功能填写昵称、年龄、性别、密码、密保,由系统随机生成一个9位数的MyQQ号码。
注册时,生肖、星座、血型、出生日期作为选填资料。
2、登录:
要使用本系统必须登录,登录的时候需要输入正确的MyQQ号码以及密码。
3、个人信息编辑:
用户登录后,可以修改自己的个人信息。
个人信息分为三部分:个人资料、密码修改、安全设置。
1)个人资料
个人资料包括用户号码(不可修改)、用户昵称、性别、真实姓名、星座、血型、生肖、头像。
其中星座、血型、生肖需要提供列表进行选择。
2)密码修改
为了密码安全,用户进行密码修改时,需要就输入当前密码。
3) 安全设置
身份验证条件包括3个:允许任何人加我为好友、需要身份验证才能加我为好友、不允许任何人加我为好友。
用户注册后默认的是允许任何人加我为好友。
4、查找/添加好友
1)查找好友
查找分为基本查找和高级查找。
基本查找又分为“查找所有人“和”精确查找“,可以通过对方
的账号或昵称进行查找。
高级查找可以通过省份、城市、年龄、性别进行查找。
2)添加好友
在查找的结果中选择一个用户,可以添加他为自己的好友。
要求不能添加自己为好友,已经是好友的不能重复添加。
5、好友列表
用户登录后,显示三个分组,分别为我的好友、陌生人、黑名单。
用户的所有好友都显示在“我的好友“组中,包括好友的头像和昵称。
6、聊天
如果有好友发来聊天消息,相应的好友头像要闪烁,双击头像打开聊天窗口显示好友发来的未读消息,并可以向好友发送报告消息。
7、聊天记录
当用户打开聊天窗口后,可以查看与该好友的所有聊天记录。
8、文件传输
用户可以向好友进行文件发送、传输。
9、消息管理器
用户如果想更方便的查看所有的聊天记录,可以打开消息管理器。
10、群聊
所有公司员工均可以进行群聊,方便沟通。
窗体右下角显示所有员工用户列表。
11、主窗体皮肤修改
为了缓解视觉疲劳,用户可以进行皮肤修改。
用户单击右上角的颜色调节按钮。
12、公司公告
为了方便公司信息的发布,系统实现了类似QQ新闻的公告功能。
当管理员发布了公告后,所有在线用户的右下角会淡淡的出现一个公告窗体。
13、公司邮箱
14、头像修改
用户可以根据自己的喜好,进行头像修改。
第四部分:基本功能小组分工
第五部分:对应的知识内容
1、SQL 2005数据库设计。
2、熟悉sql语句(增、删、改、查)。
3、对WinForm窗体各个控件的灵活运用。
4、对各个控件的属性的灵活运用。
5、运行进行数据库连接,查询和操作数据库。
6、会使用Command的常用方法。
7、数据集DataSet、以及适配器的使用。
8、用DatagridView显示和操作数据库
9、会使用外部控件
10、List<T>使用
11、会自己制作Windows窗体控件。
12、能对方法重写、方法重载
13、使用多线程
14、会MD5 、SHA1加密
15、灵活运用XML文件(写入、读取)
16、熟悉继承、多态、封装。
11。