microsoft / calculator
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 328 files with 59,461 lines of code.
    • 7 very long files (9,705 lines of code)
    • 23 long files (16,238 lines of code)
    • 59 medium size files (18,319 lines of codeclsfd_ftr_w_mp_ins)
    • 54 small files (7,562 lines of code)
    • 185 very small files (7,637 lines of code)
16% | 27% | 30% | 12% | 12%
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
xaml58% | 21% | 9% | 8% | 1%
cpp8% | 31% | 42% | 9% | 7%
cs0% | 41% | 24% | 14% | 19%
h0% | 17% | 33% | 22% | 27%
vcxproj0% | 0% | 100% | 0% | 0%
filters0% | 0% | 56% | 21% | 21%
yaml0% | 0% | 0% | 44% | 55%
ps10% | 0% | 0% | 0% | 100%
targets0% | 0% | 0% | 0% | 100%
props0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/Calculator34% | 28% | 19% | 9% | 9%
src/CalcViewModel11% | 22% | 39% | 12% | 13%
src/CalcManager0% | 26% | 46% | 18% | 8%
src/CalculatorUITests0% | 82% | 8% | 4% | 3%
src/GraphControl0% | 35% | 38% | 10% | 15%
src/CalcViewModelCopyForUT0% | 0% | 100% | 0% | 0%
src/TraceLogging0% | 0% | 83% | 0% | 16%
src/GraphingImpl0% | 0% | 75% | 0% | 24%
src/GraphingInterfaces0% | 0% | 39% | 0% | 60%
src/CalculatorUITestFramework0% | 0% | 0% | 47% | 52%
build/pipelines0% | 0% | 0% | 44% | 55%
build/scripts0% | 0% | 0% | 0% | 100%
Tools/Scripts0% | 0% | 0% | 0% | 100%
Tools/PGO0% | 0% | 0% | 0% | 100%
src/build0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
xaml
App.xaml
in src/Calculator
2313 -
StandardCalculatorViewModel.cpp
in src/CalcViewModel
1506 56
xaml
GraphingNumPad.xaml
in src/Calculator/Views/GraphingCalculator
1269 -
xaml
Calculator.xaml
in src/Calculator/Views
1261 -
xaml
DateCalculator.xaml
in src/Calculator/Views
1172 -
xaml
CalculatorScientificOperators.xaml
in src/Calculator/Views
1123 -
xaml
CalculatorProgrammerBitFlipPanel.xaml
in src/Calculator/Views
1061 -
Grapher.cpp
in src/GraphControl/Control
928 39
UnitConverterDataLoader.cpp
in src/CalcViewModel/DataLoaders
921 10
xaml
EquationInputArea.xaml
in src/Calculator/Views/GraphingCalculator
883 -
UnitConverterViewModel.cpp
in src/CalcViewModel
853 38
conv.cpp
in src/CalcManager/Ratpack
830 33
scicomm.cpp
in src/CalcManager/CEngine
814 18
xaml
GraphingCalculator.xaml
in src/Calculator/Views/GraphingCalculator
794 -
ProgrammerModeFunctionalTests.cs
in src/CalculatorUITests
782 64
Calculator.xaml.cs
in src/Calculator/Views
740 53
xaml
UnitConverter.xaml
in src/Calculator/Views
739 -
UnitConverter.cpp
in src/CalcManager
730 31
GraphingCalculator.xaml.cs
in src/Calculator/Views/GraphingCalculator
728 45
StandardModeFunctionalTests.cs
in src/CalculatorUITests
699 41
CurrencyDataLoader.cpp
in src/CalcViewModel/DataLoaders
687 32
KeyboardShortcuManager.cs
in src/Calculator/Common
670 38
Utils.h
in src/CalcViewModel/Common
654 25
xaml
CalculatorProgrammerRadixOperators.xaml
in src/Calculator/Views
637 -
ratconst.h
in src/CalcManager/Ratpack
550 -
EquationInputArea.xaml.cs
in src/Calculator/Views/GraphingCalculator
546 35
EquationTextBox.cs
in src/Calculator/Controls
517 34
Utils.h
in src/GraphControl
515 24
ScientificModeFunctionalTests.cs
in src/CalculatorUITests
512 46
MainPage.xaml.cs
in src/Calculator/Views
509 37
LocalizationService.cpp
in src/CalcViewModel/Common
498 13
CopyPasteManager.cpp
in src/CalcViewModel/Common
492 8
NavCategory.cpp
in src/CalcViewModel/Common
477 20
DeviceResources.cpp
in src/GraphControl/DirectX
467 14
support.cpp
in src/CalcManager/Ratpack
433 15
CalculatorManager.cpp
in src/CalcManager
432 38
EquationViewModel.cpp
in src/CalcViewModel/GraphingCalculator
429 7
RenderMain.cpp
in src/GraphControl/DirectX
423 25
vcxproj
CalcViewModel.vcxproj
in src/CalcViewModel
420 -
History.cpp
in src/CalcManager/CEngine
414 23
vcxproj
CalcViewModelCopyForUT.vcxproj
in src/CalcViewModelCopyForUT
414 -
CalculationResult.cs
in src/Calculator/Controls
407 26
UnitConverterViewModel.h
in src/CalcViewModel
406 27
Rational.cpp
in src/CalcManager/CEngine
397 3
num.cpp
in src/CalcManager/Ratpack
389 10
App.xaml.cs
in src/Calculator
370 19
vcxproj
GraphControl.vcxproj
in src/GraphControl
358 -
vcxproj
CalcManager.vcxproj
in src/CalcManager
348 -
DateCalculatorViewModel.cpp
in src/CalcViewModel
339 8
StandardCalculatorViewModel.h
in src/CalcViewModel
339 16
Files With Most Units (Top 20)
File# lines# units
ProgrammerModeFunctionalTests.cs
in src/CalculatorUITests
782 64
StandardCalculatorViewModel.cpp
in src/CalcViewModel
1506 56
Calculator.xaml.cs
in src/Calculator/Views
740 53
ScientificModeFunctionalTests.cs
in src/CalculatorUITests
512 46
GraphingCalculator.xaml.cs
in src/Calculator/Views/GraphingCalculator
728 45
StandardModeFunctionalTests.cs
in src/CalculatorUITests
699 41
Grapher.cpp
in src/GraphControl/Control
928 39
CalculatorManager.cpp
in src/CalcManager
432 38
UnitConverterViewModel.cpp
in src/CalcViewModel
853 38
KeyboardShortcuManager.cs
in src/Calculator/Common
670 38
MainPage.xaml.cs
in src/Calculator/Views
509 37
EquationInputArea.xaml.cs
in src/Calculator/Views/GraphingCalculator
546 35
EquationTextBox.cs
in src/Calculator/Controls
517 34
conv.cpp
in src/CalcManager/Ratpack
830 33
CurrencyDataLoader.cpp
in src/CalcViewModel/DataLoaders
687 32
UnitConverter.cpp
in src/CalcManager
730 31
UnitConverter.xaml.cs
in src/Calculator/Views
332 31
AlwaysSelectedCollectionView.h
in src/CalcViewModel/Common
254 27
UnitConverterViewModel.h
in src/CalcViewModel
406 27
CalculationResult.cs
in src/Calculator/Controls
407 26
Files With Long Lines (Top 20)

