算法第一章作业
命名:我分为两类,一种是我自己用的代码,另一种是别人可能阅读,可能会使用的代码。对于我自己用的代码,遵守命名规则,但是可能会命名a b c k j这样的变量名。对于别人可能会看,可能会使用的代码,我一般用驼峰命名法,常量就全大写加下划线,不用拼音,用英文缩写(让别人能知道表达什么意思)。
注释:文件开头会加上注释,这个文件是用来做什么的,是完成什么任务的,函数前也加一个注释,解释用来干什么。具体复杂的代码实现也会加注释方便后续阅读。
变量与内存:定义变量我习惯放在最前面,需要大范围改动的变量我一般会使用const,用malloc动态分配内存的时候,记住要free.
函数设计:功能精简,一般只实现一个功能,太多功能太冗杂,不如拆分成多个函数去完成。传递的参数也不要太多,要易懂。
边界条件:做算法题时感觉很明显,就算程序基本框架写对,边界判断模糊也是很有可能不过关的,尤其是写递归的时候一定要注意边界条件,什么时候程序会停止。
报错:学会阅读报错指示,不能看见报错就头疼,好的程序不是一次就能成功的,是在报错中不断改进,不断完善的。同时不报错只代表程序可运行,并不代表正确实现了希望程序实现的的预设逻辑,还需要自己与希望输出进行比较。
小结:以上规范围绕“一致性、可读性、可维护性”三个核心目标展开。在实际编码中,我希望学会借助IDE的自动格式化工具辅助执行排版规范,并在代码提交前进行自查。编码规范的意义不仅在于让代码更好看,更在于降低协作和调试的成本,阅读者使用者可以将注意力集中在逻辑本身,而不是在理解格式和猜测命名含义上消耗精力。

浙公网安备 33010602011771号