简单QQ聊天系统资料.docx

上传人:b****4 文档编号:3972548 上传时间:2023-05-06 格式:DOCX 页数:49 大小:883.64KB
下载 相关 举报
简单QQ聊天系统资料.docx_第1页
第1页 / 共49页
简单QQ聊天系统资料.docx_第2页
第2页 / 共49页
简单QQ聊天系统资料.docx_第3页
第3页 / 共49页
简单QQ聊天系统资料.docx_第4页
第4页 / 共49页
简单QQ聊天系统资料.docx_第5页
第5页 / 共49页
简单QQ聊天系统资料.docx_第6页
第6页 / 共49页
简单QQ聊天系统资料.docx_第7页
第7页 / 共49页
简单QQ聊天系统资料.docx_第8页
第8页 / 共49页
简单QQ聊天系统资料.docx_第9页
第9页 / 共49页
简单QQ聊天系统资料.docx_第10页
第10页 / 共49页
简单QQ聊天系统资料.docx_第11页
第11页 / 共49页
简单QQ聊天系统资料.docx_第12页
第12页 / 共49页
简单QQ聊天系统资料.docx_第13页
第13页 / 共49页
简单QQ聊天系统资料.docx_第14页
第14页 / 共49页
简单QQ聊天系统资料.docx_第15页
第15页 / 共49页
简单QQ聊天系统资料.docx_第16页
第16页 / 共49页
简单QQ聊天系统资料.docx_第17页
第17页 / 共49页
简单QQ聊天系统资料.docx_第18页
第18页 / 共49页
简单QQ聊天系统资料.docx_第19页
第19页 / 共49页
简单QQ聊天系统资料.docx_第20页
第20页 / 共49页
亲,该文档总共49页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

简单QQ聊天系统资料.docx

《简单QQ聊天系统资料.docx》由会员分享,可在线阅读,更多相关《简单QQ聊天系统资料.docx(49页珍藏版)》请在冰点文库上搜索。

简单QQ聊天系统资料.docx

简单QQ聊天系统资料

武汉工程大学

计算机科学与工程学院

国家卓越工程师计划校企合作

综合设计报告

设计名称:

软件工程综合设计

设计题目:

简单QQ聊天系统

学生学号:

专业班级:

学生姓名:

学生成绩:

指导教师(职称):

企业指导教师:

课题工作时间:

2013年6月24日至2013年7月5日

说明:

1、报告中的第一、二、三项由指导教师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。

2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。

3、指导教师评语一栏由指导教师就学生在整个设计期间的平时表现、设计完成情况、报告的质量及答辩情况,给出客观、全面的评价。

4、所有学生必须参加综合设计的答辩环节,凡不参加答辩者,其成绩一律按不及格处理。

答辩小组成员应由2人及以上教师组成。

5、报告正文字数一般应不少于5000字,也可由指导教师根据本门综合设计的情况另行规定。

6、平时表现成绩低于6分的学生,取消答辩资格,其本项综合设计成绩按不及格处理。

7、此表格式为武汉工程大学计算机科学与工程学院提供的基本格式(适用于学院各类综合设计),各教研室可根据本门综合设计的特点及内容做适当的调整,并上报学院批准。

成绩评定表

学生姓名:

学号:

班级:

类别

合计

分值

各项分值

评分标准

实际得分

合计得分

备注

平时表现

10

10

按时参加综合设计,无旷课、迟到、早退、违反实验室纪律等情况。

由设计负责人给出

完成情况

30

20

按设计任务书的要求完成了全部任务,能完整演示其设计内容,符合要求。

10

能对其设计内容进行详细、完整的介绍,并能就指导教师提出的问题进行正确的回答。

报告质量

35

10

报告文字通顺,内容翔实,论述充分、完整,立论正确,结构严谨合理;报告字数符合相关要求,工整规范,整齐划一。

5

课题背景介绍清楚,综述分析充分。

5

设计方案合理、可行,论证严谨,逻辑性强,具有说服力。

5

符号统一;图表完备、符合规范要求。

5

能对整个设计过程进行全面的总结,得出有价值的结论或结果。

5

参考文献数量在3篇以上,格式符合要求,在正文中正确引用。

