代码之家  ›  专栏  ›  技术社区  ›  Jonas

有没有一种更好的方法来记录实现接口的方法?[关闭]

  •  0
  • Jonas  · 技术社区  · 14 年前

    我想知道是否有办法做到这一点,或者即使应该做到这一点?我很快就开始使用方法属性,因为它是一种元数据,但我不确定是否有用于此目的的属性。现在,我只是使用XML注释 <remark> 用于指示方法何时实现某些接口的标记。但这当然不是元数据的结构化形式。

    也许自动化的代码文档系统已经可以通过代码来解析这些信息,但是对于任何阅读实际代码的人来说,更容易地遵循它仍然是有用的。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Andy Shellam    14 年前

    如果您的意思类似于实现接口的类列表,那么可以使用 <seealso> 文档标题的标记。

    /// <summary>
    /// Interface that AutoCAD commands are required to implement.
    /// </summary>
    /// <seealso cref="My.Namespace.ClassThatImplementsThisInterface"/>
    /// <seealso cref="My.Namespace.AnotherClassThatImplementsThisInterface"/>
    public interface IMyInterface
    

    您也可以对引用回接口方法的方法执行此操作:

    public class ClassThatImplementsThisInterface : IMyInterface
    {
        /// <summary>
        /// </summary>
        /// <seealso cref="My.Namespace.IMyInterface.InterfaceMethod" />
        public void InterfaceMethod()
        {
        }
    }
    

    我在C中只使用过一个文档生成器,当时没有使用上述方法,所以我不能说这是理所当然的,但我相信生成器应该收集这些引用,并在文档中创建指向引用方法/类/接口的链接。

        2
  •  2
  •   Chaitanya    14 年前

    看看GhostDoc。它是一个免费的Visual Studio插件。它有菜单和简单的键盘快捷键,可以自动生成文档注释。它也足够聪明,可以从方法的名称中推断出一些功能。例如,如果您有“public void save person()”等方法,当您在该方法内时,按ctrl+shift+d,它将生成以“此方法用于保存人员”之类的内容填充的注释。

    如果您的类实现了一个接口,它也将记录该接口。如果方法采用参数,它将交叉引用这些类型。

    您仍然需要输入大量的文本来为您的类/方法/属性实际所做的添加值,但是ghostDoc是一种生成代码文档中基本框架、交叉引用、继承层次结构和接口详细信息的好方法。