仿QQ即时通信系统

news/2024/12/16 5:47:09/

这学期学了网络编程,课设是让做一个通信系统,就模仿腾讯的产品设计一个仿QQ的通信系统。PS:用的时候,背景可以改一下,XX公司需要一个内部通信系统…

话不多说,先上图片,再慢慢讲原理吧。


效果示意图:

用户登陆界面 主界面
对话框服务器
整体效果

功能

现阶段实现的功能有
客户端: 登陆 注册 找回密码 上下线状态显示 发送文字消息等一些小的功能 。
服务器:显示用户 日志管理等

原理

该系统是基于C/S架构的。大概意思就是客户端发送消息经过服务器转发给另外一个人,客户端的登陆,注册账号或者找回密码都是经过网络传到服务器,然后服务器操作SQL Server数据库进行增删查改。
用到的数据库表。
用户列表字段好友列表
用户列表具体数据好友列表具体数据

再细节的东西,编码我就不讲了,有啥细节我们可以讨论,代码注释比较全。

总结

这是第一个自己设计,自己编写的程序。感觉写出来一个完美的程序太累了,太不容易了。另外,敲代码还是需要用软件工程的知识来设计,要不然会走很多弯路。
当然,个人水平有限,程序还有很多不完善,例如添加好友,用户上下线状态显示,传输文件,语音,视频等功能还没有写。后续会补充上。

附上代码

代码连接

ps:参考的时候自己要配置好数据库,网络通信等

最新代码链接(补充上了用户上下线功能)


http://www.ppmy.cn/news/594521.html

相关文章

基于融云的即时通讯开发(一)

一.概述 现在的应用中,即时通讯功能已经很普遍了,从这篇文章开始,我们以第三方平台融云的服务为基础,研究一下如何开发一个具有及时通信功能的软件。 首先,进入融云的官网,地址如下: http://…

Qt实现仿微信在线聊天工具(服务器、客户端)V1_ 01

准备实现一个在线聊天工具,界面参考微信 环境是VSQt5.9.1Mysql8.0,模式是C/S模式 所有通信基于服务器转发,最终实现登录、注册、私聊、群聊、文件传输、离线消息加载等功能 所有功能分模块一步步实现,本章先实现简单的登录和聊…

ChatGLM(国内版的chatGPT)

Git链接: GitHub - THUDM/ChatGLM-6B: ChatGLM-6B:开源双语对话语言模型 | An Open Bilingual Dialogue Language Model 介绍 ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具…

即时通讯,1 天快速集成 支持单群聊、聊天室、系统通知等通信能力,安全可靠、 全球互通

即时通讯,1 天快速集成 支持单群聊、聊天室、系统通知等通信能力,安全可靠、 全球互通。## 标题 Android RongIM.init(this, ‘AppKey’, false); RongIM.connect(“Token”, new RongIMClient.ConnectCallback() { Override public void onTokenI…

【QMT】给QMT量化交易软件安装和调用第三方库(举例通达信pytdx,MyTT,含代码)

给QMT量化交易软件安装和调用第三方库(举例通达信pytdx,MyTT,含代码) 一、安装QMT二、给QMT安装python三、给QMT的python环境安装第三方库1.准备python虚拟环境2.安装第三方库到指定目录 四、在QMT里调用第三方库(代码…

网页版QQ、MSN等等聊天工具web版大全

原文地址为: 网页版QQ、MSN等等聊天工具web版大全 首发地址 http://www.178good.cn/178/Html/?209.html 相关网址:聊天工具大全 http://www.178good.cn/178good/soft/liaotian.htmlMM是个十足的聊天迷,走到哪里聊到哪里。不光酷爱聊天&…

Linux文件目录结构

使用 Linux 时,通过命令行输入 ls -l / 可以看到,在 Linux 根目录(/)下包含很多的子目录(称为一级目录),例如 bin、boot、dev 等。同时,各一级目录下还含有很多子目录(称…

从零开始理解Linux中断架构(9)---异常执行流与调度

对于当前线程来说,要交出CPU的控制有如下几个常见的场景: (1)当前线程为内核线程,主动调用(schedule)交出控制权 (2)当前线程为内核线程,中断产生后,当前线程保持现状 (3)当前线程为内核线程,中断产生后,当前线程被占先调度。 (4)当前线程为用户线程,主动发…