microsoft / Microsoft.Shared.Dna.Json
File Size

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

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 22 files with 3,027 lines of code.
    • 1 very long files (1,146 lines of code)
    • 1 long files (687 lines of code)
    • 2 medium size files (478 lines of codeclsfd_ftr_w_mp_ins)
    • 1 small files (110 lines of code)
    • 17 very small files (606 lines of code)
37% | 22% | 15% | 3% | 20%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
cs42% | 25% | 17% | 4% | 11%
ps10% | 0% | 0% | 0% | 100%
targets0% | 0% | 0% | 0% | 100%
cmd0% | 0% | 0% | 0% | 100%
proj0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Microsoft.Shared.Dna.Json59% | 35% | 0% | 0% | 4%
Microsoft.Shared.Dna.Json.Profile0% | 0% | 46% | 21% | 31%
Microsoft.Shared.Dna.Json/Microsoft.Shared.Dna0% | 0% | 78% | 0% | 21%
scripts/init0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Longest Files (Top 22)
File# lines# units
JsonParser.cs
in Microsoft.Shared.Dna.Json
1146 51
JsonBuilder.cs
in Microsoft.Shared.Dna.Json
687 39
JsonDna.cs
in Microsoft.Shared.Dna.Json.Profile
245 19
FixedStringBuilder.cs
in Microsoft.Shared.Dna.Json/Microsoft.Shared.Dna
233 13
JsonDnaPerformanceTests.cs
in Microsoft.Shared.Dna.Json.Profile
110 14
Profiler.cs
in Microsoft.Shared.Dna.Json.Profile
94 4
JsonTokenTypeExtensions.cs
in Microsoft.Shared.Dna.Json
85 6
Initialize-DownloadLatest.ps1
in scripts/init
73 -
StringSegment.cs
in Microsoft.Shared.Dna.Json/Microsoft.Shared.Dna
62 4
Program.cs
in Microsoft.Shared.Dna.Json.Profile
57 1
Update-Environment.ps1
in scripts/init
47 -
targets
Microsoft.Shared.Dna.targets
in root
33 -
Initialize-InstallFromNuget.ps1
in scripts/init
26 -
Initialize-Environment.ps1
in scripts/init
25 -
cmd
build.cmd
in root
22 -
proj
build.proj
in root
22 -
Initialize-NuGet.ps1
in scripts/init
20 -
Restore-ToolPackages.ps1
in scripts/init
20 -
IProfile.cs
in Microsoft.Shared.Dna.Json.Profile
9 -
cmd
profile_all.cmd
in Microsoft.Shared.Dna.Json.Profile
7 -
cmd
init.cmd
in root
3 -
init.ps1
in root
1 -
Files With Most Units (Top 9)
File# lines# units
JsonParser.cs
in Microsoft.Shared.Dna.Json
1146 51
JsonBuilder.cs
in Microsoft.Shared.Dna.Json
687 39
JsonDna.cs
in Microsoft.Shared.Dna.Json.Profile
245 19
JsonDnaPerformanceTests.cs
in Microsoft.Shared.Dna.Json.Profile
110 14
FixedStringBuilder.cs
in Microsoft.Shared.Dna.Json/Microsoft.Shared.Dna
233 13
JsonTokenTypeExtensions.cs
in Microsoft.Shared.Dna.Json
85 6
Profiler.cs
in Microsoft.Shared.Dna.Json.Profile
94 4
StringSegment.cs
in Microsoft.Shared.Dna.Json/Microsoft.Shared.Dna
62 4
Program.cs
in Microsoft.Shared.Dna.Json.Profile
57 1
Files With Long Lines (Top 9)

There are 9 files with lines longer than 120 characters. In total, there are 34 long lines.

File# lines# units# long lines
JsonDnaPerformanceTests.cs
in Microsoft.Shared.Dna.Json.Profile
110 14 14
JsonParser.cs
in Microsoft.Shared.Dna.Json
1146 51 7
targets
Microsoft.Shared.Dna.targets
in root
33 - 4
proj
build.proj
in root
22 - 3
Initialize-NuGet.ps1
in scripts/init
20 - 2
Profiler.cs
in Microsoft.Shared.Dna.Json.Profile
94 4 1
cmd
profile_all.cmd
in Microsoft.Shared.Dna.Json.Profile
7 - 1
cmd
build.cmd
in root
22 - 1
Initialize-InstallFromNuget.ps1
in scripts/init
26 - 1