答辩情况

25

10

在规定时间内能就所设计的内容进行阐述,言简意明,重点突出,论点正确,条理清晰。

15

在规定时间内能准确、完整、流利地回答教师所提出的问题。

总评成绩:

补充说明:

指导教师:

(签字)

日期:

年月日

答辩记录表

学生姓名:

学号:

班级:

答辩地点:

答辩内容记录:

 

答辩成绩

合计

分值

各项分值

评分标准

实际得分

合计得分

备注

25

10

在规定时间内能就所设计的内容进行阐述,言简意明,重点突出,论点正确,条理清晰。

15

在规定时间内能准确、完整、流利地回答教师所提出的问题。

答辩小组成员(签字):

年月日

指导教师评语

 

指导教师:

(签字)

日期:

年月日

一、综合设计目的、条件、任务和内容要求:

综合设计的目的是:

让同学们应用所学相应的专业课程如面向对象方法学、操所系统、数据结构、java高级程序设计、面向对象程序设计等课程的知识,进行全面综合的应用,特别是要运用所学的面向对象方法学的知识,学会使用面向对象的思维方式进行全局的看待软件的设计过程、掌握面向对象方法学课程所学知识,进行全面综合的应用,在软件实现之前先进行面向对象的分析、设计、实现、测试等过程。

综合设计的条件:

该综合设计的条件是要求其先导课程面向对象方法学、操所系统、数据结构、java高级程序设计、面向对象程序设计等课程已经学习。

分组实现,2-3人一组。

本次综合设计特点是校企合作,聘请企业教师来校讲课。

综合设计的任务:

模仿腾讯QQ的系统,要求同学们分组实现QQ聊天系统。

综合设计的内容:

1、使用面向对象的方法对QQ聊天系统进行原型需求分析。

2、对QQ聊天系统进行面向对象的设计。

3、使用面向对象的语言实现聊天系统。

4、对自己设计的软件系统进行测试。

5、根据上面所做的事情撰写综合设计报告

 

指导教师签字:

2013年6月24日

二、进度安排:

6月24–6月26日使用面向对象的方法对QQ聊天系统进行原型需求分析。

6月27-6月28日对QQ聊天系统进行面向对象的设计

6月28-7月3日使用面向对象的语言实现聊天系统

6月28-7月4日系统测试

7月5日答辩

6月24-7月4日撰写综合设计报告

 

三、应收集资料及主要参考文献:

[1]RogersCadenheadJava从入门到精通.北京:

人民邮电出版社.2007年3月

[2]PaulHydeJava线程编程.北京:

人民邮电出版社.2003年11月

[3]李钟蔚Java开发实战宝典.北京:

清华大学出版社.2009年6月

[4] 殷兆麟.Java网络编程基础[M].北京:

清华大学出版社,2004年5月

 

四、综合设计摘要(中文):

本次课程设计实现类似于腾讯QQ的简单聊天系统,目的是为了方便局域网里的通信,给办公或者学习带来方便。

系统的设计与实现,主要的依据是面向对象的编程思想和Java网络编程。

首先根据面向对象的思想,抽象出系统的主要参与者与系统边界,做出系统的用例,然后确定系统的对象,属性与方法;再利用Java的socket网络编程技术,实现各个对象之间信息的交互,由于本系统采用的是C/S架构,所以主要的信息交互在客户端与服务器端进行。

在系统的实现过程中采用的方法与技术有socket网络编程,Java的IO操作,多线程等。

系统考虑到存储的信息量并不是很大,所以采用文件方式进行系统相关信息的存储。

当然,还有利用配置文件的技术保存一些重要的信息,方便系统的实现。

在界面设计部分,主要采用的是Java的Swing技术。

系统的主要功能有用户注册与登录,用户管理,服务器管理,添加、删除好友,与好友进行聊天或者群聊等。

本系统经过不断测试与调试,最终完成了预期功能,满足了用户需求。

关键词:

面向对象;Java;Socket;C/S;Swing

 

五、综合设计Abstract(英文):

