clang 汇编代码_使用Clang格式确保干净,一致的代码

clang 汇编代码

程序员常常低估了一致的编码风格对项目成功的重要性。 它使代码库更易于阅读,减少了非功能性更改以修复不一致的样式,并概述了代码提交的期望。 大多数大型项目都有编码风格,一旦您从事一段时间的编码工作,就会发现风格的一致性。 指定样式的一些示例包括在何处放置大括号,是否使用制表符或空格进行缩进,要缩进多少空格以及如何拆分长行。

使用Clang格式

拥有一致的编码风格很重要,但是描述起来也很麻烦,并且需要花费一些时间进行代码审查。 Clang格式是我已经追踪了很长时间的一种代码格式化工具,它是它的几个前身。 该项目重用了clang中的语言解析器,这意味着它具有C ++编程语言的可靠模型,因此它不必像其他一些工具一样依赖正则表达式匹配。



   
   
---
# This configuration requires clang-format 3.8 or higher.
BasedOnStyle: Mozilla
AlwaysBreakAfterReturnType: None
AlwaysBreakAfterDefinitionReturnType: None
BreakConstructorInitializersBeforeComma: false
...

对于Tomviz (断层图像数据的3D科学数据可视化软件),我将格式文件基于CMake (一种用于构建和测试软件的工具)进行了最近的转换,并对其进行了一些小的调整。 您只需将.clang格式的文件放置在基本源目录中,该工具就会从当前目录开始进行扫描,直到遇到该文件为止。 然后,我能够在我们所有的源文件上运行它,并且一位同事向我们的GitHub存储库添加了一个自动挂钩,以验证提议的更改是否与样式文件相符。 现在,所有拉取请求都将通过检查运行,如果测试失败,则会提供必要的更改。 这样就无需检查对编码样式的请求请求,并确保我们的代码库具有统一的样式。 我们还使用样式向导实施工具flake8将其扩展到了我们的Python代码。

开发人员可以轻松地将样式应用于他们的更改。 我通常运行clang-format -i path/to/changed.* ,还有其他使用该工具的方法。 现在要考虑大括号放置的战争,但是我们选择了与CMake并置,并使其与声明保持在同一行,以保留最大垂直空间。 ParaView数据分析和可视化项目只是合并了他们的clang格式更改,而是选择将大括号放在新的一行上。 VTK (可视化工具包,3D计算机图形,图像处理和可视化软件)使用自定义脚本,还将它们放在新行中。 他们计划迁移到clang格式。

使这些细节自动化可以节省开发时间,同时仍可保持样式统一。 lang格式工具使我们能够以非常简洁的方式表达代码风格,并且在提交更改之前我们可以轻松地应用它。 Clang格式也可以理解diffs / git并与之很好地兼容。 我希望很快能看到clang-tidy,因为我正在寻找一种工具,该工具可以自动检查一些更深层的C ++编码样式问题,例如更喜欢C ++ 11语言的新功能。

这些工具使新开发人员可以更轻松地进行创作,因为他们只需运行该工具即可正确使用大多数格式,而不必阅读任何给定项目的冗长的编码样式文档。 它还删除了一些边缘案例,这些边缘案例在评论中可能会被忽略,或者由于对样式指南的不同解释而导致。 这些工具是特定于语言的,但是我鼓励您考虑在开发工作流程中使用它们(或等效的工具)。

在结束时

切勿使用制表符,始终使用空格。 Vim当然是一个真正的文本编辑器。 狗比猫更胜于猫。

翻译自: https://opensource.com/article/17/1/coding-style

clang 汇编代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值