lexington soft

What is Code Review? Guidelines and Best Practices

Thursday, July 22, 2021

Code review is the process of mandating systematically one or several developers to review the code written by another developer in other to detects defect and to improve it. Code review is more often performed by an experienced developer considering the various aspects including the quality and security of code, sharing the knowledge, enabling better …

dotnet code

In the Jungle of .NET Obfuscator Tools

Thursday, June 10, 2021

In this article I will explain our genuine experience with various .NET Obfuscator Tools. There are actually dozens of .NET Obfuscator as listed here obviously we didn’t try them all. Many of these projects are abandoned anyway. On a side note it is surprising to see so many attempts. I guess building an obfuscator is a task considered both …

Refactored code architecture

Clean Architecture Refactoring: A Case Study

Thursday, April 29, 2021

Introduction to Clean Architecture   The recent post Clean Architecture for ASP.NET Core Solution: A Case Study explained that one of the most interesting property promoted by Clean Architecture is the abstraction of the infrastructure code. This way the application can consume the infrastructure code without being bound with its implementation. The infrastructure code represents basically all kinds of frameworks an application can use: UI, …

visualizing where code will need to be injected

How to Plan Large-Scale Refactoring?

Thursday, February 25, 2021

  The .NET platform exists for two decades and nowadays the technology is evolving faster than ever. It is now time for serious .NET applications to be refactored to run over the brand new .NET stack based on .NET 5.0, and later this year .NET 6.0 LTS (Long Time Support Version). NDepend is quite a …

traffic lights

10 Reasons Why You Should Write Tests

Thursday, February 11, 2021

As many, I started programming when I was a child 3 decades years ago. With no doubt, the most important practice I’ve adopted during my professional career is to write automatic tests. Not only there are plenty of short/mid/long terms benefits but it just leads to better code and more pleasant working days. I’d like …

New Release!

What’s new in NDepend v2021.1

Thursday, February 04, 2021

Importing Code Coverage Data from NCrunch Since NCrunch version 4.5.0 released in November 2020, NCrunch can export coverage data to OpenCover format XML files. NDepend can now import coverage data from the OpenCover format XML files generated by NCrunch. Improved resolving of assemblies from a Visual Studio solution Improved support for MSBuild variables: $(SolutionDir) $(Configuration) New …

Code City by Richard Wettel

Visualize Code with Software Architecture Diagrams

Thursday, December 10, 2020

The source code is the design. This famous motto means that no matter how many diagrams you draw and discuss with your colleagues, what matters is how the existing source code is actually structured. The need for visualizing code It is important to distinguish between the static view of code (how classes depend on each other in …

MethodInterceptorAspect Class Inheritance Diagram

When your brain can’t handle the complexity: NDepend and PostSharp

Thursday, November 12, 2020

The size and complexity of codebases have exploded in the last decade. What can you do when your codebase no longer fits your brain? In this article I’ll suggest two completely different tools: NDepend to visualize the code, and PostSharp to reduce its complexity. Since PostSharp is itself a complex codebase, we’ll use NDepend to …

Visual Studio tips

Top 10 Visual Studio Refactoring Tips

Wednesday, September 09, 2020

With the version 2019 Visual Studio is now mature when it comes to refactoring. This post proposes a tour of the top 10 most used refactoring actions in my opinion. ) Renaming an Identifier With Ctrl+R,R you can rename any code identifier: a variable, a field, a class… The renaming experience is pretty clean when only one …

nDepend dotnet software testing

Case Study : Complex UI Testing

Thursday, June 11, 2020

This post was originally posted at https://blog.ndepend.com/case-study-complex-ui-testing/. Author: Patrick Smacchia In the previous post Case Study: 2 Simple Principles to achieve High Code Maintainability I explained that the principles layered code + high coverage ratio by test are 2 simple principles that can be objectively applied, validated and measured. When these 2 principles are applied they lead to High …