dotnet core 编程规范

本文实际只是翻译 .NET Core foundational libraries 官方文档的编码风格html

.NET Core foundational libraries项目使用的编程规范默认就是 VisualStudio 默认样式。git

花括号

花括号使用 Allman style 风格,全部的花括号在新的一行开始。github

关于 Allman style 就是以下,花括号放在下一行,并且花括号不进行缩进,花括号里面的代码缩进。编程

while (x == y)
{
    something();
    somethingelse();
}

可是对于单行的语句,能够不添加花括号,可是请把它放在同一行app

if (xx == null) xx = new Foo();

单行语句一样建议添加花括号避免苹果的bugide

若是不添加花括号,必定不要在嵌套时使用。函数

空格

使用 4 个空格做为一个缩进,而不是使用 tabui

字段

全部的字段使用_camelCase风格,并且尽量使用readonly。在 internal 和 private 访问的字段添加 _ 前缀,对于静态的字段添加s_前缀,对于线程静态的字段添加t_前缀。若是使用了静态的字段并且能够设置readonly,须要把readonly放在static后面。this

最好不要公开字段,若是须要公开那么使用PascalCasing风格并且不添加前缀。编码

我不是很赞同对字段的风格,可是由于本文是翻译,我就没有添加本身的理解。

限定

不要添加 this. ,彻底是不必的。

我也不是很赞同这个,由于若是使用扩展方法,须要使用this.

访问

显示指定访问,即便访问是默认的,如private string _foo ,而不是string _foo。访问须要放在最前面,如public abstract,不建议abstract public

默认的访问是可能修改的

命名空间

对于引用须要放在文件的开头。

空行

禁止超过一行的空白,不可使用两行空白。

不要使用两行分割两个类型。

多余空格

禁止在一行结束添加多余空格。经过 VisualStudio 的查看空格(ctrl+E,S)能够看到空格

参照现有

若是一个文件在格式规范定义以前已经有本身的规范,尽量参照文件现有的规范而不是去修改他。

新的修改参照现有的文件的格式。

我一点都不赞同。

明显的类型

只能在明显能够知道对象类型可使用 var ,如var stream = new FileStream(...) 。在没法明显知道对象类型不可使用 var ,如var stream = OpenStandardInput()

关键字

使用语言的关键字代替 BCL 类型,如使用 int, string, float代替Int32StringSingle

常量命名

对于全部的常量,包括静态只读,使用 PascalCasing 风格。若是须要使用 C++ 或其余代码对于命名有要求才可使用其余的方法。

变量名字符串

若是使用变量名的常量,必须使用 nameof 关键字。

字段结构

字段必须放在一个类声明的最前面。

我一点都不同意,由于谁会去管一个类的字段,我关心的是构造函数和公开属性、函数。

其余字符

若是在代码使用了 非 ascii 的字符,那么须要把他转换为 \uxx 方式,这样能够解决一些非 ascii 由于编译器分析的问题。

固然上面的要求只是对于编译的代码

Label

使用 Label 缩进一个小于当前缩进的标签

原文:coding-style.md

dotnet core 编程规范 - CSDN博客

知识共享许可协议
本做品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、从新发布,但务必保留文章署名林德熙(包含连接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的做品务必以相同的许可发布。若有任何疑问,请与我联系

相关文章
相关标签/搜索