NDepend est un produit bien connu des développeurs soucieux de produire des applications robustes puisqu'il analyse de façon statique votre code source grâce à des outils très puissants.
Cette version 4.0 apporte son lot de nouveautés :
-
Complète intégration à Visual Studio 11 (futur VS2012),
-
Création de requêtes et de règles en LINQ grâce à CQLinq,
- CQLinq est basé sur la nouvelle API de NDepend.
Au programme, vous pourrez retrouver plus de 60 nouvelles règles (personnalisables) écrites avec CQLinq mais aussi la mise à jour et l'optimisation des règles précédemment présentent. Mieux encore, un outil permet de convertir vos requêtes CQL en CQLinq automatiquement !
Vous trouverez aussi 14 Power Tools open-sources basés sur NDepend.API que vous pourrez adapter facilement pour vos besoins !
Un petit exemple de la puissance de NDepend, le code suivant permet de rechercher toutes les instances d'objet Disposable qui n'appellent pas la méthode Dispose() :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
// <Name>Types with disposable instance fields must be disposable</Name>
warnif count > 0
let iDisposable = ThirdParty.Types.WithFullName("System.IDisposable").FirstOrDefault() where iDisposable != null // iDisposable can be null if the code base doesn't use at all System.IDisposable
from t in Application.Types where !t.Implement(iDisposable) && !t.IsGeneratedByCompiler
let instanceFieldsDisposable = t.InstanceFields.Where(f => f.FieldType != null && f.FieldType.Implement(iDisposable))
where instanceFieldsDisposable.Count() > 0 select new { t, instanceFieldsDisposable }
|
Pour en savoir plus, je vous conseille vivement d'aller voir la page consacrée à NDepend v4.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :