首页 > 其他 > 详细

计算机网络实验小项目:即时通讯软件

时间:2020-06-16 21:29:26      阅读:72      评论:0      收藏:0      [点我收藏+]

之前计算机网络实验课有个小项目,放到Github了,今天偶然看到感觉还是往博客搬运下。

具体来说就是一个可以多人即时通讯、传文件的桌面端软件以及对应的服务器端软件,客户端的GUI是用Java FX写的(GUI没太多时间美化,只能说功能上没问题),用到的主要技术是Java socket.其还实现了双侧NAT穿透(主要是靠发心跳包。之前写过一篇关于NAT穿透的文章,但是貌似想看这个文章需要登录才能看,感觉很迷:https://www.cnblogs.com/jiading/p/12029450.html )。

这个软件从技术上不太难,但是自己设计数据包信息格式、在服务器端对数据包进行转发的过程还是挺有意思的。整体架构在很多地方都使用了多线程的思想,服务器端部分临界资源也用了cocurrent包下的一些类。

基于传文件的功能还可以实现一些有意思的拓展,比如传语音啊视频啊(但是如果是实时的话,对服务器带宽要求还是不低的),这些功能加上也很方便,用opencv等等包很容易实现。

代码详见Github:https://github.com/JiaDingCN/QQ
限于个人水平,肯定会有问题,发现了问题欢迎告诉我,thanks~

计算机网络实验小项目:即时通讯软件

原文:https://www.cnblogs.com/jiading/p/13144635.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!