网络多人聊天系统的设计与实现论文.docx

上传人:b****5 文档编号:29170394 上传时间:2023-07-21 格式:DOCX 页数:38 大小:305.27KB
下载 相关 举报
网络多人聊天系统的设计与实现论文.docx_第1页
第1页 / 共38页
网络多人聊天系统的设计与实现论文.docx_第2页
第2页 / 共38页
网络多人聊天系统的设计与实现论文.docx_第3页
第3页 / 共38页
网络多人聊天系统的设计与实现论文.docx_第4页
第4页 / 共38页
网络多人聊天系统的设计与实现论文.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

网络多人聊天系统的设计与实现论文.docx

《网络多人聊天系统的设计与实现论文.docx》由会员分享,可在线阅读,更多相关《网络多人聊天系统的设计与实现论文.docx(38页珍藏版)》请在冰豆网上搜索。

网络多人聊天系统的设计与实现论文.docx

网络多人聊天系统的设计与实现论文

摘要

近年来计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面,使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。

各种在线服务系统,更是深刻的影响了人们的联系和交流方式,使得人们可以在远隔千里之遥随时通讯。

过去的种种陈旧的联系方式,已经不能满足现代生活的需要。

网上聊天系统作为一种方便人与人之间联系的实用系统便应运而生,为我们的工作和学习,带来极大的方便和提高工作效率。

由于目前人们交流方式变得多种多样,其中聊天软件凭借其友好的外观、强大的功能、使用的便利、联系的及时等特点博得现代人的青睐,其应用的市场十分广阔。

现在,企业、机关、学校纷纷建立起自己的局域网。

在局域网,虽然可以通过文件共享的方式进行通讯,但单单使用这种方式,是非常不方便的。

于是就想到做一个在局域网里的多功能聊天软件,在局域网里,我们可以通过它,实现在局域网里方便的联络,进行文件传输,消息的发布,自己共享内容的简介等。

在学校建立的校园网里,这软件可以方便同学之间、教师之间、师生之间的相互联络,这样,不用上Internet,还可以节省资源,在学校这个大环境里,可以方便同学之间联系,联络感情,促进同学之间的友谊,学生可以通过它来与不同寝室的同学,或教师讨论问题。

并能最大限度地利用现有的网络资源,极大地提高工作效率。

为了适应校园网的建设,并实现校园网内的消息发布,学生交流,师生交流,网上交作业等功能。

作为本人的毕业设计,本文介绍了个人开发的一款适用于校园的,一个局域网内的C/S结构的通讯软件,它将使同学们的交流更为方便,也可根据自身特点添加更多功能。

我考虑到作为局域网(校园网)聊天工具,终端用户数量较少,借鉴了QQ、网络聊天室等即时聊天工具,聊天信息采用服务器转发方式,只要当前在线的用户都可以接收到,当然,也实现了两人之间的私聊功能。

软件包括服务器程序和客户端程序,服务器包括聊天信息即时转发,自动关机的设置及记载,发送通知,数据库备份还原及数据库的初始化等功能。

客户端具有登陆,注册,修改个人信息,聊天等功能。

关键词VB;Access;Winsock;聊天

 

Abstract

Inrecentyearsthecomputertechnologyfastdevelopquickly,specialthecomputernetworkdevelopment,themoreandmoreprofoundchangepeoplehavelivedaspects.Enablesthepeoplebyamoreinexpensiveprice,developsamoreconvenient,themorepracticalnetworktool.Eachkindofon-lineservicesystemwastheprofoundinfluencepeople’srelationandtheexchangeway,causedthepeopletobeallowedtobewidelyseparatedbythegreatdistancetheremoteasnecessarycommunication.Allsortsofpastobsoleteconnectmethod,alreadycouldnotsatisfythemodernlife.Thepragmaticsystemthatcyberbucksystemcontactsasonekindofconvenientpersonandpersonbetweenjustarisesatthehistoricmoment,isoursworkandstudy,bringsaboutimmensegoingtothelavatoryandraisesworkingefficiency.Becausethepresentpeopleexchangethewaytochangemanyandvaried,inwhichchatssoftwaretorelyonitsfriendlyoutwardappearance,theformidablefunction,theuseconvenience,therelationpromptandsoonthecharacteristicwinsmodernpeople'sfavour,itsapplicationmarketisextremelybroad.

