Published Aug 10, 2014

NDepends on How Good Your Code Is

    Delve into the intricacies of NDpend's integration with Visual Studio, highlighting its role in enhancing code quality through innovative metrics and visualization tools, while tackling usability challenges and its impact on development efficiency.
    Episode Highlights
    Coding Blocks logo

    Popular Clips

    Questions from this episode

    Episode Highlights

    • Metrics & Refactoring

      Metrics play a crucial role in guiding code refactoring, as discussed by Michael Outlaw. He highlights the potential of NDpend to integrate with source code history to identify problematic areas needing refactoring, especially by analyzing bug fix histories 1. Allen Underwood sees NDpend as invaluable for maintaining large codebases, offering snapshots of improvements and trends over time 2. This tool is particularly beneficial for those aiming to enhance code quality and maintainability, providing insights into code trends and areas for improvement 3.

         

      Dependency Visualization

      The dependency visualization features of NDpend offer profound insights into code structure. Allen Underwood describes the dependency matrix, which visually represents the relationships between namespaces, allowing users to explore dependencies without leaving the matrix view 4. Joe Zack appreciates the dynamic nature of the dependency graph, which provides detailed information on code components and their interconnections 5. This visualization aids developers in understanding complex codebases and identifying areas that require attention, enhancing overall code comprehension 6.

         

      Cyclomatic Complexity

      Cyclomatic complexity is a key metric in assessing code quality, as explained by Allen Underwood. He notes that NDpend's complexity reports highlight methods with high execution paths, indicating areas needing refactoring 7. Michael Outlaw finds these reports useful for prioritizing code improvements and justifying the time required for complex refactoring tasks 8. This feature helps developers manage code complexity effectively, ensuring maintainable and efficient codebases.

    Related Episodes