doc 毕业论文:局域网聊天系统设计 ㊣ 精品文档 值得下载

🔯 格式:DOC | ❒ 页数:26 页 | ⭐收藏:0人 | ✔ 可以修改 | @ 版权投诉 | ❤️ 我的浏览 | 上传时间:2022-06-24 19:06

毕业论文:局域网聊天系统设计

程序可以在尽可能多的平台上运行要求运行机配置尽可能低档。对此,我们选择的硬件环境和软件环境如下硬件环境开发该系统应尽可能采用高档的硬件。因此,在应用时应采用更好的配置。处理器或更高处理器。内存或更高。网络局域网。软件环境选择好的操作系统和好的编程语言是系统优劣的关键,我们要求系统在尽可能多的环境下运行,故选择平台,对于些无法在中运行的函数,律不采用,并采取优化的算法编写程序。因具有友好的集成开发界面面向对象的可视化开发模式良好的数据库及多媒体应用支持以及高效的软件开发与程序运行,功能更大,开发效率更高,不仅是网络环境下的优秀前端开发语言和工具,也是服务器端编程的优秀工具。加之我本人对本系统的操作最为熟练,所以选择该平台为开发环境。操作系统或。开发工具。网络编程接口概述既然选定了平台,而又要开发网络通信程序,所以可以选择的编程接口,是套开放的支持多种协议的下的网络编程接口。现在的已经基本上实现了与协议无关,你可以使用来调用多种协议的功能,但较常使用的是协议。无疑是我们进行网络编程的利器。开发平台简介开发平台我选用了,因为直以来都使用进行学习,对这个最为熟悉,再者同样是由微软开发的系统,与其操作系统,网络接口具有最为密切的契合优点,所以选择了。需求分析及可行性研究需求分析时间要求本项目作为大学本科毕业设计题目,从月号接受选题开始,在月号之前完成系统设计,编码实现工作,在月号之前完成毕业设计论文初稿,月号之前最终完成论文。功能要求用户端之间的信息发送,本程序需要实现的最基本的功能在线用户主机名列表的维护。在模式中,服务器与客户端是相互依赖的。在客户端启用以后,需要查看服务器端是否在线,服务器在线才能正常使用客户端,如果服务器不在线,则在检测定次数以后自动退出客户端程序。在使用过程中,客户端在指定时间内未向服务器端发送信息的,服务器认为客户端下线客户端在定时间内未收到服务器端信息的,认为服务器已经下线,则提示用户并建议退出,在用户定时间后没有退出的则自动关闭客户端程序。系统基本流程图图聊天系统工作流程图性能要求首先要求程序要完全可靠,可以应付种种由于系统问题产生的,比如初始网络失败,对方突然下线等。要求提前设想到类似的尽可能多的可能发生的事件,做出相应的应对措施,并向用户提交简单易懂清晰明白的提示信息。程序要有良好的容错性,当用户进行非法操作时或者系统本身出现问题时要能以最好的方式退出程序,避免发生程序假死现象。开发文档要有好的易理解性,如果系统又要交由别人接手开发,或者自己由于种种原因需要进行二次开发,那么要保证以后能够清晰的理解整个系统的设计思路以及实现细节。要求程序对所运行之系统的硬件条件要求尽可能低,运行时内存占用尽可能小,响应速度要尽可能快。并且不发生内存泄漏之类影响系统运行的事件。并且要求易于维护及扩展。所以应该采用模块化开发,各个模块之间不要有太多的联系,以免维护困难。测试环境规定在开发完成以后,自己进行个全面的测试。可行性研究成本可行性分析因为本软件只做开发学习使用,所以暂且不考虑经济成本及盈利问题。技术可行性分析首先我已经搭建好开发所需要的软硬件平台,并进行了合理而完善的需求分析,做好了充分的前期准备工作,其次因为本程序的平台将基于,将要使用网络通信技术,而有完善成熟的网络通信接口,以及与开发环境的严密契合能力,加之相类似的更大规模的通信工具产品也已有例在先,所以这个程序的开发可行性在技术上是完全可行的。相关开发技术的原理性说明编程原理及框架编程原理所谓的开发,就是在语言的层面上,直接使用开发应用程序或者系统程序。虽说现在直接用开发应用程序的人已经不多了,但是深入理解系统程序设计原理,仍然是成为开发高手的良好途径。所谓的,其实是个规范,与系统编程接口标准是相对应的。下面是进行直接的方式编程的基本思路或者说是个框架个程序分为程序代码和用户接口资源两大部份,两部份最后以编译程序整合为个完整的该函数在其调用进程的进程空间里创建个新的线程,并返回已建线程的句柄。该函数用于挂起指定的线程,如果函数执行成功,则线程的执行被终止。该函数用于结束线程的挂起状态,执行线程。该函数用于线程终结自身的执行,主要在线程的执行函数中被调用。其中参数用来设置线程的退出码。般情况下,线程运行结束之后,线程函数正常返回,但是应用程序可以调用强行终止线程的执行。使用终止个线程的执行是不安全的,可能会引起系统不稳定虽然该函数立即终止线程的执行,但并不释放线程所占用的资源。因此,般不建议使用该函数。该函数将条消息放入到指定线程的消息队列中,并且不等到消息被该线程处理时便返回。调用该函数时,如果即将接收消息的线程没有创建消息循环,则该函数执行失败。总体设计体系结构设计通常的通信工具,都采用客户机服务器体系结构,结构是这样的种结构它包括个客户机或前端,个服务器或称后端,客户机的作用是访问和处理远程服务器上的数据,服务器的作用是接收和处理客户机的数据请求。有时,可能有多个客户向同个服务器同时请求服务,这就需要服务器决定怎样处理这些请求。结构是当前数据库应用程序中极为流行的种方式。尤其是网络技术的发展,使得当前很多系统都采用这种方式进行构造,其最大的优点是将计算机工作任务分别由客户端和服务器端来共同完成,这样有利于充分合理的利用系统资源。另外它的服务器端还可以将信息集中起来,任何客户机都可以通过访问服务器而获得所需的信息。模型最终可归结为种请求应答关系。个请求总是首先被客户发出,然后服务器总是被动地接收请求,返回客户需要的结果。在客户发出个请求之前,服务进程直处于休眠状态。个客户提出请求后,服务进程被唤醒并且为客户提供服务,对客户的请求做出所需要的应答。如下图所示图客户机服务器通信结构示图在客户端启动后,客户端计算得到本地网络的广播地址,进行广播查找服务器端,服务器接收到客户端的广播信息后返回服务器地址,则客户端接收验证信息并记录服务器端地址,然后客户端启动定时期,定时发送信息到服务器,以告知服务器自己在线,然后服务器返回在线用户列表,服务器依靠客户端发送的信息来更新维护在线用户列表。在客户端与服务器尽心数据交换,拥有了在线用户列表后,就可以选择进行客户端之间的点对点信息交流了。如果服务器不在线,则客户端会提示用户退出,在定的时间后自动退出。功能模块划分根据以上的系统需求分析,以及体系结构设计,可以对系统进行如下的功能模块划分如下图所示。图功能模块图其中主线程模块完成对网络的初始化,然后启动两个子线程服务端监听线程以及网络扫描模块线程,然后由网络扫描模块得到当前的网络用户分布情况,并填充相关的数据结构,然后生成用户列表界面显示给用户。主线程模块通信模块文件传输模块网络扫描模块数据发送模块数据接收模块通信模块又包括两个子模块数据接收模块和数据发送模块,这两个模块都由系统定义的网络事件来触发。输入输出模块用来响应用户双击用户列表的项要准备发送信息时的消息,以及当系统接收到个网络用户发送来的消息,要将其显示给用户的时候。网络扫描模块是由主线程模块启动,进行网络扫描,确定哪些用户当前处于可到达状态,以及哪些可到达状态的用户安装有相应的通信软件,并启动之可以与之进行通信。数据结构设计在线用户信息结构体存储用于判断次是否更新过,未更新则从单向链表中删除下个存储单元的地址,最后个为注用于构建服务器端的在线用户单向链表。从服务器端发送到客户端的在线用户列表信息结构传输到线程的信息结构体客户端存储接口套接字存储窗口句柄服务器端存储接口套接字存储窗口句柄存储用于判断是否退出线程循环存储在线用户单向链表的头指针注线程函数为静态函数,无法调用成员变量和成员函数,所以需要将需要的数据传送进去。用户界面设计在能够完全满足软件所需功能,设计界面要清爽操作要简单易懂的基本原则下,本软件的界面设计如下服务器端显示界面图服务器端界面图客户端显示界面图客户端显示界面详细设计及编码实现主框架及用户界面模块详细设计主框架模块由两个类构成类和类。类结构如下图服务器端主框架模块图其中前面为红色方块的为类成员函数,浅蓝色方块的为类成员数据。类为应用程序主框架类,它在后台完成了个基于的应用程序的所有基本的初始化工作,如果用户需要在程序的初始化时加入些自定义的操作,只需在其中的函数中加入就可以了。在本程序中,只需要将的网络初始化工作完成。代码为,在每个基于的程序中,它都是通过个由全局对象启动整个初始化过程的机制,因为根据的设计,个全局对象的生成即其构造函数的调用要先于程序的入口函数。所以,在这个对象的构造函数中可以做很多准备工作,这个对象就是程序主框架类的对象,具体到本程序中,即是上面讲到的类。服务端线程的具体作就是首先创建个,然后将该套接字绑定到本地主机的个固定的端口上,在本程序中选择了端口。接着将该套接字设置为异步非阻塞模式,并为它注册各种网络异步事件,最后开始监听。网络扫描模块详细设计图网络扫描示意图文件传输模块详细设计图文件传输模块流程图以上即文件模块的详细设计的主要实现过程。测试用二台机器通过集线器构成个局域网,进行正确的网络配置,三台机器上都安装了操作系统,经过测试可正常运行。客户端主机服务器端主机套接字连接连接响应次握手发送文件流接收文件流断开连接断开连接响应结论在当今电脑网络密布的世界当中,个简单高效的局域网通信工具是如此的具有实用性,所以我们应当重视对它的相关研究与开发。在这次的毕业设计中,我应用了开发工具在平台上开发了个基于平台的局域网通信工具,在这重要的领域进行了相关的实践,不管是对我的研究能力,还是实际动手能力,还是资料查阅能力,都起了相当大的益处。通过此次毕业设计,我了解了进程间通讯的两种基本方法共享内存和消息,在实例中具体体会到了共享内存和消息的使用方法。所以,我决定认真总结这次毕业设计的经验,以及学习到的知识,来更加的充实自己的头脑和完善自己的知识结构。另外,我也在这次设计中看到了自己的许多不足之处,由于初次接触到语言类问题,很多步骤都是自己临时学习,大大影响了系统的开发进度。既然设计已经完成,论文也写到结论的地方,我希望自己能以个良好的心态顺利

