聊天软件开发_0_开篇

hahahaha~,故事的背景是这样子的:2019年五月份时打算写一个聊天软件,开始时有考虑提前做好架构再开始干,结果是大概考虑了下就开始肝代码了,断断续续写到了今天,在写到私聊消息处理时突然发现前面一开始对已登录的用户服务端并没有记录此ip上登录的账号是多少,所以等私聊时服务端收到用户消息准备转发时知道该发给张三却不知道那个文件描述符表示的是张三。因此需要对之前的代码进行修改,却发现还存在更多的问题。所以博主打算重新开始,先认认真真做好架构再开始编码,同时把所有工作过程详细记录下来,供后来者学习参考,相当于做一个专栏,教你一步步写出一个聊天软件。

ps:软件工程还是很重要的,应该好好学学的

 一、概述

1、软件名字:还没想好

2、开发环境:

①操作系统:deepin linux

②语言:C++

③开发环境:客户端 Qtc++,服务端 vscode + g++

④数据库:开源mysql8.0

3、传输层协议:tcp(端口号暂定8888)

4、服务端与客户端数据交换格式:自己定义一套

二、预期功能

客户端

包括linux端以及windows端,点击程序图标后显示登录界面,输入相关信息登录(无账号点击注册进入注册界面输入相关信息注册,弹出窗口显示系统分配的账号),登录成功后显示主界面,主界面中好友列表显示所有好友(包括用户名、头像是否在线),点击对应好友,显示聊天界面,输入消息发送。收到消息时声音提示,并在主界面好友列表中对应的好友上做①标志提示该好友发来了消息。用户主动点开后标志消失。同时可发送表情,设置头像以及用户名。以下为各界面大致轮廓:

1、登录界面(包括账号、密码输入框,记住密码选项,登录按钮,注册按钮)

2、注册界面(相关信息输入框,验证码输入框<从服务端获取一张图片,填写图片中内容>,注册按钮)

3、主界面(用户信息展示、好友列表、群组列表、添加好友按钮)

4、聊天界面(对方用户名、消息显示区、输入区、工具栏)

服务端

在linux命令行运行,对端口进行监听、操作数据库、处理客户端发送的数据并与客户端进行数据交互,同时将用户登录、退出登录以及注册等操作存储为log.txt日志文件。

写在最后

后面会持续更新,记录整个过程,敬请关注。

提醒自己:做好架构再编码,做好架构再编码,做好架构再编码 

 

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值