学习了,赞!!
【 在 hanjiamajia 的大作中提到: 】
: 标 题: Re: 有时候我真受不了一种code review
: 发信站: 水木社区 (Tue Apr 18 17:54:06 2023), 站内
:
:
: 【 在 feed 的大作中提到: 】
: : 就是比如:
: : MyClass obj = produce.Get( type );
: : 要我改成
: : ...................
:
: 1. 首先不要用 "review" 来检查项目代码风格,2023年了,开发任何语言都请用代码风格检查工具来统一。
: 项目开发开始时讨论确定风格,之后谁的代码 style 不符合,直接提交的时候 CI 打回就是了
:
: 2. dotnet 的代码风格检查是写在 .editorconfig 里的,VS/VSCode 开发时和编译时都会检查
:
: 3. 具体到 var 的使用,style 检查的文档在这里
https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0007-ide0008: 详细来说就是 csharp_style_var_for_built_in_types csharp_style_var_when_type_is_apparent csharp_style_var_elsewhere 这三个选项
:
: csharp_style_var_for_built_in_types 是 内置系统类型的变量,例如 int
: csharp_style_var_when_type_is_apparent 是右面明确了类型,例如 var i = new Class1();
: csharp_style_var_elsewhere 是右面不明确类型,比如 var i = getResponse();
:
: 三个选项分别设置成 true 就是强制 var,设置成 false 就是强制显式类型
:
: 4. MS 自己要求很高,自己对这三个选项的设置
https://github.com/dotnet/runtime/blob/90d0d5ce4e4fdf17209d6a4e4a96d62865e2b88f/.editorconfig#L48:
:
: csharp_style_var_for_built_in_types = false:suggestion
: csharp_style_var_when_type_is_apparent = false:none
: csharp_style_var_elsewhere = false:suggestion
:
:
: 都是 false,是强制使用显式类型名的。也就是 var i = 1; 都不允许,必须是 int i = 1;
:
: 5. 但是日常开发用的最多的推荐配置是这个
https://github.com/RehanSaeed/EditorConfig/blob/main/.editorconfig :
: 这三项都是 true,也就是强制使用 var,左边不允许出现类型名。优点是整齐美观
:
: 6. 代码风格有的很重要,因为很容易造成bug。但var,真的只是风格,你们想用哪个用哪个,关键是定下来,不要用 review 肉眼纠正
: --
:
: ※ 来源:·水木社区
http://www.mysmth.net·[FROM: 182.150.116.*]
--
FROM 124.64.23.*