Level code metric description: The Level value for a namespace is defined as follow:
Level = 0 : if the namespace doesn’t use any other namespace.
Level = 1 : if the namespace only uses directly namespace defined in third-party assemblies.
Level = 1 + (Max Level over namespace it uses direcly).
Level = null : if the namespace is involved in a dependency cycle or uses directly or indirectly a namespace involved in a dependency cycle.
Level metric definitions for assemblies, types and methods are inferred from the above definition. This metric has been first defined by John Lakos in his book Large-Scale C++ Software Design.
Recommendations: This metric helps objectively classify the assemblies, namespaces, types and methods as high level mid level or low level. There is no particular recommendation for high or small values. This metric is also useful to discover dependency cycles in your application.
Requirements
Target Platforms: Windows 11, 10, 8, 7 and Linux, MacOS with net8.0, net7.0 or net6.0 installed