microsoft / GazeInteractionApps
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 41% duplication:
    • 8,488 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 3,486 duplicated lines
  • 828 duplicates
system41% (3,486 lines)
Duplication per Extension
xaml69% (2,622 lines)
cs18% (864 lines)
Duplication per Component (primary)
Games/Memory57% (624 lines)
Games/Maze50% (601 lines)
EyeGazeUserControls/KeyboardLayouts89% (591 lines)
EyeGazeUserControls/Layouts100% (556 lines)
Games/Fifteen52% (441 lines)
Games/TwoZeroFourEight26% (268 lines)
Tools/ControlTest30% (76 lines)
Apps/Phrasor11% (73 lines)
Apps/MinAAC37% (61 lines)
Apps/EyeVolume13% (40 lines)
Apps/SoundMachineJr12% (39 lines)
Apps/DrawnOut29% (28 lines)
Tools/Positioning14% (28 lines)
Tools/EyeControlToolkitSettings6% (27 lines)
Apps/SeeSaw12% (27 lines)
EyeGazeUserControls/Properties50% (6 lines)
EyeGazeUserControls0% (0 lines)

Duplication Between Components (50+ lines)

G EyeGazeUserControls/KeyboardLayouts EyeGazeUserControls/KeyboardLayouts EyeGazeUserControls/Layouts EyeGazeUserControls/Layouts EyeGazeUserControls/KeyboardLayouts--EyeGazeUserControls/Layouts 1147 Games/Maze Games/Maze Games/Memory Games/Memory Games/Maze--Games/Memory 1067 Games/TwoZeroFourEight Games/TwoZeroFourEight Games/Maze--Games/TwoZeroFourEight 399 Tools/ControlTest Tools/ControlTest Games/Maze--Tools/ControlTest 97 Games/Memory--Games/TwoZeroFourEight 426 Games/Memory--Tools/ControlTest 100 Tools/EyeControlToolkitSettings Tools/EyeControlToolkitSettings Games/Memory--Tools/EyeControlToolkitSettings 55 Tools/Positioning Tools/Positioning Games/Memory--Tools/Positioning 54 Games/Fifteen Games/Fifteen Games/Fifteen--Games/Memory 775 Games/Fifteen--Games/Maze 670 Games/Fifteen--Games/TwoZeroFourEight 400 Games/Fifteen--Tools/ControlTest 68 Games/TwoZeroFourEight--Tools/ControlTest 56 Games/TwoZeroFourEight--Tools/Positioning 54 Apps/MinAAC Apps/MinAAC Apps/Phrasor Apps/Phrasor Apps/MinAAC--Apps/Phrasor 104 Apps/MinAAC--EyeGazeUserControls/KeyboardLayouts 98 Apps/MinAAC--Games/Memory 82 Apps/MinAAC--EyeGazeUserControls/Layouts 78 Apps/MinAAC--Games/Maze 72 Apps/MinAAC--Games/TwoZeroFourEight 54 Apps/MinAAC--Games/Fifteen 54 Apps/SeeSaw Apps/SeeSaw Apps/MinAAC--Apps/SeeSaw 54 Apps/MinAAC--Tools/Positioning 54 Apps/Phrasor--EyeGazeUserControls/KeyboardLayouts 98 Apps/Phrasor--EyeGazeUserControls/Layouts 78 Apps/Phrasor--Games/Memory 64 Apps/Phrasor--Games/Maze 52 Tools/ControlTest--Tools/EyeControlToolkitSettings 64 Apps/EyeVolume Apps/EyeVolume Apps/EyeVolume--Games/Maze 68 Apps/SoundMachineJr Apps/SoundMachineJr Apps/EyeVolume--Apps/SoundMachineJr 54 Apps/SoundMachineJr--Games/TwoZeroFourEight 68 Apps/SoundMachineJr--Games/Maze 54 Apps/DrawnOut Apps/DrawnOut Apps/DrawnOut--Tools/Positioning 56 Apps/DrawnOut--Games/Memory 54 Apps/DrawnOut--Apps/SeeSaw 54 Apps/DrawnOut--Apps/MinAAC 54 Apps/DrawnOut--Games/TwoZeroFourEight 54 Apps/SeeSaw--Games/TwoZeroFourEight 54 Apps/SeeSaw--Games/Memory 54 Apps/SeeSaw--Tools/Positioning 54

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 828 duplicates...
Size#FoldersFilesLinesCode
146 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
TwoStageKeyboard.xaml
TwoStageKeyboard.xaml
1:185 (100%)
1:185 (100%)
view
104 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
FullKeyboard.xaml
FullKeyboard.xaml
221:347 (31%)
221:347 (31%)
view
87 x 2 Games/Maze
Games/Memory
MainPage.xaml.cs
MainPage.xaml.cs
72:216 (80%)
53:197 (80%)
view
69 x 2 Games/Fifteen
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
280:391 (22%)
411:522 (17%)
view
68 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
FullKeyboard.xaml
FullKeyboard.xaml
137:220 (20%)
137:220 (20%)
view
66 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
FullKeyboard.xaml
FullKeyboard.xaml
57:136 (19%)
57:136 (19%)
view
64 x 2 Games/Maze
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
279:342 (15%)
282:345 (15%)
view
55 x 2 Games/Maze
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
434:529 (13%)
437:532 (13%)
view
51 x 2 Games/Fifteen
Games/Maze
xaml
MainPage.xaml
MainPage.xaml
306:391 (16%)
434:519 (12%)
view
47 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
FullKeyboard.xaml
FullKeyboard.xaml
1:56 (14%)
1:56 (14%)
view
46 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
FullKeyboard.xaml
FullKeyboard.xaml
348:398 (13%)
348:398 (13%)
view
42 x 2 Games/Maze
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
197:242 (10%)
201:245 (10%)
view
41 x 2 Games/Fifteen
Games/Maze
MainPage.xaml.cs
MainPage.xaml.cs
92:153 (37%)
107:167 (37%)
view
41 x 2 Games/Fifteen
Games/Memory
MainPage.xaml.cs
MainPage.xaml.cs
92:153 (37%)
88:148 (37%)
view
41 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
MinAAC.xaml
MinAAC.xaml
46:90 (51%)
46:90 (51%)
view
39 x 2 EyeGazeUserControls/KeyboardLayouts
EyeGazeUserControls/Layouts
xaml
MinAAC.xaml
MinAAC.xaml
1:46 (49%)
1:46 (49%)
view
38 x 2 Games/Maze
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
148:188 (9%)
151:191 (9%)
view
35 x 2 Games/Maze
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
198:236 (8%)
154:191 (8%)
view
35 x 2 Games/Memory
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
154:191 (8%)
202:239 (8%)
view
35 x 2 Games/Maze
Games/Memory
xaml
MainPage.xaml
MainPage.xaml
151:188 (8%)
202:239 (8%)
view
Duplicated Units
The list of top 11 duplicated units.
See data for all 11 unit duplicates...
Size#FoldersFilesLinesCode
35 x 3 Games/Fifteen
Games/Maze
Games/Memory
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
118:155 
133:169 
114:150 
view
35 x 2 Games/Maze
Games/Memory
MainPage.xaml.cs
MainPage.xaml.cs
96:131 
77:112 
view
21 x 2 Apps/DrawnOut
Tools/Positioning
App.xaml.cs
App.xaml.cs
34:72 
34:72 
view
20 x 9 Apps/EyeVolume
Apps/MinAAC
Apps/SeeSaw
Apps/SoundMachineJr
Games/Fifteen
Games/Maze
Games/Memory
Games/TwoZeroFourEight
Tools/EyeControlToolkitSettings
App.xaml.cs
App.xaml.cs
App.xaml.cs
App.xaml.cs
App.xaml.cs
App.xaml.cs
App.xaml.cs
App.xaml.cs
App.xaml.cs
40:74 
33:67 
33:67 
40:74 
33:67 
40:74 
33:67 
33:67 
39:73 
view
16 x 2 Games/Maze
Games/Memory
MainPage.xaml.cs
MainPage.xaml.cs
40:62 
21:43 
view
11 x 3 Games/Fifteen
Games/Maze
Games/Memory
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
66:79 
81:94 
62:75 
view
8 x 3 Apps/Phrasor/DataModel
Apps/Phrasor/DataModel
Apps/Phrasor/ViewModel
AppSettings.cs
PhraseNode.cs
ViewModel.cs
149:157 
54:62 
99:107 
view
6 x 7 Apps/EyeVolume
Apps/Phrasor
Games/Fifteen
Games/Maze
Games/Maze
Games/Memory
Games/TwoZeroFourEight
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
GamePage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
123:130 
547:554 
52:59 
890:897 
72:79 
53:60 
991:998 
view
6 x 2 Apps/SoundMachineJr
Games/TwoZeroFourEight
MainViewModel.cs
MainPage.xaml.cs
27:33 
36:42 
view
6 x 3 Games/Fifteen
Games/Maze
Games/Memory
GamePage.xaml.cs
GamePage.xaml.cs
GamePage.xaml.cs
400:415 
899:906 
647:662 
view
6 x 5 Games/Fifteen
Games/Fifteen
Games/Maze
Games/Memory
Games/TwoZeroFourEight
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
MainPage.xaml.cs
178:184 
186:192 
186:192 
167:173 
1139:1145 
view