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

共 2279字,需浏览 5分钟

 ·

2021-11-16 10:56

作者:刘工,排版:晓宇
微信公众号:芯片之家(ID:chiphome-dy)
本人工作多年,也算是个小司机了,见到过很多习惯非常不好的代码,别人阅读起来可以说是绞尽脑汁,非常令人费解。最近换了份工作,打开前任的代码,5000多行一下到底,这还真是第一次亲身经历。
先简单介绍产品的功能:
产品主要是控制电机的,输入电源220V,采用STC89C58RD+和STC12C作为主控芯片,外设及功能主要有12864液晶,实时时钟DS12C887,继电器控制,红外遥控器接收,6个按键,EEPROM,运放采集电流互感器电流,作为电机接入故障反馈。

开始吐槽

代码开头部分
部分变量声明,好家伙,密密麻麻的,没有注释,反正随便定义变量不要钱,想怎么定义就怎么定义,什么ss,sg,ds,hf0,鬼知道这是什么意思 
部分函数声明,可以预想的到,也是堆在一起
最后看看结尾,5375行,都在一个C文件里面,厉害了我的哥,程序中也是很多delay,可能这哥们会说,我实现功能就行了啊,又不是不能用,呃......好吧,你赢了!
代码量:
最后再看一下工程目录:
一个文件直接到底,没有任何的头文件以及分类,当我看到这个文件的时候,瞬间泪崩!!!下图展示代码臃肿跟代码精简的区别。

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

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


别用代码逼死你的队友


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


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


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


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


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


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


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


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


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


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


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

浏览 30
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报