Now,theenterprise,theinstitution,theschoolallestablishedownlocalareanetwork,inlocalareanetwork,althoughwasallowedtocarryonthecommunicationthroughthedocumentsharingway,butsolelyusedthisway,wasextremelynotconvenient.Thereuponthoughtmakesmulti-purposetochatsoftwareon-lineservicesystem,wastheprofoundinfluencepeople'srelationandtheexchangeway,causedthepeopletobeallowedtobewidelyseparatedbythegreatdistancetheremoteasnecessarycommunication.Pastallsortsofobsoletecontactmethod,alreadycouldnotsatisfythemodernlifetheneed.On-linechatsthesystemtotakebetweenonekindofconvenientconsumerandthepeoplerelatesthepracticalsystemthenarisesatthehistoricmoment,foroursworkandthestudy,willbringtheenormousconvenienceandtheenhancementworkingefficiency.Alsobecauseareinthelocalareanetwork,inthelocalareanetwork,wemaythroughit,realizethecontactwhichfacilitatesinthelocalareanetwork,carriesonthefiletransfer,thenewsissue,ownsharethecontentthesynopsisandsoon.Establishesinthecampusnetintheschool,thissoftwaremaygetupbetweentheconvenientschoolmate,betweentheteacher,betweenteachers'andstudents'mutualcontact,likethis,doesnotuseInternet,maysavetheresources,inschoolthisbigenvironment,maybetweentheschoolmaterelate,makesfriendlycontacts,promotesbetweenschoolmate'sfriendship,thestudenttobeallowedtocomethroughitwiththedifferentbedroomschoolmate,theteachertodiscusstheissue.Andcanmaximumlimitusetheexistingnetworkresources,enormouslyenhancestheworkingefficiency.Inordertoadaptthecampusnetconstruction,realizesinthecampusnettocarryonthenewstoissuethat,thestudentexchanges,theteachersandstudentsexchange,functionandsoonon-linework.

Asmyselfgraduationproject,thisarticleintroducedindividualdevelopmentsectionissuitableforthecampus,inlocalareanetworkC/Sstructurecommunicationsoftware,itwillcausetheschoolmatesexchangetobemoreconvenient,alsomightactaccordingtoowncharacteristictoincreasemulti-purpose.Iconsidered(campusnet)chatsthetoolasthelocalareanetwork,theterminaluserquantityareless,thisVBmulti-purposechattedsoftwaretoprofitfromQQ,theInternetchatroomandsoonpromptlychattedthetool,chattedtheinformationtousetheservertoretransmittheway,solongasthecurrenton-lineusersallwereallowedtoreceive,certainly,alsorealizedtwopersonofbetweenprivatelytochatthefunction.Includingtheserverprocedureandthecustomerendprocedure,theserverincludingchatstheinformationtoretransmitimmediately,automaticShutmachinedownestablishmentandrecord,transmissionnotice,databasebackupreturntooriginalstateanddatabaseinitialization.Thecustomerendhaslands,theregistration,revisesindividualinformation,chatsandsoonthefunction.

KeyWords:

VB;Access;Winsock;Chat

 

1绪论

1.1课题的来源及意义

在网络无所不在的今天,在Internet上,有Icq,Oicq,MSN等网上寻呼软件,极大程度上方便了处于世界各地的友人之间的相互联系,也使世界好像一下子缩小了,不管你在哪里,只要你上了网,打开这些软件,就可以给你的朋友发信息,不管对方是否也同时在线,只要知道他的号码。

现在,企业、机关、学校都纷纷建立起自己的局域网。

在局域网里,虽然可以通过文件共享的方式进行通讯,但单单使用这种方式,是非常不方便的。

首先,在局域网里的网上邻居里,只能看到机器名,不清楚对方是谁,也不知道对方机器里有什么资源可以共享,而且当局域网内的机器很多时,这种方式更加麻烦。

于是,就想到做一个适用于局域网(校园网)的聊天工具,在局域网里,我们可以通过它实现局域网内方便的联络、进行文件传输、消息的发布、自己共享内容的简介等。

在学校建立起校园网里,这软件可以起到方便同学之间、教师之间、师生之间相互联络的作用。

这样,不用上Internet,可以节省资源,在学校这个大环境里,就可以同学之间联系,联络感情,促进同学之间的友谊,学生可以通过它来与不同寝室的同学,教师讨论问题。

并能最大限度地利用现有的网络资源,极大地提高工作效率。

为了适应校园网的建设,并实现校园网内消息发布、学生交流、师生交流、网上交作业等功能[1]。

1.2课题的目的

现在也有很多在局域网上不使用服务器的通讯软件,这种软件小巧且方便,也能解决一部分问题。

但是有服务器的通讯软件,有着不可比拟的优势:

可以发送离线消息,不管用户当时是否在线,下次上线时,就可以看到这条消息了;可以保存用户的个人信息或介绍,供人查看。

而且,不使用服务器的通讯软件,是以机器为通讯单元的,而有服务器的通讯软件是以人为通讯单元。

总之,有服务器的通讯软件在局域网上,还是有很大的用途的,为局域网上通讯,带来极大的方便。

1.3本人所做工作

这个基于VB的多功能聊天软件由本人独立开发完成。

本软件采用面向对象方法进行开发。

采用面向对象的系统模型可以使整个软件系统的结构变得更加灵活,本系统的结构模型将采用面向对象的系统模型,采用VB6.0这个可视化开发工具进行编码,最后完成主要的调试,仍有工作需要下一步完善。

 

2开发工具介绍

如果想编写优秀的聊天软件,首先需要选择好的编程工具。

好的编程工具是成功的第一步。

