萌新的代码整洁之道

萌新的代码整洁之道(C或C++)


1. 代码是写给人看的!

        今天第一次看大型代码,头昏眼花了已经,不说以后自己建立大型工程,才刚开始阅读源码就已经如此吃力了,看了学会看代码和自己写代码一样艰难,所以第一点也是最重要的一点,让代码尽可能清晰,简洁,同时保持自身一点的编码风格(但是要规范),具体怎么规范可以根据自身参考Unix或WIndows风格,看到一句很好的形容,“好的代码应该是不需要注释或者只需要很少的注释就能让他人读懂你的代码含义”,而不是用长而多的注释去解释自己抽象的代码。我目前学到是一招就是命名时尽量用简单的单词去概括这个变量或者函数。

2. 头文件

        头文件上我也学到了很多,比如之前嫌麻烦把工程内所有可能需要用的头文件全部塞到一个头文件里面去包含,这样确实方便了自己但是却忘了大量头文件重复和不必要包含带来的内存和运行效率损耗,对他人阅读或编辑工程时也会带来不必要的麻烦,尤其是随着工程推进,文件越堆越多,再要删改的话终归害了自己。

        然后头文件的排列顺序也有讲究,我们可以人为按照一定顺序进行排列,可以选择将自己经常要做改动的头文件放在最前面,然后其他的按照首字母顺序进行排列,这样增删改查时也会更加便利。

3. 模块化

        一个功能作一个目录,目录名取为模块功能名,内部的.c,.h 一 一对应,另外可以再新建一个与模块同名的.h文件,方便外面调用,只需包含这一个.h就能使用该模块内的全部功能👍

4. 函数

        函数是整个代码工程内最为核心的部分,要求函数小而精,只去实现一个功能就够了,每个函数职责明确,并且不宜嵌套过深(for,switch,if等),写多了不宜阅读,浪费精力去嵌套思考,控制在5层内,也就是花括号数量,一个函数尽量控制在50行内(+注释),还有函数的扇入和扇出也不宜过多,也就是被调用和调用的数量,如果过多建议在中间增加一层接口。

        如果一个函数会被并发调用,一定要记得 p  v 操作。

5. 变量

        除了之前说的命名,还有变量在使用时应该只代表一种功能,也就是只服务于一个特定功能,不能同时有多个涵义或用于多种功能实现。

        全局变量命名前+“g_”,静态前+“s_",如果不是外部其他模块必须共享,尽量不用或少用全局变量,因为容易导致全局变量和外部局部变量冲突引起不必要错误,如果只是本文件内使用建议改用静态全局变量,还有局部变量尽量不要声明为static,除非必须使用,否则也会引起不必要麻烦(因为他只会被初始化一次)。

6. 注释

        最后但也是最重要的注释,规范的注释格式可以让代码阅读起来更舒适,好像推荐是doxygen格式,我也还没有学这个,改天去学习一个,我目前最基本的就是函数注释:

        /*

                功能:xxx

                参数:yyy

                返回值:zzz

        */

完结,撒花,初为码农,以后有时间不定期记录分享学习心得

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值