microsoft / MapsSDK-Unity
Conditional Complexity

The distribution of complexity of units (measured with McCabe index).

Intro
  • Conditional complexity (also called cyclomatic complexity) is a term used to measure the complexity of software. The term refers to the number of possible paths through a program function. A higher value ofter means higher maintenance and testing costs (infosecinstitute.com).
  • Conditional complexity is calculated by counting all conditions in the program that can affect the execution path (e.g. if statement, loops, switches, and/or operators, try and catch blocks...).
  • Conditional complexity is measured at the unit level (methods, functions...).
  • Units are classified in four categories based on the measured McCabe index: 1-5 (simple units), 6-10 (medium complex units), 11-25 (complex units), 26+ (very complex units).
Learn more...
Conditional Complexity Overall
  • There are 250 units with 4,270 lines of code in units (7.6% of code).
    • 0 very complex units (0 lines of code)
    • 0 complex units (0 lines of code)
    • 17 medium complex units (1,336 lines of code)
    • 20 simple units (790 lines of code)
    • 213 very simple units (2,144 lines of code)
0% | 0% | 31% | 18% | 50%
Legend:
51+
26-50
11-25
6-10
1-5
Alternative Visuals
Conditional Complexity per Extension
51+
26-50
11-25
6-10
1-5
cs0% | 0% | 31% | 18% | 50%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
SupportingScripts/Runtime/Scripts0% | 0% | 27% | 19% | 53%
SupportingScripts/Editor/Scripts0% | 0% | 48% | 21% | 29%
SampleProject/Assets/Microsoft.Maps.Unity.Examples0% | 0% | 15% | 9% | 74%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
private void Update()
in SupportingScripts/Runtime/Scripts/MapRenderer/Interaction/MapTouchInteractionHandler.cs
126 24 0
private void OnSceneGUI()
in SupportingScripts/Editor/Scripts/MapPinEditor.cs
109 22 0
private void UpdateChildrenMapPins()
in SupportingScripts/Runtime/Scripts/MapRenderer/MapRenderer.cs
88 22 0
public override void OnInspectorGUI()
in SupportingScripts/Editor/Scripts/MapSessionEditor.cs
101 16 0
public override void OnInspectorGUI()
in SupportingScripts/Editor/Scripts/MapRendererEditor.cs
161 15 0
private void Update()
in SupportingScripts/Runtime/Scripts/MapRenderer/Interaction/MapMouseInteractionHandler.cs
57 15 0
private void Update()
in SampleProject/Assets/Microsoft.Maps.Unity.Examples/Common/Scripts/MixedRealityMapInteractionHandler.cs
61 14 0
private void OnSceneGUI()
in SupportingScripts/Editor/Scripts/MapRendererEditor.cs
93 14 0
protected string FormatUrl()
in SupportingScripts/Runtime/Scripts/MapRenderer/TextureTileLayers/HttpTextureTileLayer.cs
63 14 1
private void Update()
in SupportingScripts/Runtime/Scripts/MapRenderer/Interaction/MapInteractionController.cs
33 12 0
internal void GetPinsInView()
in SupportingScripts/Runtime/Scripts/MapRenderer/MapPin/MapPinSpatialIndex.cs
66 12 6
internal void GetPinsInView()
in SupportingScripts/Runtime/Scripts/MapRenderer/MapPin/MapPinSpatialIndex.cs
67 12 7
public bool Raycast()
in SampleProject/Assets/Microsoft.Maps.Unity.Examples/Common/Scripts/MapRaycastProvider.cs
59 11 4
public override void OnGUI()
in SupportingScripts/Editor/Scripts/TileLayerDrawer.cs
99 11 3
private void GetValidTileLayerComponents()
in SupportingScripts/Editor/Scripts/TileLayerListDrawer.cs
45 11 3
private void PanAndZoom()
in SupportingScripts/Runtime/Scripts/MapRenderer/Interaction/MapInteractionController.cs
42 11 4
private void RemoveMapPin()
in SupportingScripts/Runtime/Scripts/MapRenderer/MapPin/MapPinSpatialIndex.cs
66 11 2
private ReorderableList GetList()
in SupportingScripts/Editor/Scripts/TileLayerListDrawer.cs
78 9 1
public static object GetFieldOrPropertyValue()
in SupportingScripts/Editor/Scripts/UnitySerializationPath.cs
43 9 4
private void UpdateMapPinsInView()
in SupportingScripts/Runtime/Scripts/MapRenderer/MapPin/MapPinLayer.cs
83 9 2