microsoft / dotnet-apiport
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 276 files with 17,128 lines of code.
    • 0 very long files (0 lines of code)
    • 2 long files (1,215 lines of code)
    • 11 medium size files (3,156 lines of codeclsfd_ftr_w_mp_ins)
    • 33 small files (4,616 lines of code)
    • 230 very small files (8,141 lines of code)
0% | 7% | 18% | 26% | 47%
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
cs0% | 8% | 19% | 25% | 46%
cshtml0% | 0% | 27% | 46% | 25%
ps10% | 0% | 0% | 39% | 60%
xaml0% | 0% | 0% | 60% | 39%
yml0% | 0% | 0% | 0% | 100%
targets0% | 0% | 0% | 0% | 100%
props0% | 0% | 0% | 0% | 100%
vsixmanifest0% | 0% | 0% | 0% | 100%
cmd0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/lib/Microsoft.Fx.Portability.Cci0% | 75% | 0% | 8% | 16%
src/lib/Microsoft.Fx.Portability0% | 0% | 26% | 11% | 62%
src/lib/Microsoft.Fx.Portability.Reports.Excel0% | 0% | 94% | 0% | 5%
src/lib/Microsoft.Fx.Portability.MetadataReader0% | 0% | 42% | 33% | 23%
src/ApiPort/ApiPort.VisualStudio.Common0% | 0% | 14% | 31% | 54%
src/lib/Microsoft.Fx.Portability.Reports.Html0% | 0% | 17% | 49% | 32%
src/ApiPort/ApiPort0% | 0% | 0% | 68% | 31%
src/ApiPort/ApiPort.VisualStudio0% | 0% | 0% | 37% | 62%
src/lib/Microsoft.Fx.Portability.Offline0% | 0% | 0% | 61% | 38%
tools0% | 0% | 0% | 47% | 52%
ROOT0% | 0% | 0% | 25% | 74%
src/lib/Microsoft.Fx.Portability.Reports.DGML0% | 0% | 0% | 31% | 68%
azure-pipelines0% | 0% | 0% | 0% | 100%
src/ApiPort/ApiPort.VisualStudio.20170% | 0% | 0% | 0% | 100%
src/ApiPort/ApiPort.Vsix0% | 0% | 0% | 0% | 100%
azure-pipelines/variables0% | 0% | 0% | 0% | 100%
src/lib/Microsoft.Fx.Portability.Reports.Json0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
HostEnvironment.cs
in src/lib/Microsoft.Fx.Portability.Cci
649 42
TypeExtensions.cs
in src/lib/Microsoft.Fx.Portability.Cci
566 50
ExcelOpenXmlOutputWriter.cs
in src/lib/Microsoft.Fx.Portability.Reports.Excel
454 13
MemberMetadataInfoTypeProvider.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
350 25
AnalysisEngine.cs
in src/lib/Microsoft.Fx.Portability/Analysis
317 19
BreakingChangeParser.cs
in src/lib/Microsoft.Fx.Portability
313 4
ApiPortClient.cs
in src/lib/Microsoft.Fx.Portability
291 10
OptionsViewModel.cs
in src/ApiPort/ApiPort.VisualStudio.Common/ViewModels
290 9
OpenXmlExtensions.cs
in src/lib/Microsoft.Fx.Portability.Reports.Excel
252 12
MemberMetadataInfo.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
237 9
cshtml
_PortabilityReport.cshtml
in src/lib/Microsoft.Fx.Portability.Reports.Html/Views
228 -
CompressedHttpClient.cs
in src/lib/Microsoft.Fx.Portability
215 4
TargetMapper.cs
in src/lib/Microsoft.Fx.Portability
209 11
CloudApiCatalogLookup.cs
in src/lib/Microsoft.Fx.Portability/ObjectModel
197 16
xaml
OptionsPageControl.xaml
in src/ApiPort/ApiPort.VisualStudio/Views
193 -
CommandLineOptions.cs
in src/ApiPort/ApiPort
190 4
Program.cs
in src/ApiPort/ApiPort
184 8
AnalyzeMenu.cs
in src/ApiPort/ApiPort.VisualStudio
178 12
ReflectionMetadataDependencyInfo.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
176 9
DependencyFinderEngineHelper.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
170 8
ServiceProvider.cs
in src/ApiPort/ApiPort.VisualStudio
169 4
cshtml
_Styles.cshtml
in src/lib/Microsoft.Fx.Portability.Reports.Html/Views
169 -
ConsoleProgressReporter.cs
in src/ApiPort/ApiPort
163 16
Install-DotNetSdk.ps1
in tools
152 -
ApiPortService.cs
in src/lib/Microsoft.Fx.Portability
148 4
DefaultProjectBuilder.cs
in src/ApiPort/ApiPort.VisualStudio.Common
146 4
CciMetadataTraverser.cs
in src/ApiPort/ApiPort.VisualStudio.Common/SourceMapping
139 7
OfflineApiPortService.cs
in src/lib/Microsoft.Fx.Portability.Offline
138 1
DependencyFinderEngine.cs
in src/lib/Microsoft.Fx.Portability.Cci/Analyzer
136 4
Data.cs
in src/lib/Microsoft.Fx.Portability.Offline
129 7
DataExtensions.cs
in src/lib/Microsoft.Fx.Portability
127 6
MetadataReaderExtensions.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
125 10
ProjectAnalyzer.cs
in src/ApiPort/ApiPort.VisualStudio.Common/Analyze
124 5
DependencyBuilder.cs
in src/ApiPort/ApiPort
122 1
RazorHtmlObject.cs
in src/lib/Microsoft.Fx.Portability.Reports.Html
119 5
ReportGenerator.cs
in src/lib/Microsoft.Fx.Portability/Reporting
119 3
build.ps1
in root
114 -
cshtml
_Scripts.cshtml
in src/lib/Microsoft.Fx.Portability.Reports.Html/Views
114 -
HtmlRazorReportWriter.cs
in src/lib/Microsoft.Fx.Portability.Reports.Html
113 5
FileOutputApiPortService.cs
in src/ApiPort/ApiPort
112 1
ApiPortVsAnalyzer.cs
in src/ApiPort/ApiPort.VisualStudio.Common/Analyze
110 3
DocIdSearchRepl.cs
in src/ApiPort/ApiPort
109 5
ProxyProvider.cs
in src/ApiPort/ApiPort/Proxy
109 8
cshtml
_BreakingChangesReport.cshtml
in src/lib/Microsoft.Fx.Portability.Reports.Html/Views
109 -
DGMLOutputWriter.cs
in src/lib/Microsoft.Fx.Portability.Reports.DGML
108 4
TargetPlatform.cs
in src/ApiPort/ApiPort.VisualStudio.Common/Models
105 7
OutputViewModel.cs
in src/ApiPort/ApiPort.VisualStudio.Common/ViewModels
100 5
ProjectBuilder.cs
in src/ApiPort/ApiPort.VisualStudio.2017
99 1
RequestAnalyzer.cs
in src/lib/Microsoft.Fx.Portability/Analyzer
98 2
AssemblyInfo.cs
in src/lib/Microsoft.Fx.Portability/ObjectModel
98 6
Files With Most Units (Top 20)
File# lines# units
TypeExtensions.cs
in src/lib/Microsoft.Fx.Portability.Cci
566 50
HostEnvironment.cs
in src/lib/Microsoft.Fx.Portability.Cci
649 42
MemberMetadataInfoTypeProvider.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
350 25
AnalysisEngine.cs
in src/lib/Microsoft.Fx.Portability/Analysis
317 19
ConsoleProgressReporter.cs
in src/ApiPort/ApiPort
163 16
CloudApiCatalogLookup.cs
in src/lib/Microsoft.Fx.Portability/ObjectModel
197 16
StringParameterValueTypeProvider.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
90 15
TextWriterProgressReporter.cs
in src/lib/Microsoft.Fx.Portability
79 14
ExcelOpenXmlOutputWriter.cs
in src/lib/Microsoft.Fx.Portability.Reports.Excel
454 13
AnalyzeMenu.cs
in src/ApiPort/ApiPort.VisualStudio
178 12
OpenXmlExtensions.cs
in src/lib/Microsoft.Fx.Portability.Reports.Excel
252 12
TargetMapper.cs
in src/lib/Microsoft.Fx.Portability
209 11
DocIdExtensions.cs
in src/lib/Microsoft.Fx.Portability.Cci
88 10
MetadataReaderExtensions.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
125 10
ApiPortClient.cs
in src/lib/Microsoft.Fx.Portability
291 10
ReportingResult.cs
in src/lib/Microsoft.Fx.Portability/Reporting/ObjectModel
98 10
OptionsViewModel.cs
in src/ApiPort/ApiPort.VisualStudio.Common/ViewModels
290 9
MemberMetadataInfo.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
237 9
ReflectionMetadataDependencyInfo.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
176 9
Program.cs
in src/ApiPort/ApiPort
184 8
Files With Long Lines (Top 20)

