NDepend 3.0已与Visual Studio集成

投递人 itwriter 发布于 2010-02-10 16:17 评论(0) 有1638人阅读  原文链接  [收藏]  « »

NDepend 3.0已与Visual Studio集成,支持对代码的实时分析、可以跨越多个VS解决方案进行代码分析、可以同时编辑多个CQL规则,此外还增强了搜索功能并提升了性能。

NDepend 3.0的一些新特性列举如下:

  • 与Visual Studio的集成——NDepend 3.0实现了与VisualStudio的深度集成,包括从Solution Explorer或CodeEditor的上下文菜单中执行NDepend命令。此前,NDepend可以在构建过程中分析代码;但现在还支持开发过程中的代码分析了,它会于开发过程中在Visual Studio后台执行,如果检测出违反了CQL规则就会即时通知用户。NDepend 3.0可以集成Visual Studio2005、2008以及2010 SLCTP3和RC1。
  • 跨越多个VS解决方案进行代码分析——NDepend 3.0可以分析不同的VS项目或是解决方案的代码。
  • 与VS搜索的增强集成——除了与VS的集成外,搜索功能也得到了极大的增强,可以根据多种条件进行查询:名字、正则表达式、代码度量(metrics)、可视性、纯度(purity)以及修改等等。还可以跨越多个VS解决方案进行搜索。
  • 可以同时编辑多个CQL规则——此前只能一次编辑一个CQL规则,然后检查是否合法;现在用户可以一次编辑多个规则。
  • Dependency Matrix、Dependency Graph及Metric View实现了与VS的集成——现在Dependency Matrix和Dependency Graph已经集成到了VS中,这样用户无需脱离开发环境即可查看代码的依赖关系。
  • 更好的性能(由于引入了增量分析)——目前是通过低优先级的线程进行异步分析,作者声称NDepend可以在2——5秒内验证几百个规则;既可以在每次编辑时进行验证,也可以设定固定的时间间隔来验证。

可以查看发布声明来了解完整的新特性列表。

NDepend是个.NET软件分析工具,可用于检测项目中的代码依赖关系、进行快照(snapshot)比较或是验证项目是否符合代码质量规则。这些规则涵盖了80多个来自于不同领域的代码度量标准,比如依赖(Dependencies)、质量(Quality)、演进(Evolution)、纯度(Purity)/副作用(Side-Effects)/不变性(Immutability)、封装(Encapsulation)等等。

这些规则是通过Code Query Language(CQL)创建的,该语言类似于SQL,但查询的不是数据库而是代码。如下示例展示了如何用CQL进行查询:

//Select all public methods with more than 30 lines of code
SELECT METHODS WHERE NbLinesOfCode > 30 AND IsPublic
//Select refactored methods that are not covered by tests
SELECT METHODS WHERE CodeWasChanged AND PercentageCoverage < 100
//Select top 10 most complex methods
SELECT TOP 10 METHODS ORDER BY CyclomaticComplexity

既可以手工创建规则,也可以借助于VisualNDepend进行可视化创建。最新的CQL规范版本是1.8,NDepend 2.9+均支持该版本的规范。

NDepend 3.0将于本月发布,目前发布了两个Beta版用于测试:专业版需要Pro 2.x协议,试用版则免费。

查看英文原文:NDepend 3.0 Is Integrated with Visual Studio

