TODO List
📌 TODO List - ChatBot(16/03)
✅ 已完成
🖥️ Serveur 端
-
🔄 服务器无限循环监听请求 -
🧵 创建Thread线程处理每个 client 请求 -
📌 有新的 client 连接时,将name和socket存入字典HashMap<>,且所有在这之前加入的 client 收到加入通知 -
📢 client X 给服务器发消息 -> 所有 client 收到 SERVEUR BROADCAST -
❌ client X 发送QUIT->- 所有 client 收到 QUIT
- client 关闭自身 I/O 流和
Socket连接 - Serveur 从
HashMap<>中删除该 client
💻 Client 端
-
🔗 连接服务器后,要求发送用户昵称 -
📥 创建一个Thread专门接收服务器的消息 -
✍️ 主线程持续向服务器发送消息(QUIT表示退出)
❌ 未完成(待办)
🖥️ Serveur 端
-
🚫 昵称唯一性检查:拒绝重复id的 client,要求重新输入id -
🔍 处理 client 意外断开:-
方案 1:定期
pingclient,若无响应则认为已断开 -
方案 2:持续监听
IOException,检测 socket 断开
-
方案 1:定期
-
🎨 优化代码可读性(可选)- 使用 多态、重载、命名规范
- 添加 代码注释
- 优化 聊天室界面美观性
Edited by Yiwen Wang