Google 开源的 C# 编码样式指南  第1张Google 开源的 C# 编码样式指南  第2张Google 开源的 C# 编码样式指南  第3张

你好,那里是 Dotnet 东西箱,按期分享 Dotnet 有趣,适用的东西和组件,希望对您有用!

那份指南适用于 Google 内部开发利用的 C# 代码,而且是 Google 中 C# 代码的默认款式。指南涵盖了代码, 文件, 定名空间,变量,文件组织体例等。

定名规则

定名规则遵照 Microsoft 官方 的 C# 定名指南, 在 Microsoft 的定名指南没有指定的处所(好比私有变量和部分变量),规则是参考 CoreFX C# 编码指南。

微软文档定名指南:https://learn.microsoft.com/zh-cn/dotnet/standard/design-guidelines/naming-guidelines

CoreFX C# 编码指南:https://github.com/dotnet/runtime/blob/main/docs/coding-guidelines/coding-style.md

代码

• 类、办法、列举、公共字段、公共属性、定名空间, 利用 PascalCase 格局。

• 部分变量,防备参数,利用 camelCase 格局。

• 私有、受庇护、内部和受庇护的内部字段和属性,利用 _camelCase 格局。

• 接口名称用 字母 I 开头,好比 IInterface。

文件和组织体例

• 文件名和目次名是 PascalCase 格局,好比 MyFile.cs。

• 在可能的情况下,文件名应该和文件中次要类的名称是不异的。

• 润色符按以下挨次呈现:

• public

PRotected

• internal

• private

• new

• abstract

• virtual

• override

• sealed

• static

• readonly

• extern

• unsafe

• volatile

• async

var 关键字

var 固然很便利,但有时要考虑到可读性,看看下面的例子。

鼓舞利用

当类型很明显时,好比

var apple = new Apple();

或者

var request = Factory.Create<HttpRequest>();

或者是传递给其他办法的临时变量,好比

var item = GetItem(); ProcessItem(item);

不鼓舞利用

利用根底类型的时候,好比

var success = true;

或者想让用户很容易的晓得类型时, 利用强类型更好。

var listOfItems = GetList();

办法参数

办法需要传入多个参数时,考虑利用一个类组织它,看看下面的例子。

// 可读性差 DecimalNumber product = CalculateProduct(values, 7, false, );

比照

// 可读性更好ProductOptions options = new ProductOptions();options.PrecisionDecimals = 7;options.UseCache = CacheUsage.DontUseCache;DecimalNumber product = CalculateProduct(values, options, completionDelegate: );

项目地址

在 Dotnet东西箱 公家号内,回复 0214,即可获取项目地址。

Dotnet 东西箱Google 开源的 C# 编码样式指南  第4张分享Google 开源的 C# 编码样式指南  第5张点保藏Google 开源的 C# 编码样式指南  第6张