C# 确定类和方法重要性的工具

C# 确定类和方法重要性的工具,c#,.net,development-environment,programming-tools,C#,.net,Development Environment,Programming Tools,当面对新代码时,我经常花时间找出哪些类和方法构成了核心功能,而不仅仅是环境中的东西。如果代码遵循众所周知的架构设计,具有可见的结构、描述性名称、文档、单元测试等,那么任务就更容易了。然而,情况并非总是如此。有时代码只是一个意大利面,天知道那里发生了什么 我相信有一些算法可以用来粗略地对代码部分进行分类,这样开发人员就可以一目了然地看到重要的东西,而无需手动处理 例如: 对于视图和视图模型,该工具可以在稍后的版本中突出显示绑定,以便开发人员可以看到入口点 方法和类的使用发生在调用链的某个级别。有些

当面对新代码时,我经常花时间找出哪些类和方法构成了核心功能,而不仅仅是环境中的东西。如果代码遵循众所周知的架构设计,具有可见的结构、描述性名称、文档、单元测试等,那么任务就更容易了。然而,情况并非总是如此。有时代码只是一个意大利面,天知道那里发生了什么

我相信有一些算法可以用来粗略地对代码部分进行分类,这样开发人员就可以一目了然地看到重要的东西,而无需手动处理

例如:

  • 对于视图和视图模型,该工具可以在稍后的版本中突出显示绑定,以便开发人员可以看到入口点
  • 方法和类的使用发生在调用链的某个级别。有些方法只有在逻辑中才能被深入调用(低优先级)。其他操作直接从用户操作处理程序调用(高优先级)
  • 是否有一种工具能够根据代码的重要性在VisualStudio中筛选或突出显示类和方法

    它可以如下所示:


    根据重要性,我在这里理解到,例如,
    Main
    方法具有高度重要性,因为它是所有其他方法的根。您可以从
    Main
    方法转到代码中的任何其他方法
    MethodL2
    的重要性很低,因为它只是一片叶子。叶子重要性的计算也应该从它们的父母重要性中得出。我的意思是,这一意义上的重要性不仅仅在于深度或发生的程度。

    +1,以下是可能感兴趣的,最明显的方法是使用VS中实现的注释系统来记录您的类。这将允许您在使用该类时拥有某种文档。文档可以包含有助于您确定重要性的内容。当然,当我们提到重要性时,它是一个对象对程序员的重要性。每个程序员都会,或者可能已经对一个不同于您的对象进行了分类。当您移出程序集时,这也可能变得很困难,因为同样的原因,很容易确定一个未调用的私有方法,而不是一个未调用的公共/受保护的方法。您可以在探查器中运行它,并查看它在哪些方面花费的时间最多,花费的时间长可能与调用链中的更高级别相关,就好像一个方法需要时间一样,调用它的每个方法也需要时间。