1、 班班 级级 学学 号号 院、院、(系系) 计算机科学与工程计算机科学与工程 学学位申请人位申请人: 指 导 教 师指 导 教 师 : 学 科 专 业学 科 专 业 : 探测制导与控制技术探测制导与控制技术 学 位 类 别学 位 类 别 : 工学学士工学学士 2013 年 06 月 20 密密 级级 题目题目: LinuxLinux 下基于下基于 C+C+开发的开发的 即时通讯软件即时通讯软件 本科毕业设计(论文)本科毕业设计(论文) 题目:题目:LinuxLinux 下基于下基于 C+C+开发的即时通讯软件开发的即时通讯软件 院院 系:系: 计算机科学与工程计算机科学与工程 学科专业:学科专
2、业: 学学 生:生: 学学 号:号: 0 0 指导教师:指导教师: 2013 年 6 月 毕业设计(论文)任务书毕业设计(论文)任务书 1.毕业设计(论文)题目毕业设计(论文)题目: Linux 下基于 C+开发的即时通讯软件 2. .题目背景和意义题目背景和意义: 21 世纪以计算机为代表的信息产业,标志着人类社会进 入了信息时代,计算机网络的研究和发展。特别是 Internet 在全球的推广和应 用,对全世界科学、经济和社会产生了重大影响。而网络通讯的出现又把全世界 各个地方的人的距离拉得越来越近!随着互联网的普及,具有交互功能的应用软 件日益受到亲睐,尤其是即时通讯软件 ICS 大受欢迎
3、。163 和 263 网站使用 ICS 的在线人数常达几万人,上百万人同时出现在腾讯 QQ 上。优秀的 ICS 确实为天 南地北的人们的信息勾通提供了便利,对提高网站知名度起到了至关重要的作 用, 国外有的公司甚至把 ICS 作为支柱软件推出。 即时通讯(Instant messaging,简称 IM)是一个终端服务,允许两人或多 人使用网络即时地传递文字信息、文件、语音与视频交流。它是一种使人们能 在网上识别在线用户并与他们实时交换消息的技术。即时通讯被认为比电子邮 件更具有自发性,甚至能在进行实时文本对话的同时浏览网上信息。利用“即 时通讯”工具,用户间可以实现异地文字、语言、视频的实时互
4、通;同时,借 助即时通讯工具,还可以帮助企业提高业务协同性及反馈的敏感度和快捷度。 作为使用频率最高的网络软件,即时通讯已被认为是现代交流方式的新象征。 本毕业设计就是模拟 QQ 聊天软件, 开发一个包括文字聊天、 保存用户信息 等功能的即时通信软件。采用 C/S 架构,基于 Linux 平台开发,采用 C+编程 语言。由服务器端和客户端程序组成。采用 ICE 中间件,解除服务器和客户端 的耦合。并使用 QT 进行图形界面的设计。主要实现的是聊天软件的部分功能, 即文字聊天、图片文件传送、保存用户消息等功能。使用 Linux 开发的原因是 Linux 操作系统作为一个开源的操作系统被越来越多的
5、人所应用,它的好处在 于操作系统源代码的公开化!只要是基于 GNU 公约的软件你都可以任意使用并 修改它的源代码。在 Linux 下编程的最佳语言应该是 C 语言,Linux 上的很多 应用程序就是用 C 语言写的。 因为 QT 是用 C/C+语言编写的, 所以在开发 LINUX 下的 GUI 程序时使用 C/C+语言是非常方便的。预期开发的软件非常实用,可 以在多平台运行,有很大的应用价值。 3.3.设计设计( (论文论文) )的主要内容的主要内容(理工科含技术指标):要求在 Linux 操作系统环境 下使用 Microsoft QT 编程软件,利用 ICE 中间件及 SQLite 开发一款
6、即时通讯 软件。该软件可以实现的功能:1、登录功能。2、申请新用户的功能。3、客户 可以通过服务器转发,实现一对一的聊天。4、显示在线好友。5、服务器显示 用户和状态。6、务器端可以保存用户的信息,同时将信息保存在文件和数据库 中。7、客户端程序可以显示好友列表。8、应该具有易用、稳定的图形界面。9、 系统实现保存聊天记录的功能。10、发送系统消息。11、服务器端保存错误日 志。12、从数据库中读取保存用户信息。13、发送文字消息、文件、图片。 4.设计的基本要求及进度安排(含起始时间、设计地点):1、基本要求:熟悉 Linux 系统环境,掌握 C+、数据库、网络编程、ICE、QT 相关知识,能够熟悉 掌握 Linux 下环境下的编程平台,了解 UC 的相关库函数。2.毕业设计时间共 18 周,第 1 周:研究此项目所要解决的问题,确定软件功能需求。第 2-3 周: 进行整体方案的初