Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否有人更改Visual Studio默认支撑样式?-有标准吗?_C#_Visual Studio_Coding Style_Standards - Fatal编程技术网

C# 是否有人更改Visual Studio默认支撑样式?-有标准吗?

C# 是否有人更改Visual Studio默认支撑样式?-有标准吗?,c#,visual-studio,coding-style,standards,C#,Visual Studio,Coding Style,Standards,我发现默认的支撑样式在行计数上有点浪费,例如 function foo() { if (...) { ... } else { ... } } 比如说,如果我用JavaScript写的话,会不会像 function foo() { if (...) { ... } else { ... } } …据我所知,这也可能不合人们的口味 但问题是,您是否关闭VS格式

我发现默认的支撑样式在行计数上有点浪费,例如

function foo()
{
    if (...)
    {
        ...
    }
    else
    {
        ...
    }
}
比如说,如果我用JavaScript写的话,会不会像

function foo() {
    if (...) {
        ...
    } else {
        ...
    }
}
…据我所知,这也可能不合人们的口味


但问题是,您是否关闭VS格式样式并使用自己的规则?当许多人在同一个代码库上工作时,业界对此有何看法?仅仅为了简单性/一致性而坚持默认值是否更好?

我第一次开始使用c#时就曾打过这场仗。最后,我认为99%的人会使用默认布局


我屈服于人群的压力。

你需要有编码标准。没有最好的标准。诸如在自己的线路上或在同一线路上安装支架之类的标准是一个决策,人们可能会考虑相关开发商的舒适度,而不是行业意见(通常会有分歧)


但一旦定义了标准,您应该调整您的工具以适合您。例如,您可以根据您的标准更改VS设置(工具->选项),然后将这些选项组导出为.vssettings文件,将其保存在中心位置/代码存储库中,并要求每个开发人员导入它。

我倾向于坚持默认规则,部分原因是我自己的首选项,但也因为我参与的所有项目(到目前为止)他一直坚持着


您可以在Options/Text Editor/C#/Formatting/new lines下找到新行的规则。

如果您在团队中工作,并且您的代码受源代码管理,我会坚持默认设置。
否则,您将很难区分签入时的实际更改与大括号位置不同引起的更改之间的差异。在javascript中,根据我的记忆,有很好的理由使用大括号,正如上面所示。道格拉斯·克罗克福德(Douglas Crockford)有一篇关于为什么会这样的好文章,我没有添加文章的链接,因为我现在找不到它,但值得一看他的网站,因为它有大量关于javascript的有趣内容。

我总是关闭格式设置中的额外行,我喜欢更简洁的语法


我还将字体更改为Verdana,为字符串文本添加浅灰色背景,删除粗体语法对匹配(因为这会使代码跳转),并将其设置为保留制表符,而不是将它们转换为空格。除此之外,我发现默认设置可以正常工作。

我认为这与VS default是什么无关,甚至与行业标准无关。最重要的一点是你的团队使用什么,以及付账人更喜欢什么。如果你的公司实际上没有一个固定的标准,你可以通过推荐这个小宝石看起来像百万美元。如果使用源控制,这种标准化可以在扩散时节省大量噪音。不过,这只是我的两分钱。

哎呀,我没把问题读对。我非常喜欢默认格式,使其他人的代码更容易修饰:)@Moo,屏幕上一次可以看到的行数是一个宝贵的资源。@Moo/ssg是的,这就是我的意思,显然就存储而言,这不算什么,只是就能够在屏幕上显示我的例程而言。来自VB背景的我习惯于用更少的行获得更多的代码内容。(提示回应:)@ssg,我认为它让事情变得清晰,看起来不那么“杂乱”。当然,这是个人观点:)@Moo Juice,这是一个完全正确的观点。我也习惯了默认样式。+1。您的公司应该定义(或接受)一个标准,并且应该调整工具以适应它。你不想看到的一件事是,同一个团队中的两个开发人员使用不同的标准,浪费时间互相纠正。这是一个特别痛苦的问题,因为它会产生非常嘈杂的差异。这很有趣,有没有可能让VS实施几乎任何你喜欢的支撑风格?例如,我在第二个示例中使用的一个,然后将其导出到.vssettings文件?@El-Ronnoco,这是可能的-看看工具->选项->文本编辑器->格式->新行->大括号的新行选项。对于导入/导出,请签出工具->导入/导出设置。是的,但无法强制执行
}其他操作{
我上面使用的类型结构,是吗?编辑器选项只允许您打开或关闭“单行上的else”,然后这将取决于单个开发人员他们做了什么?@El Ronnoco-即使您遵循默认的支撑样式,您的论点也适用。是的-您不能强制开发人员在工具中遵循标准-至少但是你可以在以后的阶段强制使用ast——手动执行代码检查,或者在构建/签入时使用自动检查——例如VS code Analysis/FxCop和StyleCop()——我相信后者应该有办法捕获与支撑相关的不符合项。是的,我觉得标签->空格很烦人(让我想起了我曾经不得不使用的一种有点神秘的语言)。我可能会尝试一下你的设置:)这是一个答案,它实际上描述了你在哪里设置你的编码风格,对于C#。对于javascript,这个位置是工具/选项/文本编辑器/javascript/类型脚本/格式/新行。