NDepend 3.0已与Visual Studio集成的更多相关文章

  1. vue-electron 使用sqlite3数据库,执行npm run build 报错 .NET Framework 2.0 SDK,Microsoft Visual Studio 2005[C:\temp\wechat\node_modules\sqlite3\build\binding.sln]

    问题描述 vue-electron 使用sqlite3数据库,执行npm run build 报错如下: .NET Framework 2.0 SDK,Microsoft Visual Studio ...

  2. DevExpress ASP.NET Core v19.1版本亮点:Visual Studio集成

    行业领先的.NET界面控件DevExpress 发布了v19.1版本,本文将以系列文章的方式为大家介绍DevExpress ASP.NET Core Controls v19.1中新增的一些控件及增强 ...

  3. 转:与Microsoft Visual Studio集成良好的第三方工具

    我们都知道,Microsoft Visual Studio(简称VS)是微软开发的一个非常高效的集成开发环境,但即使已经发展到VS2012,仍然有许多不尽人意的地方.一般来讲,一个项目中需要有控件.代 ...

  4. Perforce 与Source Insight, Visual Studio集成

    转自:http://shashanzhao.com/archives/837.html 1.Perforce 首先需要为perforce设置系统环境变量,以便perforce命令行可以正常使用. 环境 ...

  5. how to build apache log4cxx 0.10 by Visual Studio 201*

    Chapter 1 Official Steps  We are going to follow the steps here, http://logging.apache.org/log4cxx/b ...

  6. 跟visual studio 集成的git插件

    目前有三个,git extension,微软的 visual studio tools for git extension,还有git source control provider 经测试,最好用的 ...

  7. 关闭VS2017脚本调试 已启用 Visual Studio 中的 Chrome 脚本调试

    转载:https://blog.csdn.net/lilinoscar/article/details/79114721 每当调试项目时,都是重新打开一个浏览器窗口,而且关闭调试后,也会关闭窗口,很麻 ...

  8. Entity Framework 6.1.0 Tools for Visual Studio 2012 & 2013

    http://www.microsoft.com/en-us/download/confirmation.aspx?id=40762

  9. 微软推出ASP.NET Core 2.0,并支持更新Visual Studio 2017

    微软推出ASP.NET Core 2.0的一般可用性,并发布.NET Core 2.0.该公司还推出了其旗舰集成开发环境(IDE)的更新:Visual Studio 2017版本15.3和Visual ...

随机推荐

  1. uptime命令具体解释——linux性能分析

    基本使用: uptime [-V] 实际分析: 这里因为命令比較简单,所以我们不进行具体地介绍.但越是简单的命令,就越是好用方便.像之前百度面试运维的时候,面试管问我哪个命令能够看得到系统负载.我立即 ...

  2. UIAutomator源码分析之启动和运行

    通过上一篇<Android4.3引入的UiAutomation新框架官方简介>我们可以看到UiAutomator其实就是使用了UiAutomation这个新框架,通过调用Accessibi ...

  3. 小议 js 下字符串比较大小

    原文:小议 js 下字符串比较大小 之前群里有人问如何比较两个时间大小,他的时间格式是 2014-08-08 而不是 2014-8-8.所以我给的方法是 直接比较,如: var a = "2 ...

  4. SQL点滴32—Excel中CONCATENATE函数生成SQL语句

    原文:SQL点滴32-Excel中CONCATENATE函数生成SQL语句 当拿到一个Excel的时候需要将这里面的数据插入到数据库里面,该怎么办,除了使用SSIS数据导入之外还可以使用Excel中的 ...

  5. 快速构建Windows 8风格应用12-SearchContract概述及原理

    原文:快速构建Windows 8风格应用12-SearchContract概述及原理 本篇博文主要介绍Search Contract概述.Search Contract面板结构剖析.Search Co ...

  6. 网页头一定要加的代码段(加注版)一行代码解决各种IE兼容问题,IE6,IE7,IE8,IE9,IE10

      网页头部常见的一段代码 <!--[if lt IE 7 ]><html class="ie6"><![endif]--> <!--[i ...

  7. RESTful API Develop

    yii2 RESTful API Develop   参考文档:http://www.yiiframework.com/doc-2.0/guide-rest.html 以 DB 中的 news 表为例 ...

  8. idea中output log4j中文乱码

    1.设置tomcat中的VM optins:-Dfile.encofing=UTF-8 2.idea安装目录bin文件夹中idea.exe.vmoptions.idea64.exe.vmoptions ...

  9. wcf的binding和host

    ----------------------------Binding绑定:定义:绑定表示通讯信道的配置:定义了客户端与服务端之间的协议:---传输协议:http.tcp.命名管道.msmq,自定义( ...

  10. OSGi.NET 学习笔记

    OSGi.NET 学习笔记 [目录]   持续更新和调整中,本人学习笔记,非官方文档,难免疏漏,仅供参考. OSGi.NET SDK下载地址. 前言及环境准备 模块化和插件化 概念 实例 小结 面向服 ...