What's the best way to organize code?我不是在说如何在这里缩进。 我正在寻找有关组织源文件中的代码块的最佳方法的建议。 您是否按字母顺序排列方法? 按照你写的顺序? 主题上? 以某种"教学"顺序? 您遵循什么组织原则? 为什么? 我通常按??以下顺序 我倾向于使用以下模式:
我没有包含本地类的模式,并且大多数情况下,我将它们放在使用它们的第一个方法的顶部。 我不喜欢根据访问级别来分离方法。如果某种公共方法使用某种私有方法,它们将彼此接近。 我倾向于将相互关联的方法归为一组。使用优质的IDE可以消除许多此类问题。按字母顺序排列的方法对我来说似乎是在浪费精力。 我具有所有私有字段,然后是公共字段,然后是构造函数,然后是main,然后是main调用的方法(按调用顺序)。 我主要编写C代码,并且倾向于按依赖关系排序。如果可能,我会尝试将源代码文件与头文件进行匹配,但通常情况是void a()使用int b(char * foo),而不是int b(char * foo)首先出现。 避免将条目添加到本地功能的头文件中。 其余的实际上主要是按字母顺序排列,使搜索更加容易。 有趣的一点。我还没有真正考虑过。 我倾向于将经常访问的函数(实用程序函数等)放在顶部,因为它们很可能需要调整。 我认为组织不是特别重要,因为我可以很快找到任何职能。我不会在文件中滚动查找功能。我搜索。 在C ++中,我确实希望.cpp文件中的功能与在.h文件中声明的顺序相同。通常是构造函数,其次是析构函数,其次是主要/中央功能函数,然后是实用程序函数。 我喜欢使事情保持简单,因此我不会在类中填充很多方法。在课程中,我通常会首先列出最常用的(或按我的修改;-)方法。就特定的代码组织而言,每组方法都属于一个类,因此它是由其自己组织的。 我利用编辑器的搜索功能和代码折叠功能来浏览大型源文件。同样,我也利用搜索功能在其他上下文中查找事物。宏大的组织计划永远都不适合我,因此我在所有方面都依赖于搜索的力量,而不仅仅是代码。 我倾向于按主题对事物进行分组,因为缺少更好的词。 例如,如果我有一个在执行其工作过程中使用两个私有方法的公共方法,那么我会将这三个私有方法组合在实现文件中,因为很有可能如果您要查看其中一个,那么您需要查看其他之一。 我也总是将特定类成员的获取/设置方法分组。 这确实是个人喜好,尤其是在现代IDE中,因为有很多功能可以让您自动跳转到代码中的位置。 公共的,受保护的,然后是私有的,并且在每个部分中按字母顺序排列,尽管我经常首先列出构造函数,最后列出解构函数。 /艾伦 几乎将这种方法用于我正在编写的任何内容。良好的结构和经过注释的代码可以使人读物更好。
我根据所做的事情将它们分组,然后按照我写的顺序排列(按字母顺序排列可能会更好) 例如在texture.cpp中,我有:
|