microsoft / EmbeddedSocial-SyncService-for-OBA
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 177 units with 2,505 lines of code in units (44.4% of code).
    • 0 very long units (0 lines of code)
    • 5 long units (339 lines of code)
    • 28 medium size units (862 lines of code)
    • 54 small units (798 lines of code)
    • 90 very small units (506 lines of code)
0% | 13% | 34% | 31% | 20%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
cs0% | 13% | 34% | 31% | 20%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
Tools0% | 51% | 20% | 18% | 9%
Storage0% | 9% | 19% | 47% | 23%
WorkerRole0% | 65% | 0% | 16% | 17%
PublishToEmbeddedSocial0% | 9% | 61% | 11% | 16%
OBAClient0% | 0% | 36% | 49% | 13%
Email0% | 0% | 49% | 21% | 28%
Diff0% | 0% | 53% | 27% | 18%
OBADownload0% | 0% | 51% | 15% | 32%
Utils0% | 0% | 22% | 45% | 31%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
private static void ParseArgs()
in code/Tools/Ops/ManageServerState/Program.cs
86 19 1
where T : new()
in code/Storage/EntityAdapter.cs
75 5 0
public static async Task AsyncMain()
in code/Tools/Ops/ManageServerState/Program.cs
65 16 1
private async Task RunAsync()
in code/WorkerRole/WorkerRole.cs
62 3 1
private async Task CreateTopic()
in code/PublishToEmbeddedSocial/EmbeddedSocial/EmbeddedSocial.cs
51 9 4
public static async Task PublishRoutesToEmbeddedSocial()
in code/PublishToEmbeddedSocial/Components/PublishRoutes.cs
43 6 7
public static async Task PublishStopsToEmbeddedSocial()
in code/PublishToEmbeddedSocial/Components/PublishStops.cs
43 6 6
private async Task DeleteTopic()
in code/PublishToEmbeddedSocial/EmbeddedSocial/EmbeddedSocial.cs
43 12 1
public static async Task DownloadAndStore()
in code/OBADownload/Components/DownloadRegionsList.cs
39 9 4
private static async Task ValidateAndPrintConfiguration()
in code/Tools/Ops/ManageServerState/Program.cs
38 13 2
public async Task CreateTables()
in code/Storage/StorageManager.cs
37 9 0
public static string StringToTableKey()
in code/Utils/ExtensionMethods.cs
37 6 1
internal async Task SendAndReceiveAsync()
in code/OBAClient/Client/ClientHelper.cs
36 11 0
private async Task UpdateTopic()
in code/PublishToEmbeddedSocial/EmbeddedSocial/EmbeddedSocial.cs
36 9 4
private static async Task DiffAndStore()
in code/Diff/Components/DiffRoutes.cs
35 1 7
private static async Task DiffAndStore()
in code/Diff/Components/DiffStops.cs
35 1 6
public static string Convert()
in code/Email/ConvertToHtml.cs
32 2 1
public static string Convert()
in code/Email/ConvertToHtml.cs
32 2 1
private async Task GetTopic()
in code/PublishToEmbeddedSocial/EmbeddedSocial/EmbeddedSocial.cs
31 9 1
public StorageManager()
in code/Storage/StorageManager.cs
30 8 3