[计算机]即时通讯系统毕业论文.doc
《[计算机]即时通讯系统毕业论文.doc》由会员分享,可在线阅读,更多相关《[计算机]即时通讯系统毕业论文.doc(33页珍藏版)》请在三一办公上搜索。
1、分类号:TP311.1 U D C:D10621-408-(2011)2301-0密 级:公 开 编 号:2007121004即时通讯软件设计与实现论文作者姓名:孟勤申请学位专业:网络工程申请学位类别:工学学士指导教师姓名(职称):韩斌(副教授)论文提交日期:2011年6月10 日即时通讯软件设计与实现摘 要网络通讯是目前计算机用户进行交流最普遍的方式,各种各样的聊天软件也层出不穷;服务提供商也提供了越来越丰富的通讯服务功能。当前中国的互联网技术已经进入了一个飞速发展的时期,即时通讯工具作为当今网络应用的主流,越来越受到了人们的青睐,使人们的网上生活更加丰富多彩。当今使用最为广泛的即时通信工具
2、,比如腾讯公司的QQ聊天软件。本毕业设计就是模拟QQ聊天软件,开发一个包括文字聊天、文件传输等功能的聊天软件。系统采用C/S架构,基于.NET平台开发。由服务器端和客户端程序组成。采用TCP/IP通信协议,使用XML对通信报文进行封装,便于应用程序API调用,组装,解析XML报文。主要实现的是聊天软件的部分功能,即文字聊天、文件传输等功能,主要完成的任务包括服务器模块的设计、文字聊天和文件传输等功能。通过运行、测试与分析,该多功能聊天软件运行稳定、可靠,具有一定的实用价值。关键词:聊天软件;文字聊天;文件传输;C#;XML报文The Design and Implementation of I
3、nstant Messaging SoftwareAbstractNetwork communication is the most common way of computer users to communicate, a variety of chat software is also emerging; service providers also offer a more feature-rich communications services. Chinas current Internet technology has entered a period of rapid deve
4、lopment, instant communications tools as the mainstream of todays network applications is getting the favour of more and more people, peoples online life is becoming more colorful. Today the most widely used instant messaging tools, such as Tencents QQ chat software. The graduation project is to sim
5、ulate the QQ chat software, including text chat, file transfer, communication and other functions.System using C/S structure, based on platform development. The client and server components. Using TCP/IP communication protocol and using XML to communication message, easy to encapsulate applications
6、API calls, assembly, analytical XML packet. This software realizes the part of function of the chat software, which is text chat, file transfer and other functions, the main task of the module design, including the server ,text chat and file transfer etc. Through the operation, test and analysis, th
7、e multifunctional chat software operation is stable, reliable, and has a certain practical value.Key words: Chat software; text chat; file transfer; C#;XML目 录论文总页数:28页1 引言11.1 课题背景11.2 国内外研究现状11.3 本课题研究的意义21.4 本课题的主要工作22 系统开发环境和关键技术22.1 开发环境22.1.1 硬件环境:22.1.2 软件环境32.2 关键技术32.2.1 C#语言简介32.2.2 XMPP协议4
8、2.2.3 TCP协议和TCP/IP协议52.2.4 Client/Server结构(客户端/服务器模式)63 系统分析与设计73.1 需求分析73.2系统总体框架73.2.1总体设计73.2.2功能模块83.3 系统详细设计103.3.1多线程设计103.3.2 数据库的设计103.3.3服务器的设计113.3.4 客户端的设计153.3.5 文本通信功能设计173.3.6 文件传输194 系统测试22结 论25参考文献26致 谢27声 明281 引言1.1 课题背景在网络无所不在的今天,在Internet上,有ICQ、MSN、Gtalk、OICQ等网络聊天软件,极大程度上方便了处于在世界各
9、地的友人之间的相互联系,也使世界好像一下子缩小了,不管你在哪里,只要你上了网,打开这些软件,就可以给你的朋友发送信息,不管对方是否也同时在线,只要知道他有号码。随着互联网应用越来越丰富,以快速、交互、简便为代表的即时通讯工具,已经成为当前网络用户最喜爱的网络沟通工具。聊天软件作为当今使用最为广泛的即时性通信工具之一,给互联网上的用户提供了诸多的服务,如文字聊天、文件传输、语音聊天、视频聊天等功能。作为即时通讯工具最具增长潜力之一的聊天软件,不仅在基础应用方面,还是产品扩展应用方面都将有质的飞跃,它为满足人们的需要,将其功能不断的完善。随着聊天软件功能的不断完善,用户通过聊天软件在互联网上尽情的
10、交谈,不但可以文字聊天和文件传输,还可以通过语音、视频来聊天。在今后随着互联网技术的发展,聊天软件也在以前所未有的速度改变着人们的生活方式,它必定会成为人们网络生活不可缺少的一部分。1.2 国内外研究现状1996年11月ICQ在全球发布,拉开了互联网IM(Instant Messenger,即时通讯)应用的序幕。就是这样一款小软件在短短数年时间里发展出一个巨大的IM产业。时至今日,即时性通讯工具早已成为最热门的网络应用之一。国内外的聊天工具举不胜数。ICQ作为全球第一款即时性通讯工具,在经过短短数年的发展,其行业内的地位如今已是无人能够撼动。ICQ名字取自英文“I seek you”的谐音,即
11、是“我找你”的意思。最初的ICQ只有两个特性,即用户列表和即时聊天。但一经推出就受到众多网民的喜爱,6个月内其注册用户迅速攀升至85万,1998年它的用户数量更是翻了10数倍,达到了1200万人。ICQ的迅猛发展也让当时的互联网领头羊Yahoo和在桌面软件领域独步天下的微软嗅到了商机,它们分别推出了Yahoo Messenger、MSN Messenger和昙花一现的MS Chat。即时通讯市场雏形顿显,有了国际互联网巨头和最大软件公司的融入,即时通讯时代的大幕就此徐徐拉开。当ICQ风行全球的时候,在国内各种仿ICQ的中文IM软件也纷纷推出,时至今日,占据国内的市场的主要是腾讯公司的QQ、微软
12、的MSN、雅虎的雅虎通等。其中腾讯公司的QQ以占据了国内70%以上的市场。随着IM应用的深入,其功能早已超越了初期的即时文字聊天。表情图标早已成为各个IM软件的标准功能,文件传输、语音/视频聊天、游戏、网上交友等高级功能也正越来越多地被集成进入IM应用。事实表明,现在的IM已不再是一个简单的沟通工具,而是一个信息资讯、交流互动、休闲娱乐中心,IM平台上的语音、视频、音乐点播、信息共享等新应用层出不穷。发展到现在,IM软件越来越成熟,IM产业链也已经形成,已经成为现代人和现代经济中不可或缺的一部份,相信未来IM软件的道路会更加宽广和精彩。1.3 本课题研究的意义21世纪是信息的时代,随着互联网技
13、术的发展,信息在传递方面也有了崭新的一面。现今聊天软件成为信息传递最为广泛的应用工具,它发挥了即时性通信的特点,可以让用户在第一时间内得到信息的交流,它不仅可以让用户进行文字聊天,而且还增添语音、视频功能。这样可以让网上的好友身临其境的面对面的聊天,让彼此之间更为深入的了解。人性化的设计让每个用户都可以得心应手的使用,从而获得更多人的青睐。Internet的出现连通了整个世界,而聊天软件的出现则连通了每一位网上的用户。随着网络应用的发展,聊天软件已经成为最热门的网络应用之一。经历了近几年突飞猛进的发展之后,即时通讯工具早已不再是简单的互联网通讯工具,它已经成为一个集互动交流、休闲娱乐、信息管理
14、为一体的多元化互联网应用平台。总之,聊天软件的出现给人们彼此之间的沟通带来了无比的方便,人们可以通过聊天软件建立深刻的友情,让人们在互联网上的交流更加充满活力与生机。1.4 本课题的主要工作聊天软件作为使用最为广泛的即时性通讯工具,它在拥有文字聊天基础功能的同时,为满足用户的需求,还增加了文件传输的功能,成为现在最为主流的网上应用软件。本论文主要对聊天软件的文字聊天、文件传输功能进行分析与研究,总结出实现的相关理论与知识。2 系统开发环境和关键技术2.1 开发环境本设计是一个局域网即时通讯软件,要在短时间内开发出来并且满足客户要求,无论是硬件还是软件都要选择合适,要求如下:开发设备完善;开发机
15、器的性能必须稳定;操作系统的选择应该适当;开发出的程序可以在尽可能多的平台上运行;要求运行机配置尽可能抵挡。对此,我选择的硬件环境和软件环境如下:2.1.1 硬件环境:l 处理器:Intel Pentium PIII或者更高的处理器l 内存:256MB或更高l 网络:局域网2.1.2 软件环境l 操作系统:Windows XP/Windows 7l 开发平台: Microsoft Visual Studio2008l 开发语言:C#2.2 关键技术2.2.1 C#语言简介C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Micr
16、osoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。l 效率与安全性新兴的网络经济迫使商务企业必须更加迅速的应对竞争的威胁。开发者必须不断缩短开发周期,不断
17、推出应用程序的新版本,而不仅仅是开发一个“标志性”的版本。C#在设计时就考虑了这些问题。它使开发者用更少的代码做更多的事,同时也不易出错。l 支持现有的网络编程新标准C#程序员可以在Microsoft .NET平台上事半功倍的构建应用程序的扩展框架。C#包含了内置的特性,使任何组件可以轻松转化为XML网络服务,通过Internet被任何操作系统上运行的任何程序调用。更突出的是,XML网络服务框架可以使现有的XML网络服务对程序员来说就和C#对象一样。这样,程序员就可以方便地使用他们已有的面向对象的编程技巧来开发利用现有的XML网络服务。l 消除大量程序错误C#的现代化设计能够消除很多常见的C+
18、编程错误。 例如:资源回收减轻了程序员内存管理的负担;C#中变量由环境自动初始化;变量是类型安全的;这样,程序员编写与维护那些解决复杂商业问题的程序就更方便了;对版本的更新提供内在的支持降低了开发成本更新软件组件是一项很容易出错的工作,因为代码的修改可能无意间改变原有程序的语义。为协助开发者进行这项工作,C#为版本的更新提供内在的支持。例如,方法重载必须显式声明。这样可以防止编码错误,保证版本更新的灵活性。还有一个相关的特性就是对接口和接口继承的内在支持。这些特性使得C#可以开发复杂的框架并且随着时间不断发展更新它。l C#语言允许类型定义的,扩展的元数据。这些元数据可以应用于任何对象。项目构
19、建者可以定义领域特有的属性并把他们应用于任何语言元素-类,接口等等。然后,开发人员可以编程检查每个元素的属性。这样,很多工作都变得方便多了,比如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者只是创建一份基于对象的领域特有属性的报表。定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。l 扩展交互性作为一种自动管理的,类型安全的环境,C#适合于大多数企业应用程序。但实际的经验表明有些应用程序仍然需要一些底层的代码,要么是因为基于性能的考虑,要么是因为要与现有的应用程序接口兼容。这些情况可能会迫使开发者使用C+, 即使他们本身
20、宁愿使用更高效的开发环境。C#采用以下对策来解决这一问题:内置对组建对象模型(COM)和基于Windows的API的支持;允许有限制地使用纯指针(Native Pointer)。在C#中,每个对象都自动生成为一个COM对象。开发者不再需要显式的实现IUnknown和其他COM接口这些功能都是内置的类似的,#可以调用现有的COM对象,无论它是由什么语言编写的。C#包含了一个特殊的功能,使程序可以调用任何纯API。在一段特别标记的代码中,开发者可以使用指针和传统C/C+特性,如手工的内存管理和指针运算。这是其相对于其它环境的极大优势。这意味着C#程序员可以在原有的C/C+代码的基础上编写程序,而不
21、是彻底放弃那些代码。2.2.2 XMPP协议XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程 序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。XMPP中定义了三个角色,客户端,服务器,网关。通信能够在这三者的任意两个之间双向发生。服务器同时承担了客户端信息记录,连接管理和信息的路由功能。网关承担着与异构即时通信系统的互联互通,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 即时通讯 系统 毕业论文
链接地址:https://www.31ppt.com/p-4019169.html