为什么我需要在C#/ .Net代码中使用这些讨厌的注释?

时间:2013-08-20 07:02:04

标签: c# .net xml-comments

我正在构建应用程序,其中一个要求是使用类似这样的注释:

/// <summary>
/// Creates new client.
/// </summary>
/// <param name="uri">The URI.</param>
/// <param name="param">The param.</param>
/// <returns></returns>

据我所知,各种工具很容易根据这些xml生成文档。但它显着降低了代码的可读性,而这正是我们人类试图实现的目标。

这种方法可以被.Net中的任何其他技术取代吗?什么是提高代码可读性和清洁度的更好方法?

5 个答案:

答案 0 :(得分:7)

当有人在通过你的方法时使用intellisense时,应该在visual studio上弹出这些信息。这将节省时间,因为无论谁使用您的代码都不需要进入您的代码(因此意味着您也不需要公开任何代码)并查看您所写的其他评论。

我认为文档在保持简短和重要的时候从来都不是坏事,也不会影响代码的可读性。

答案 1 :(得分:2)

  

使用第三方dll时智能感知会伤害你吗?

我不认为这样。这是使用此评论的主要原因之一。

假设你正在修改一个dll(或写一个别人会使用的类),对他/她来说,当他输入时,他知道方法的作用和参数的工作原理并不会有帮助吗? / p>

答案 2 :(得分:1)

你绝对不应该避免这些评论!它们为Visual Studio提供IntelliSense,并可构成SandCastle等自动文档工具的基础。据我所知,你在技术方面唯一的选择就是这个(获得所有这些功能)。

为了提高可读性,您可以使用Visual Studio中第一个标记旁边的[ - ]最小化每条注释。这样你只会看到第一行。这在日常处理代码时非常有用。

我还发现导航下拉列表有助于在类中定位方法,如果您发现xml使其更难以导航/浏览。

但是使用它们是一件好事,你习惯了它们

答案 3 :(得分:1)

不同的文档格式适合不同的场景。

XML注释最适合自动帮助文件生成和Intellisense。根据需要,它们比其他方法更冗长,因为它们需要存在特定标记才能生成文档。虽然语法可能更好,但请记住,当每个人都认为XML是一个很酷的想法时,它们就会被创建出来。

对于一般注释,您可以使用有文化的编程风格和nocco之类的工具来创建和显示HTML页面。该工具提取注释并将其显示在代码旁边的HTML页面中。 nocco页面本身是nocco在nocco.cs上的输出

Nocco甚至使用Markdown进行格式化。

当然,你可以混合和匹配方法,例如。对公共方法使用XML注释,对内部注释使用文本注释。

答案 4 :(得分:0)

VS文档和评论不会降低大多数人的代码可读性,反之亦然。如果您认为这些注释会降低代码的可读性,则可以折叠它们甚至更改它们的颜色。

但请想一想将光标放在函数上方并显示方法及其参数的信息时有多大帮助。这是最好的可读性