我觉得这个优秀的IDE默认隐藏行号,这完全是反着来的。这似乎是一个明显的疏忽或者是差劲的默认设置。
这意味着我可能忽略了某些东西,因为在VS开发团队和我之间,我知道谁更有经验。
那么我错过了什么?为什么我不需要在代码中看到行号?
我觉得这个优秀的IDE默认隐藏行号,这完全是反着来的。这似乎是一个明显的疏忽或者是差劲的默认设置。
这意味着我可能忽略了某些东西,因为在VS开发团队和我之间,我知道谁更有经验。
那么我错过了什么?为什么我不需要在代码中看到行号?
行号在进行双人编程时非常重要。 当两个人一起工作时,说出类似于“第35行有问题”的话语非常有帮助。
我只有在需要查看特定行(例如在堆栈跟踪中)时才对行号感兴趣。此时,我想要直接转到该特定行,但并不需要看到周围的行号。
对于我来说,内容很重要,而行号只会浪费屏幕空间。
我认为更重要的问题是问自己为什么需要看到行号。它们对你来说有多重要?在哪些情况下需要查看当前页面的所有行号,而不仅仅是显示在状态栏的当前行?
编辑:我同意迈克尔的答案,对于配对编程这个具体例子,它们是有用的。就我个人而言,我很少进行编程配对(我很乐意这样做,只是很少机会),因此线号在其他时间并不实用,甚至分散注意力。
鉴于默认情况下必须有一个选项,那么最常见的偏好是显而易见的,即默认情况下为“关闭(off)”。
虽然我个人可以轻松地没有它们,但我喜欢代码行号,因为我倾向于a)使用它们在代码文件中定位自己,b)在与其他程序员讨论代码时使用它们作为最快的方法将他们带到我们正在讨论的特定代码行,c)提供一丝代码味道,并提醒我正在处理的特定代码文件有多大。
这是用户偏好的问题,没有对错之分,只需创建一个自定义设置文件并将其打开,这样您就不必每次都记得设置它(尽管我确信这只在重新安装VS时偶尔完成一次)。
Visual Studio 允许多种方式查看您的代码。例如,您可以使用搜索和下拉菜单。如果您有许多命名的小函数,那么行号可能对您没有任何意义。因此,虽然我喜欢它们,但这并不是真正的问题,不是吗?
对于那些想要打开行号的人
要在代码中显示行号
在“工具”菜单上,选择“选项”。
在选项窗口左侧的类别列表中,展开“文本编辑器”节点。
展开“所有语言”子节点并选择“常规”以全局设置此选项。
注意: Visual C# Express用户必须单击“显示所有设置”才能显示“所有语言”子文件夹。
或者
选择您正在编程的语言的子文件夹中的常规选项。
在“显示”部分选择“行号”。
行号对于一些人来说可能很有用,但对于另一些人来说在屏幕上却很麻烦。而它们可以帮助快速访问异常堆栈日志中提到的确切行,并且是实现代码审查引入的更改的简便方法。
无论如何,即使有更多用途,也有更多的开发人员不使用它们。这是VS开发人员关注的问题:他们提供了工具,但并不默认全部开启。
显然,唯一的“确定性”答案必须来自VS开发团队中的某个人。我总是启用行号,但在阅读了这篇文章后,我开始改变想法了。关于“为什么默认关闭”,我并不认为杂乱无序是一个问题。然而,我确实看到了一个有说服力的论点,即“强制”自己不使用行号。正如Jon Skeet所提到的,我真正需要行号的时候只有从堆栈跟踪中。具体来说,是从外部堆栈跟踪中,因为据我所知,所有内部行引用也会在您单击它们时将您带到该行。对于外部引用,我可以看到如何通过强制自己使用“转到行”而不是寻找它来节省时间。
简而言之?关闭行号,你就会强迫自己使用工具来查找特定的行,而不是寻找。