毕 业 设 计 开 题 报 告
1.结合毕业设计情况,根据所查阅的文献资料,撰写2000字左右的文献综述:
文 献 综 述
研究背景及意义
随着计算机网络日新月异的发展,人们的交流方式越来越多,传统的交流方式已经难以满足人们的交流的需求了,网络聊天已经慢慢成为人们生活的一部分,呈现出良好的势头和广阔的发展前景。在互联网上即时的和好友取得联系,已经成为当今社会人们主流的联系方式。作为通讯的一种运用的聊天软件,它继承了通讯软件的优点,它具有文字聊天、语音聊天、传送文件、拨打电话、远程协助、视频聊天、邮件辅助、发送短信、浏览咨询等等功能。开发基于桌面的,面向个人的大众化聊天软件,可以满足网民在网络交流的需要,和电话、手机有着异曲同工之妙,但较之电话和手机,聊天软件具有方便快捷,功能强大,交流成本低等优点,因此受到广大个人用户的喜爱,网络聊天已经成为网络生活中不可或缺的一部分。网上聊天软件是为人们相互进行交流和联系提供的一个平台,通过提供完善的网上聊天服务,可以达到增进彼此之间的了解,增加人与人之间的感情交流的目的。同时,即时通信系统对现代企业也有着重大意义,由于聊天程序可以加装到台式机、笔记本电脑、手机等终端上,并且具有通讯、文件传输、视频音频会议等诸多强大的能力,能够有效地降低企业内部的通讯费用,提高工作效率。越来越多的企业已开始认识到即时通信工具能够带来极高的生产力,并借助它的应用,来提高业务协同性及反馈的敏感度和快捷度。
随着不断地发展现如今聊天软件的开发技术已经比较成熟,各项功能也已日渐完善,聊天程序已不仅仅只是为了聊天,现阶段已获成功的聊天软件都早已将发展中心往建设平台方面发展,以后聊天软件更多承担的角色是一款能够产生价值的巨型航母。
本题目为基于socket的网络编程,具体需要实现C/S模式的聊天程序,使用了java语言,java语言有下面一些特点:简单、面向对象、分布式、解释执行、安全、体系结构中立、可移植、高性能、多线程以及动态性。java丰富的类库提供了大量的类以满足网络化、多线程、面向对象系统的需要
因为即时通信系统一般由客户端软件和服务器软件两部分组成。客户端为用户提供使用各种功能服务的界面,服务器为客户端提供登陆、即时信息交流和管理等服务。双方在首次进行即时通信前必须先在计算机中安装即时通信客户端软件,然后登陆到提供即时通信服务的服务器,经注册后获得由服务器统一分配的唯一标识符后方可开始通信。通信时,由客户端发起连接请求,服务器担任中转者的角色,将网络包从发送方转交给接受方,所以采用了C/S模式。
socket,简称套接字,用于实现网络上客户和服务器之间的连接。也就是说网络上两个或两个以上双工方式通信的进程之间总有一个连接,这个连接的端点成为套接字,套接字是在比较低的层次上通信的。具体的说:一个服务器应用程序一般侦听一个特定的端口等待客户端的连接请求,当一个连接请求到达时,客户端和服武器端建立一个通信连接,在连接过程中,客户端被分配一个本地端口与一个Socket建立连接,客户端通过写Socket来通知服务器,以读Socket中的信息,类似的服务器也获得一个本地端口,它需要一个新的端口号来侦听原始端口上的其他连接请求。服务器也通过它的本地端口连接一个Socket,通过读写和客户端通信。
基于Socket的局域网通信软件应用范围广阔,不但可以处理传统的通信需求,而且也能扩展以适应新型的网络应用,如网络教育,数据影音传输等,拥有广泛的应用前景
网络编程在计算机编程中占据重要地位,通过网络编程,有助于了解各种网络协议,更深入理解各类网络应用程序的设计与实现。无论windows或linux系统,网络编程都是针对socket套接字进行编程。通过本题目的学习,可以更好的把计算机网络课程中学到的理论知识应用于实际,编制出符合实际需要的网络通信软件。同时可以了解聊天程序的开发流程,还能很大的提高自己的开发技术,必将对我以后的工作生活带来极大的帮助。网络编程在计算机编程中占据重要地位,通过网络编程,有助于了解各种网络协议,更深入理解各类网络应用程序的设计与实现。无论windows或linux系统,网络编程都是针对socket套接字进行编程。通过本题目的学习,可以更好的把计算机网络课程中学到的理论知识应用于实际,编制出符合实际需要的网络通信软件。
参考文献:
[1] 王路群,《Java高级程序设计》 中国水利水电出版社 2006
[2] Rogers Cadenhead著、梅兴文译,《Java编程入门经典》 人民邮电出版社 2007
[3] 任泰明,《TCP/IP网络编程》 人民邮电出版社 2009
[4] 柳西玲.许斌编著.Java语言应用开发基础.北京:清华大学出版社,2006
[5] 施霞萍等编著.Java程序设计教程 第2版.北京:机械工业出版社,2006
[6] [美]Herbert Schidt著.Java参考大全.鄢爱兰.鹿江春译.北京:清华大学出版社,2006
[7] 宛延闿等编著.实用Java程序设计教程.北京:机械工业出版社,2006
[8] 陈国君等编著.Java2程序设计基础.北京:清华大学出版社,2006
[9] 郑莉.王行言.马素霞编著.Java语言程序设计.北京:清华大学出版社,2006
[10] 丁振凡主编.Java语言实用教程.北京:北京邮电大学出版社,2005
[11] Metsker S J. Java设计模式[M]. 第2版. 电子工业出版社, 2012年09月.
[12] 李伙钦.基于WebSocket的实时消息推送的设计与实现[J].科技视界. 2015(03)
[13] 李淑梅,王志彬. Socket在局域网聊天系统中的应用[J]. 吉林师范大学学报(自然科学版). 2014(01)
[14] 洪世勇.Java中基于Socket的网络编程[J]. 软件工程师. 2013(Z1)
[15] 史雪.基于Socket网络聊天系统开发与设计[J]. 电子技术与软件工程. 2015(01)
毕 业 设 计 开 题 报 告
2.本课题要研究或解决的问题和拟采用的研究手段(途径):
研究(解决)的问题:
a.如何在网络通信方面使用Socket协议,采用C/S形式的两层结构,发挥C/S结构的优点。
b.如何在客户端处理后再提交给服务器信息。
c. 服务器在接到客户端的信息后如何处理
d.优化程序代码,使得聊天的用户体验更加完美
本设计拟采用的研究手段:
本系统从功能上具有以两个大模块。
服务器端功能描述:
启动服务器端:点击“开启”按钮,启动服务;
端口服务:输入服务器的某个端口号,开启服务器的这个端口;
1. 显示在线用户信息:在右边的用户列表显示所有在线的用户信息;
2. 显示用户聊天信息:在聊天信息区域内显示用户所发的所有信息;
3. 该系统服务器端能进行数据库管理(包括用户自己的注册信息,用户的聊天信息,用户的好友信息);
4. 该系统服务器端实现信息管理功能(包括信息接受,信息发送,信息删除以及信息存储)
服务端关闭:点击“关闭’按钮,关闭服务。
b. 客户端功能描述:
启动客户端:运行客户端程序,启动客户端
1. 该系统客户端用户在使用之前需要先注册,注册之后需登陆才能使用
2. 用户登录:填入用户名,点击“登录”按钮,连接相应服务器;
3. 显示用户:用户列表中可以看到自己的好友用户并区分在线和离线状态;
4. 该系统客户端用户能够进行信息的发送和接受;
客户端关闭:关闭客户端图形用户界面,关闭客户端。
毕 业 设 计 开 题 报 告
指导教师意见:
该生对本课题相关的知识与理论研究比较透彻,参考了许多的文献资料,具有一定的研究价值。
本课题结构合理,内容完整,主要观点突出,并且时效性强,是学生学习方向的延续,对于提高学生的能力有利。
同意该课题开题。