不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!...

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第1张图片

作者:刘工,排版:晓宇

微信公众号:芯片之家(ID:chiphome-dy)

本人工作多年,也算是个小司机了,见到过很多习惯非常不好的代码,别人阅读起来可以说是绞尽脑汁,非常令人费解。最近换了份工作,打开前任的代码,5000多行一下到底,这还真是第一次亲身经历。

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第2张图片

先简单介绍产品的功能:

产品主要是控制电机的,输入电源220V,采用STC89C58RD+和STC12C作为主控芯片,外设及功能主要有12864液晶,实时时钟DS12C887,继电器控制,红外遥控器接收,6个按键,EEPROM,运放采集电流互感器电流,作为电机接入故障反馈。

开始吐槽

代码开头部分

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第3张图片

部分变量声明,好家伙,密密麻麻的,没有注释,反正随便定义变量不要钱,想怎么定义就怎么定义,什么ss,sg,ds,hf0,鬼知道这是什么意思 cc855063b1e817d075441f9acd2737c7.png

56a5c7a682c279b814837e272673ecea.png

部分函数声明,可以预想的到,也是堆在一起

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第4张图片

最后看看结尾,5375行,都在一个C文件里面,厉害了我的哥,程序中也是很多delay,可能这哥们会说,我实现功能就行了啊,又不是不能用,呃......好吧,你赢了!

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第5张图片

代码量:

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第6张图片

最后再看一下工程目录:

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第7张图片

一个文件直接到底,没有任何的头文件以及分类,当我看到这个文件的时候,瞬间泪崩!!!下图展示代码臃肿跟代码精简的区别。

下面分享一些好的代码习惯:

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第8张图片

很强大!低耦合高内聚的MCU实用软件框架

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第9张图片

别用代码逼死你的队友

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第10张图片

一些技巧,如何更高层次编写优质嵌入式C代码

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第11张图片

状态机——单片机的万能语言(附代码

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第12张图片

实例分析】让你的软件飞起来,算法不一样,速度可以从120秒变化为0.5秒

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第13张图片

如何写出好代码?附资深码农的个人代码规范

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第14张图片

3年的MCU工程师就写出这样的代码?

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第15张图片

搬上小板凳,听嵌入式大牛讲解硬核单片机编程思想!

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第16张图片

咱设计程序是先考虑架构,还是拿起键盘就是干?

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第17张图片

完全由C编写,高度可移植,超级牛逼的菜单架构!

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第18张图片

完全由C编写,高度可移植,超级牛逼的按键驱动机制!

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第19张图片

完全由C编写,高度可移植,超级牛逼的软件定时器!

不吐不快,前任一个量产产品的代码,只有一个5000多行的C文件......瞬间泪崩!!!..._第20张图片

论一个程序员的编程修养(精品好文,建议认真品读并实践)

你可能感兴趣的:(单片机,嵌入式,python,java,编程语言)