TheintegratedesignistoachieveasimplesystemwhichissimilarTencentQQ.ThemainpurposeofthesystemisfacilitateLANcommunication,whichistotheofficeortolearnconvenience.Systemdesignandimplementationarebasedonthemainideasofobject-orientedprogrammingandJavanetworkprogramming.First,accordingtoobject-orientedthinking,abstractsystemsandamajorplayerinthesystemboundary,makingthesystemusecases,andthendeterminethesystem'sobjects,properties,andmethods;ItreuseofJavasocketnetworkprogrammingtechnology,informationbetweenthevariousobjectsinteraction.ThesystemusesC/Sstructure,sothemaininformationexchangebetweentheclientandserverside.Inthesystemimplementationprocessmethodsandtechniquesusedinasocketnetworkprogramming,Java'sIOoperations,Multi-Threadetc.,thesystemtakingintoaccounttheamountofinformationstoredisnotgreat,sotheuseofthefilesystem-relatedinformationbywayofstorage.Ofcourse,thereistheuseofconfigurationfilestosavesomeimportantinformationtechnologytofacilitatesystemimplementation.Partintheinterfacedesign,themainusesofJavaSwingtechnology.Themainfunctionofthesystemisuserregistrationandlogin,usermanagement,servermanagement,addanddeletefriends,whichcanchatwithfriendsoragroup.Thesystemhasbeencontinuouslytestinganddebugging,completionofthedesiredfunctionalitytomeettheneedsofusersatlate.

Keywords:

Object-oriented;Java;Socket;C/S;Swing

 

目录I

摘要III

AbstractIV

第一章绪论1

1.1背景1

1.2开发技术与问题解决2

1.3理论依据和主要功能2

1.4意义2

第二章需求分析3

2.1可行性分析3

2.2基本功能需求3

第三章系统设计8

3.1主要功能设计8

3.2系统类图设计8

3.3系统顺序图10

3.4系统部署图11

第四章详细设计12

4.1系统程序流程设计12

4.2服务器端功能实现13

4.3客户端功能实现16

第五章系统测试23

5.1登陆注册测试23

5.2查找添加好友测试23

5.3聊天功能测试26

总结27

致谢28

参考文献29

摘要

本次课程设计实现类似于腾讯QQ的简单聊天系统,目的是为了方便局域网里的通信,给办公或者学习带来方便。

系统的设计与实现,主要的依据是面向对象的编程思想和Java网络编程。

首先根据面向对象的思想,抽象出系统的主要参与者与系统边界,做出系统的用例,然后确定系统的对象,属性与方法;再利用Java的socket网络编程技术,实现各个对象之间信息的交互,由于本系统采用的是C/S架构,所以主要的信息交互在客户端与服务器端进行。

在系统的实现过程中采用的方法与技术有socket网络编程,Java的IO操作,多线程等。

系统考虑到存储的信息量并不是很大,所以采用文件方式进行系统相关信息的存储。

当然,还有利用配置文件的技术保存一些重要的信息,方便系统的实现。

在界面设计部分,主要采用的是Java的Swing技术。

系统的主要功能有用户注册与登录,用户管理,服务器管理,添加、删除好友,与好友进行聊天或者群聊等。

本系统经过不断测试与调试,最终完成了预期功能,满足了用户需求。

关键词:

面向对象;Java;Socket;C/S;Swing

Abstract

TheintegratedesignistoachieveasimplesystemwhichissimilarTencentQQ.ThemainpurposeofthesystemisfacilitateLANcommunication,whichistotheofficeortolearnconvenience.Systemdesignandimplementationarebasedonthemainideasofobject-orientedprogrammingandJavanetworkprogramming.First,accordingtoobject-orientedthinking,abstractsystemsandamajorplayerinthesystemboundary,makingthesystemusecases,andthendeterminethesystem'sobjects,properties,andmethods;ItreuseofJavasocketnetworkprogrammingtechnology,informationbetweenthevariousobjectsinteraction.ThesystemusesC/Sstructure,sothemaininformationexchangebetweentheclientandserverside.Inthesystemimplementationprocessmethodsandtechniquesusedinasocketnetworkprogramming,Java'sIOoperations,Multi-Threadetc.,thesystemtakingintoaccounttheamountofinformationstoredisnotgreat,sotheuseofthefilesystem-relatedinformationbywayofstorage.Ofcourse,thereistheuseofconfigurationfilestosavesomeimportantinformationtechnologytofacilitatesystemimplementation.Partintheinterfacedesign,themainusesofJavaSwingtechnology.Themainfunctionofthesystemisuserregistrationandlogin,usermanagement,servermanagement,addanddeletefriends,whichcanchatwithfriendsoragroup.Thesystemhasbeencontinuouslytestinganddebugging,completionofthedesiredfunctionalitytomeettheneedsofusersatlate.