There are 174 files with lines longer than 120 characters. In total, there are 3312 long lines.

File# lines# units# long lines
xaml
App.xaml
in src/Calculator
2313 - 472
Utils.h
in src/CalcViewModel/Common
654 25 423
Utils.h
in src/GraphControl
515 24 340
xaml
DateCalculator.xaml
in src/Calculator/Views
1172 - 214
xaml
EquationInputArea.xaml
in src/Calculator/Views/GraphingCalculator
883 - 193
UnitConverterDataLoader.cpp
in src/CalcViewModel/DataLoaders
921 10 159
xaml
Calculator.xaml
in src/Calculator/Views
1261 - 94
ratpak.h
in src/CalcManager/Ratpack
294 - 91
xaml
GraphingCalculator.xaml
in src/Calculator/Views/GraphingCalculator
794 - 76
LocalizationService.cpp
in src/CalcViewModel/Common
498 13 65
xaml
GraphingNumPad.xaml
in src/Calculator/Views/GraphingCalculator
1269 - 58
StandardCalculatorViewModel.cpp
in src/CalcViewModel
1506 56 46
xaml
CalculatorScientificOperators.xaml
in src/Calculator/Views
1123 - 42
xaml
UnitConverter.xaml
in src/Calculator/Views
739 - 38
UnitConverterViewModel.cpp
in src/CalcViewModel
853 38 37
KeyboardShortcuManager.cs
in src/Calculator/Common
670 38 36
vcxproj
GraphControl.vcxproj
in src/GraphControl
358 - 27
UnitConverterViewModel.h
in src/CalcViewModel
406 27 24
GraphingCalculator.xaml.cs
in src/Calculator/Views/GraphingCalculator
728 45 24
AlwaysSelectedCollectionView.h
in src/CalcViewModel/Common
254 27 22