本文的聊天软件就是在VB的环境中和Access数据库相结合来实现软件开发的。

2.1VB简介

VisualBasic是一个功能强大的应用程序开发工具,在世界范围内得到了广泛的应用。

它之所以受到人们的青睐的主要原因有:

Windows是当今主流操作系统,而VisualBasic是开发Windows应用程序最简单易学的语言之一;VisualBasic引入了面向对象和事件驱动的程序设计思想,大大缩短了应用软件的开发周期;Microsoft(微软)公司十分重视VisualBasic的功能扩充,不断地把最新技术运用到VisualBasic中,使之可以完成几乎所有Windows应用程序的开发任务;已有越来越多的优秀软件支持用VisualBasic进行二次开发[2]。

2.1.1可视化编程

用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。

如果对界面的效果不满意,还要回到程序中修改。

有时候,这种编程-编译-修改的操作需要反复多次,大大影响了软件开发效率。

VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。

只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。

VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率,这就为开发聊天软件提供了便利。

2.1.2面向对象的程序设计

开发聊天软件至少要使用面向对象程序语言。

4.0版以后的VisualBasic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。

在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而VisualBasic则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。

在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来,每个对象以图形方式显示在界面上,都是可视的[3]。

2.1.3结构化程序设计语言

VisualBasic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。

VisualBasic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。

VisualBasic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。

在设计VisualBasic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(EXE),脱离VisualBasic环境,直接在Windows环境下运行,直接方便了聊天软件的运行。

2.1.4事件驱动编程机制

VisualBasic通过事件来执行对象的操作。

一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。

例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击”(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。

在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。

这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。

2.1.5访问数据库技术

本聊天软件使用了Access数据库。

VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。

同时,VisualBasic还能直接编辑和访问其他外部数据库,如DBase,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理。

VisualBasic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。

在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(Client/Server)方案[4]。

2.1.6动态数据交换(DDE)

利用动态数据交换(DynamicDataExchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。

当原始数据变化时,可以自动更新链接的数据。

VisualBasic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。

2.1.7对象的链接与嵌入(OLE)

现在好多聊天软件使用OLE技术。

对象的链接与嵌入(OLE)将每个应用程序都看作是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。

OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看作是一个对象进行链接和嵌入,是一种应用程序一体化的技术。

利用OLE技术,可以方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作[5]。

2.1.8动态链接库(DLL)

VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。

但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualBasic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。

此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具有的功能[6]。

2.2Access简介

Access是Office办公套件中一个极为重要的组成部分。

刚开始时微软公司是将Access单独作为一个产品进行销售的,后来微软发现如果将Access捆绑在Office中一起发售,将带来更加可观的利润,于是第一次将Access捆绑到Office97中,成为Office套件中的一个重要成员。

现在它已经成为Office办公套件中不可缺少的部件了。

自从1992年开始销售以来,Access已经卖出了超过6000万份,现在它已经成为世界上最流行的桌面数据库管理系统。

  后来微软公司通过大量地改进,将Access的新版本功能变得更加强大。

不管是处理公司的客户订单数据;管理自己的个人通讯录;还是大量科研数据的记录和处理,人们都可以利用它来解决大量数据的管理工作。

除了成为Web上数据交换的标准技术外,扩展标记语言(XML)也正迅速成为商务软件应用程序间交换数据时的首选技术方案。

MicrosoftAccess2003提供有功能强大而直观的XML数据共享功能,而无须考虑平台、数据格式、协议、架构或商务规则之间的差异。

利用熟悉的Access用户界面,您可以方便地利用Jet或SQLServer结构和数据创建XML数据或架构文档。

同时,还可使用来自窗体、报表和数据访问页中其他应用程序的XML数据。

例如,假设您的数据跨各种不同的源分布:

包括内部SQLserver、Excel电子表格以及诸如SAP的其他数据提供程序。

由于这些源将XML用作自己的数据交换格式,因此可以在Access中创建一系列聚合查询,以将该数据拉入视图中,然后利用这些视图设计窗体和报表。

通过简化架构和样式表的创建和应用,Access还提供了便于控制数据的方法。

Access可通过一种标准一致的方式,便捷地描述丰富的结构化XML数据,同时也便于与其他应用程序间实现数据传输。

例如,可以使用Access创建描述数据结构的架构,然后将该架构发送给自己的供应商,以便他们准确了解您所期望的发票数据格式[7]。

 

3网络通讯程序的设计原理和过程

对网络通讯程序的设计的原理和过程的透彻理解,是网络通讯程序的前提。

本章将简要地介绍一下有关网络通讯程序设计的基本知识。

3.1TCP/IP协议

TCP/IP是国际互联网所采用进行网际互连的通信协议。

IP互连协议(InternetProtocol),负责主机之间的传输数据。

TCP传输控制协议(TransmissionControlProtocol),负责在应用程序之间传递数据。

实际所称的TCP/IP协议包括了在国际互联网

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

当前位置:首页 > 高等教育 > 理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1