Coding style 您如何记录您的编码标准?

Coding style 您如何记录您的编码标准?,coding-style,standards,Coding Style,Standards,您发现发布您的编码标准的最佳方式是什么?为什么?如果您指的是样式指南-Word文档或PDF。在我看来,这是“一成不变”的,但以每个项目为基础(如果你看到一些不起作用的东西,请在下一个项目中修复它,特别是在项目后期,并且你有大量遵循现有风格的代码的情况下)。我们的项目主要使用python,因此我们基本上采取了,改变了一些我们不喜欢的东西,把它们贴在我们的维基上。它链接在首页上,这样开发者就知道在哪里可以找到它。到目前为止,它实际上做了一个相当不错的被跟踪的工作 准则指南是一份描述实践的公司范围内的

您发现发布您的编码标准的最佳方式是什么?为什么?

如果您指的是样式指南-Word文档或PDF。在我看来,这是“一成不变”的,但以每个项目为基础(如果你看到一些不起作用的东西,请在下一个项目中修复它,特别是在项目后期,并且你有大量遵循现有风格的代码的情况下)。

我们的项目主要使用python,因此我们基本上采取了,改变了一些我们不喜欢的东西,把它们贴在我们的维基上。它链接在首页上,这样开发者就知道在哪里可以找到它。到目前为止,它实际上做了一个相当不错的被跟踪的工作

准则指南是一份描述实践的公司范围内的文件。它是可用的,必须严格遵守


代码格式标准由团队(或项目)成员决定。对于我们的项目,它作为插件的一组设置保存在SVN中。

我们使用代码来记录标准。这与高级/首席工程师的强制执行一起,对我们非常有效。我们不维护实际文档的原因是因为我们发现没有人阅读它,而且它很快就会过时

IMHO证明这一点所需要的只是现有代码,它显示了样式/标准


轻装旅行

对于最初的过程,一个带有子标题的wiki对于收集不同开发人员的意见非常有用。一旦收集到反馈,就可以整理并“发布”

更新:


几年过去了,Google Docs现在成为了一种wiki。

我通过以下方式记录代码标准:

  • 最重要的常规样式的结构(如缩进、换行、大括号等)
  • 不太明显的细节(在
    之前/之后的空格(
  • 代码示例
  • 设置说明以配置eclipse代码格式化程序
  • 普罗萨

当我负责制定编码标准时,我会尝试在互联网上找到一个适合我们需要的好标准并加以使用。我会选择它的任何格式,通常是PDF或Word


重新发明轮子是没有意义的——我还可以利用其他人所做的艰苦工作。

当我管理一个小团队时,我们的“编码标准”是CVS上的一个包装脚本,在您签入代码时在代码上运行缩进(带有团队范围的rc文件)。

一个拥有SVN的内部网站,用于管理更改工作。“最新版本”始终可供团队在线使用。

我们将其放在wiki上,并链接到代码片段,这会有所帮助


然后,我们在Eclipse中设置了一个代码格式化程序,使其尽可能与此编码标准相匹配,尽管这对最佳实践编码方法没有帮助。

我认为最好的方法是使用Checkstyle强制执行您的编码标准,并确保在某些代码违反Checkstyle规则时生成失败

然后使用代码检查和结对编程,以便低年级学生可以向高年级学生学习


您还可以设置wiki页面。

我认为发布编码标准的唯一有效方法是将其集成到开发人员使用的ide中(例如eclipse或idea)。因此,新代码将遵循开箱即用的标准,旧代码可以使用ide重新格式化


只有很少的开发人员会阅读编码标准,很少有人会在以后使用它们…

如果您是在.NET中开发的话。我建议使用StyleCop检查您的构建。我还建议使用ReSharper和StyleCop插件

使用ReSharper和StyleCop插件,你会在代码下看到红色的“扭曲”线条,这是违反标准的,一个简单的鼠标可以解释原因。没有代码审查,也没有要维护的文档


在构建过程中使用StyleCop将确保签入的所有代码都符合标准。

我们不再使用Word文档,因为Word文档被证明很麻烦,而且很容易过时

  • 包含标准和示例的Wiki页面
  • 在CI过程中运行的自动编码标准验证工具

N.B.此外,我们还有一个客户机,除了在CI周期中运行构建本身之外,不使用任何其他功能。他们将规则保存在ReSharper中,并对结果非常满意

如果您使用Eclipse,则可以使用格式化程序(首选项->Java->代码样式->格式化程序)在保存源文件时自动格式化代码。我们只需在wiki上提供公司的格式化程序,每个人都将其导入Eclipse

格式化程序最酷的一点是,您可以决定要使用哪一个,这样您就可以拥有具有不同格式的不同项目。但是,我们通常只使用一种格式,因此我们的代码在所有项目中都是统一的。

我们使用以下格式:

  • 编辑器中的工具/插件(checkstyle、pmd、内部工具)
  • 生成时间检查生成报告
  • wiki用于记录代码审阅注释
  • 从3开始,我们将“可使用工具”的工具重构为内部工具

  • 这取决于具体情况:

    我在一家只有三名开发人员的小公司工作。好了,我们只是 谈出来了。如果您对编码风格有疑问,这只意味着询问您的合作开发人员。过了一会儿,有人意识到,同样的问题被问了好几次,并在我们的维基上打开了一个编码标准页面

    今天我在一个小型研究实验室工作。在这个特定领域,我们没有 正式编码标准。然而,由于我们在团队中工作,并且定期进行结对会议,因此 隐式编码标准似乎无中生有


    从一些开发飞机导航系统的朋友那里,我知道 他们同意基于

    • 安全和政府限制