There are 142 files with lines longer than 120 characters. In total, there are 562 long lines.

File# lines# units# long lines
ExcelOpenXmlOutputWriter.cs
in src/lib/Microsoft.Fx.Portability.Reports.Excel
454 13 30
AnalysisEngine.cs
in src/lib/Microsoft.Fx.Portability/Analysis
317 19 30
HostEnvironment.cs
in src/lib/Microsoft.Fx.Portability.Cci
649 42 29
ApiPortVSPackage.cs
in src/ApiPort/ApiPort.VisualStudio
94 1 19
cshtml
_CompatibilitySummary.cshtml
in src/lib/Microsoft.Fx.Portability.Reports.Html/Views
68 - 16
CommandLineOptions.cs
in src/ApiPort/ApiPort
190 4 15
RazorHtmlObject.cs
in src/lib/Microsoft.Fx.Portability.Reports.Html
119 5 14
ApiPortClient.cs
in src/lib/Microsoft.Fx.Portability
291 10 12
TypeExtensions.cs
in src/lib/Microsoft.Fx.Portability.Cci
566 50 11
CompressedHttpClient.cs
in src/lib/Microsoft.Fx.Portability
215 4 11
Install-DotNetSdk.ps1
in tools
152 - 11
init.ps1
in root
90 - 9
DefaultProjectBuilder.cs
in src/ApiPort/ApiPort.VisualStudio.Common
146 4 9
cshtml
_BreakingChangesReport.cshtml
in src/lib/Microsoft.Fx.Portability.Reports.Html/Views
109 - 9
vsixmanifest
source.extension.vsixmanifest
in src/ApiPort/ApiPort.Vsix
33 - 8
MemberMetadataInfo.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
237 9 8
MetadataReaderExtensions.cs
in src/lib/Microsoft.Fx.Portability.MetadataReader
125 10 8
ReportingResult.cs
in src/lib/Microsoft.Fx.Portability/Reporting/ObjectModel
98 10 8
ReportGenerator.cs
in src/lib/Microsoft.Fx.Portability/Reporting
119 3 8
ConsoleApiPort.cs
in src/ApiPort/ApiPort
97 4 7