基于TCP的聊天系统
一.项目简介 基于UDP的聊天系统 要求: 1.应用 IO 进程 线程 进程间通信, 网络相关内容。 2.C/S模型 3.僵尸进程一定要求处理 4.服务器尽量写成守护进程 5.应用链表保存在线用户信息 6.将所有用户信息保存到sqlite数据库中 7.能够导出相关数据到文本文档中(如聊天记录。。) 二.分工与描述 功能:1.(数据库及其涉及函数、查看在线用户、登录、注册) 2.(makeflie、私聊群聊完善) 3.(写入文件(存取聊天记录)、帮助文档、超级用户) 文档:三人共同完成 三.需求分析及界面设计 1. 引言 编写基于UDP的网络聊天室,该文档是给项目的需求分析,包括编写目的,项目要实现的功能,如何实现该项目。 1.1 编写目的 该 项目是为分析基于UDP的网络聊天室项目的需求设计的,开发基于UDP的网络聊天室实现不同客户端的通信功能,具有重大意义,最终可以实现不同用户畅聊的功能。 1.2 项目风险 ●无; 1.3 文档约定 ●无; 1.4 预期读者和阅读建议 ●开发人员;全读 ●测试人员;了解 ●文档编写入员。全读 1.5 产品范围 ●Linux涉及UDP领域; 1.6 参考文献 ●基于UDP的聊天系统需求报告 ●基于UDP的聊天系统详细设计 2. 综合描述 这一部分概述了正在定义的软件产品的作用范围以及该软件产品所运行的环境、使用该软件产品的用户、对该软件产品己知的限制、有关该软件产品的假设和依赖。 2.1 产品的状况 描这是基于UDP的网络聊天室,基于Linux系统,用于聊天。 特点: 1)便捷性:摆脱了传统的通信方式,利用网络的廉价性,可以使用户更加自由地相互交流。 2) 安全性:网络环境下,用户可以针对地去了解自己想要了解的信息,交流时可以使用虚拟的身份, 一定程度上很好地保护了用户的个人隐私信息。 3) 实时性:用户只要与想要通信的另一方取得联系,即可想面对面对话一样交流。 2.2 产品的功能 ●实现登录 注册 聊天 查看在线用户 返回在线用户列表 下线等功能; 2.3 用户类和特性 ●无; 2.4 运行环境 ●Linux系统; 2.5 设计和实现上的限制 确定影响开发人员自由选择的问题,并且说明这些问题为什么成为一种限制。可能的限制包括下列内容: ●必须使用的特定技术、工具、编程语言和数据库; 1)Linux C编程工具:GCC和GDB 2)文件I/O操作 技术 3)文件属性及目录操作 4)终端控制与信号处理 5)进程控制 6)进程间通信 7)流式套接字编程 8)线程管理 9)数据库工具sqlite3 ●避免使用的特定技术、工具、编程语言和数据库; 项目是为分析基于UDP的网络聊天室项目的需求设计的,开发基于UDP的网络聊天室实现不同客户端的通信功能,具有重大意义,最终可以实现不同用户畅聊的功能。 1.2 项目风险 ●无; 1.3 文档约定 ●无; 1.4 预期读者和阅读建议 ●开发人员;全读 ●测试人员;了解 ●文档编写入员。全读 1.5 产品范围 ●Linux涉及UDP领域; 1.6 参考文献 ●基于UDP的聊天系统需求报告 ●基于UDP的聊天系统详细设计 2. 综合描述 这一部分概述了正在定义的软件产品的作用范围以及该软件产品所运行的环境、使用该软件产品的用户、对该软件产品己知的限制、有关该软件产品的假设和依赖。 2.1 产品的状况 描这是基于UDP的网络聊天室,基于Linux系统,用于聊天。 特点: 1)便捷性:摆脱了传统的通信方式,利用网络的廉价性,可以使用户更加自由地相互交流。 2) 安全性:网络环境下,用户可以针对地去了解自己想要了解的信息,交流时可以使用虚拟的身份, 一定程度上很好地保护了用户的个人隐私信息。 3) 实时性:用户只要与想要通信的另一方取得联系,即可想面对面对话一样交流。 2.2 产品的功能 ●实现登录 注册 聊天 查看在线用户 返回在线用户列表 下线等功能; 2.3 用户类和特性 ●无; 2.4 运行环境 ●Linux系统; 2.5 设计和实现上的限制 确定影响开发人员自由选择的问题,并且说明这些问题为什么成为一种限制。可能的限制包括下列内容: ●必须使用的特定技术、工具、编程语言和数据库; 1)Linux C编程工具:GCC和GDB 2)文件I/O操作 技术 3)文件属性及目录操作 4)终端控制与信号处理 5)进程控制 6)进程间通信 7)流式套接字编程 8)线程管理 9)数据库工具sqlite3 ●避免使用的特定技术、工具、编程语言和数据库;
用户评论