Keywords:

Object-oriented;Java;Socket;C/S;Swing

第一章绪论

1.1背景

一直以来,空间上的距离都是人们彼此相互交流的最大障碍。

以前人们的信息交流是通过电话、信件、电报等手段,由于功能的局限给收发双方带来了很多不便。

所以更加即时的直观的使人们能在网上识别在线用户并与他们实时交换消息的即时通信技术应运而生,它是电子邮件发明以来迅速崛起的在线通讯方式,为网络用户提供一个实时交流聊天的平台。

而且即时通信和社会化网络、统一通信、在线协同三大技术热点的关系将越来越密切,已经构成融合发展的趋势,因此即时通信技术的应用将越来越广泛,越来越普遍。

即时消息系统(InstantMessenger,IM)是一种在后PC时代兴起的,以Internet网络为基础的,允许交互双方即时地传送文字、语音、视频等信息,能够跟踪网络用户在线状态的网络应用软件。

即时消息系统产生有着深刻的社会原因:

人们都有渴望社交,获得社会尊重、实现自我的需求,这正是即时消息软件风行的原动力,而物质文明的日益发达所带来副作用,又使得人们习惯与周围的人保持距离,以致人们更愿意对陌生人敞开心扉,在网络中可以跨越年龄、身份、行业、地域的限制,达到人与人、人与信息之间的零距离交流。

从这点上讲,即时消息系统的出现改变了人们的沟通方式和交友文化,大大拓展了个人生活交流的空间。

国内最为流行的即时消息软件是OICQ(简称QQ)。

它以良好的中文界面和不断增强的功能形成了一定的QQ网络文化。

该软件是由腾讯公司于1999年2月自主开发的基于Internet的即时消息系统。

腾讯QQ目前已成为中国最主要的即时消息服务网络软件。

作为一种即时消息工具,QQ支持显示好友在线、即时传送文字、语音和文件等功能。

QQ还与无线寻呼、GSM短信息、IP电话网互联,为用户提供互联网短信及信息增值服务。

腾讯QQ开发和拓展统一、高速、丰富的互联网应用平台、在线广告业务、移动通信业务、ISP及IP电话合作业务、企业商用即时消息服务、在线客户支持及在线呼叫业务。

所以,本次课程设计,以腾讯QQ为目标,做一个简单的局域网聊天系统。

1.2开发技术与问题解决

在该系统的设计实现过程中,主要的开发技术就是java的Socket网络编程技术,因为它实现的是系统的核心功能。

对于界面的设计,采用的是java的swing技术,在界面的布局上,对于小的面板主要采用绝对布局的方式,还有卡片布局,网格布局,最后采用边界布局将各个面板集成起来,这样做出的界面还是比较美观的。

在swing中用到了UIManager这个类来管理界面。

当然也用到了awt重量级的控件。

在业务功能的实现方面,基于TCP协议的网络聊天程序必须包括服务端和客户端两个程序,其中一台计算机上运行服务端程序,当开启服务端程序时,设置一个监听端口(port)并调用startService方法。

当客户端连接时(connect)就会触发connectionrequest事件,在connectionrequest事件中调用socket方法建立连接,然后服务会为每一个客户开启一个线程。

同时在服务端的事件中,把接收到的客户端传来的数据,转发给所有客户端。

当然针对用户的不同请求,服务器会有不同的响应。

这其中就用到了多线程技术。

然后,对于客户端程序必须知道服务端计算机名或其IP地址(RemoteHost属性),以及服务端监听端口(PORT属性)然后启动线程建立连接。

任何客户端一方都可以发送信息给服务器.也可以接收对方数据。

其中在客户端,用一个继承了Thread的内部类的run中方法就可以获得传送来的数据。

