IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 【总结】最近写代码的思考与总结 -> 正文阅读

[网络协议]【总结】最近写代码的思考与总结

写代码总结
最近开始做实验室的项目,所以自己也有一些心得,也踩了一些坑,自己记录一下。

  • 1.首先,整个项目架构要清楚,这样才知道从哪里来到哪里去,需要达到什么效果。然后要用什么技术,要知道技术原理。
  • 2.如果要参考开源代码,浏览一下说明,可以的话就拉下来跑一下,前提是自己要跑通,因为要确保这个代码没问题。可以多找几个,看看哪个更适合。
  • 3.然后自己写代码,首先项目架构确定清楚,建哪些包,包里面对应写设计的哪部分代码(那些写得好的项目一看目录就很清楚每部分干什么,哪里是程序入口,看着就很舒服,自己再看的时候也会省很多时间),否则太乱了自己后面都看不懂。(总之,一个目标就是做到解耦,即随便挑出来一部分都可以在脱离本项目的情况下用到其他的地方去)
  • 4.写代码,首先明确要定义些什么(类、结构体、方法等等),可以先不写出来,就建个方法名,后面再补。
  • 5.然后明确主流程,就是总共有哪几步来完成整个任务,在主函数中把它写出来,后面再根据每个流程来建具体的实现方法,写具体的代码。子流程的代码的流程同理。
  • 6.代码注释一定要明确,报错的信息也要写出来,这样才好定位错误。
  • 7.通常定义和方法分开放到不同文件中,即例如结构体等配置的定义信息在一个文件中,处理具体事务的代码在另一个文件中。
  • 8.通常项目都是比较大的,所以自己负责的是一个模块,这个模块要达到的目的就是没有这一块其他块也能正常流程走完,也是一个解耦。
    然后,里面最重要的问题就是你要提供一个接口给别人,要想清楚别人怎么来调用接口,命令行?配置文件?还是怎么调用。
    并且要了解调用者以及模块出口输出到的那个模块它们输入什么输出什么,否则很可能接口对不上。
    例如,我写的一个udp通信代理,刚开始大概沟通了一下流程就自己写自己的,然后我写的就是监听以及输出udp数据包,整个流程都是采用udp传输,但是其实调用者给我的数据是http数据包,对应http协议在传输层使用的tcp,所以我们对接口的时候一直没有收到数据,导致又重新写tcp部分的代码。
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-20 18:45:47  更:2021-11-20 18:48:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:49:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码