下一篇
毕业论文:局域网聊天系统设计第1页
1 页 / 共 26
毕业论文:局域网聊天系统设计第2页
2 页 / 共 26
毕业论文:局域网聊天系统设计第3页
3 页 / 共 26
毕业论文:局域网聊天系统设计第4页
4 页 / 共 26
毕业论文:局域网聊天系统设计第5页
5 页 / 共 26
毕业论文:局域网聊天系统设计第6页
6 页 / 共 26
毕业论文:局域网聊天系统设计第7页
7 页 / 共 26
毕业论文:局域网聊天系统设计第8页
8 页 / 共 26
毕业论文:局域网聊天系统设计第9页
9 页 / 共 26
毕业论文:局域网聊天系统设计第10页
10 页 / 共 26
毕业论文:局域网聊天系统设计第11页
11 页 / 共 26
毕业论文:局域网聊天系统设计第12页
12 页 / 共 26
毕业论文:局域网聊天系统设计第13页
13 页 / 共 26
毕业论文:局域网聊天系统设计第14页
14 页 / 共 26
毕业论文:局域网聊天系统设计第15页
15 页 / 共 26
温馨提示

1、该文档不包含其他附件(如表格、图纸),本站只保证下载后内容跟在线阅读一样,不确保内容完整性,请务必认真阅读。

2、有的文档阅读时显示本站(www.woc88.com)水印的,下载后是没有本站水印的(仅在线阅读显示),请放心下载。

3、除PDF格式下载后需转换成word才能编辑,其他下载后均可以随意编辑、修改、打印。

4、有的标题标有”最新”、多篇,实质内容并不相符,下载内容以在线阅读为准,请认真阅读全文再下载。

5、该文档为会员上传,下载所得收益全部归上传者所有,若您对文档版权有异议,可联系客服认领,既往收入全部归您。

  • 文档助手,定制查找
    精品 全部 DOC PPT RAR
换一批