在客户端与服务器端的信息交互过程中,主要的技术就是Socket网络编程技术,其中,为了封装信息,用到了序列化与反序列化的技术,即用对象流来实现通信。

这样会比较的方便,通过设置对象里的类型,以区分不同的客户请求,还有服务器发的不同信息。

1.3理论依据和主要功能

本次课程设计主要理论依据就是面向对象方法学。

用面向对象的思想来设计整个系统,这其中设计到java设计模式,迭代式的开发模型,数据结构等理论知识。

本次设计虽然没有使用数据库,但是在需求分析阶段,还是通过E-R图来分析了系统的数据存储结构,并且抽象出公共的数据类型。

系统的主要功能除了用户注册,登陆,聊天以外,还有群聊,查找好友,添加好友,更新用户信息等。

1.4意义

21世纪是信息的时代,随着互联网技术的发展,信息在传递方面也有了崭新的一面。

现今聊天软件成为信息传递最为广泛的应用工具,它发挥了即时性通信的特点,可以让用户在第一时间内得到信息的交流,它不仅可以让用户进行文字聊天,而且还增添语音、视频功能。

这样可以让网上的好友身临其境的面对面的聊天,让彼此之间更为深入的了解。

人性化的设计让每个用户都可以得心应手的使用,从而获得更多人的青睐。

Internet的出现连通了整个世界,而聊天软件的出现则连通了每一位网上的用户。

随着网络应用的发展,聊天软件已经成为最热门的网络应用之一。

经历了近几年突飞猛进的发展之后,即时通讯工具早已不再是简单的互联网通讯工具,它已经成为一个集互动交流、休闲娱乐、信息管理为一体的多元化互联网应用平台。

总之,聊天软件的出现给人们彼此之间的沟通带来了无比的方便,人们可以通过聊天软件建立深刻的友情,让人们在互联网上的交流更加充满活力与生机。

再者,通过本次课程设计,是对自己大学三年来所学东西的一个综合检验,因为这次课程设计确实包含了许多的内容,设计到了几年来学习的许多课程,当然,最核心的还是面向对象方法学的课程,通过这门课程的学习,将面向对象的思想灌输到了脑中。

通过这次课程设计,将理论付诸实践,是一个很好的提升自己能力的过程。

第二章需求分析

2.1可行性分析

经济可行性:

本次系统的设计背景是学期末的综合课程设计,所以并没有考虑市场的经济效应与开发投入,主要是以提升自己的专业能力为目的,需要的只是一台能运行java程序的电脑。

所以经济上是可行的。

技术可行性:

该系统的设计是在我学习了面向对象方法学,java设计模式,数据结构,数据库,操作系统,计算机网络,人机交互等理论知识之后开展的,加上平时的上机实验,已经具备了开发一个简单聊天系统的能力和技术。

所以技术上是可行的。

操作可行性:

本次系统设计是在软件工程专业机房进行的,环境是比较舒适的,然后机房还连接了互联网,供我们查阅治疗,开发平台为windowsXP,加上eclipse的开发工具,JDK已经安装好,整个开发平台,从需求分析到最后的测试都已经搭建好,所以在操作上是可行的。

2.2基本功能需求

首先进行参与者分析,本次系统的参与者有两大部分,即客户和系统管理员。

参与者列表如下:

表2-1

参与者编号

参与者名称

参与者描述

参与者间关系

与用例的关系

M1

Person

未注册的用户

M2的父类

注册

M2

User

已注册的用户

M1的子类

登录聊天

M3

Administer

系统管理员

无直接关系

管理用户

在分析了参与者之后,就可以确定系统的边界了,然后设计出用例列表,因为本系统的开发是用用例驱动的。

用例之间有三种关系:

特殊化、包含和扩展。

这些关系可以组合相关的用例,分解大的用例,重用行为,指定可选的行为。

用例表如表2-2所示:

表2-2

用例编号

用例名称

用例描述

用例关系

是否为抽象用例

U1

Register

新用户注册

包含U5、U6、U7,U4是其扩展

U2

Login

注册用户登录

U3是其扩展

U3

Chat

聊天

是U2的扩展

U4

Initial

初始化

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2