无聊在看《代码整洁之道》,找到了一些自己以前没有注意的地方,在这里记录下来,备忘一下。
目前看完了第九章。
1.重复很多的代码是不好的,需要仔细考虑去掉无用的重复。
2.变量,函数,类等的命名要足够精确,精简&易于搜索。
3.函数尽可能的少用参数(3个以内),&不要向函数内传递bool,因为这明确的说明了这个函数干的不是一件事!函数的职责应该是单一的。函数应该尽可能的短小,过长的函数是不好的。
4.注释,能不用就不用,能少用就少用。能用好的名字说明的问题就不要用注释来说明。标记作用的注释,应该在它完成作用之后立刻删除掉。无用的代码,应该及时删除掉,怕删错了还有git。
5.缩进大括号之类的格式看团队要求,随着团队走。相互之间联系越紧密的函数距离应该离得越近,变量的定义要有统一位置(比如类的开始位置)
(ps.前面几条感觉还好,基本符合要求。。。)
6.数据结构暴露的是数据内容,它本身并没有行为。对象暴露的是行为,隐藏数据。举个例子,游戏中角色,血量是数据,攻击是行为。针对数据结构编程的是面向过程编程,面向过程编程便于添加新的行为(函数);针对对象编程的面向对象编程,面向对象编程便于添加新的数据类型(多态继承),而不便于添加新的行为(在父类中添加一个virtual函数,子类都要override一下)。需要注意的是,两种模式并没有谁优谁劣,需要根据我们的需求来进行选择,but,不要混在一起用,会让你的代码非常乱。&不要”开火车“用a.b().c().d()这种方式来调用,这种代码风格非常不好。
(ps.表示干过混用这事,手动捂脸)
7.测试的代码应该独立于工程代码;你的测试能够在任何环境下通过;及时更新测试代码;测试代码能够自行检测通过与否,而不应该是我们人工看log。
时间: 2024-10-03 13:27:02