android / graphics-samples
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
  • 19% duplication:
    • 3,217 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 612 duplicated lines
  • 15 duplicates
system19% (612 lines)
Duplication per Extension
java19% (612 lines)
Duplication per Component (primary)
MediaEffects/Application/src/main/java/com/example/android/common/logger98% (177 lines)
DrawableTinting/Application/src/main/java/com/example/android/common/logger98% (177 lines)
DisplayingBitmaps/Application/src/main/java/com/example/android/common/logger98% (148 lines)
DrawableTinting/Application/src/main/java/com/example/android/drawabletinting25% (43 lines)
MediaEffects/Application/src/main/java/com/example/android/mediaeffects11% (43 lines)
DrawableTinting/Application/src/main/java/com/example/android/common/activities92% (12 lines)
MediaEffects/Application/src/main/java/com/example/android/common/activities92% (12 lines)
PdfRendererBasic/Application/src/main/java/com/example/android/pdfrendererbasic0% (0 lines)
DisplayingBitmaps/Application/src/main/java/com/example/android/displayingbitmaps/ui0% (0 lines)
DisplayingBitmaps/Application/src/main/java/com/example/android/displayingbitmaps/util0% (0 lines)
DisplayingBitmaps/Application/src/main/java/com/example/android/displayingbitmaps/provider0% (0 lines)
PdfRendererBasicKotlin/Application/src/main/java/com/example/android/pdfrendererbasic0% (0 lines)

Duplication Between Components (50+ lines)

G DrawableTinting/Application/src/main/java/com/example/android/common/logger DrawableTinting/Application/src/main/java/com/example/android/common/logger MediaEffects/Application/src/main/java/com/example/android/common/logger MediaEffects/Application/src/main/java/com/example/android/common/logger DrawableTinting/Application/src/main/java/com/example/android/common/logger--MediaEffects/Application/src/main/java/com/example/android/common/logger 354 DisplayingBitmaps/Application/src/main/java/com/example/android/common/logger DisplayingBitmaps/Application/src/main/java/com/example/android/common/logger DisplayingBitmaps/Application/src/main/java/com/example/android/common/logger--DrawableTinting/Application/src/main/java/com/example/android/common/logger 296 DisplayingBitmaps/Application/src/main/java/com/example/android/common/logger--MediaEffects/Application/src/main/java/com/example/android/common/logger 296 DrawableTinting/Application/src/main/java/com/example/android/drawabletinting DrawableTinting/Application/src/main/java/com/example/android/drawabletinting MediaEffects/Application/src/main/java/com/example/android/mediaeffects MediaEffects/Application/src/main/java/com/example/android/mediaeffects DrawableTinting/Application/src/main/java/com/example/android/drawabletinting--MediaEffects/Application/src/main/java/com/example/android/mediaeffects 86

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 15 longest duplicates.
See data for all 15 duplicates...
Size#FoldersFilesLinesCode
60 x 2 DisplayingBitmaps/Applic...e/android/common/logger
DrawableTinting/Applicat...e/android/common/logger
LogView.java
LogView.java
25:141 (100%)
25:141 (100%)
view
60 x 2 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
LogView.java
LogView.java
25:141 (100%)
25:141 (100%)
view
60 x 2 DisplayingBitmaps/Applic...e/android/common/logger
MediaEffects/Application...e/android/common/logger
LogView.java
LogView.java
25:141 (100%)
25:141 (100%)
view
46 x 2 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
Log.java
Log.java
26:234 (100%)
26:234 (100%)
view
46 x 2 DisplayingBitmaps/Applic...e/android/common/logger
DrawableTinting/Applicat...e/android/common/logger
Log.java
Log.java
26:234 (100%)
26:234 (100%)
view
46 x 2 DisplayingBitmaps/Applic...e/android/common/logger
MediaEffects/Application...e/android/common/logger
Log.java
Log.java
26:234 (100%)
26:234 (100%)
view
42 x 2 DisplayingBitmaps/Applic...e/android/common/logger
DrawableTinting/Applicat...e/android/common/logger
LogFragment.java
LogFragment.java
49:107 (100%)
49:107 (100%)
view
42 x 2 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
LogFragment.java
LogFragment.java
49:107 (100%)
49:107 (100%)
view
42 x 2 DisplayingBitmaps/Applic...e/android/common/logger
MediaEffects/Application...e/android/common/logger
LogFragment.java
LogFragment.java
49:107 (100%)
49:107 (100%)
view
22 x 2 DrawableTinting/Applicat...android/drawabletinting
MediaEffects/Application...le/android/mediaeffects
MainActivity.java
MainActivity.java
56:85 (48%)
55:84 (48%)
view
16 x 2 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
LogWrapper.java
LogWrapper.java
24:72 (100%)
24:72 (100%)
view
13 x 2 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
MessageOnlyLogFilter.java
MessageOnlyLogFilter.java
23:57 (100%)
23:57 (100%)
view
12 x 2 DrawableTinting/Applicat...droid/common/activities
MediaEffects/Application...droid/common/activities
SampleActivityBase.java
SampleActivityBase.java
30:52 (92%)
31:53 (92%)
view
12 x 2 DrawableTinting/Applicat...android/drawabletinting
MediaEffects/Application...le/android/mediaeffects
MainActivity.java
MainActivity.java
88:112 (26%)
87:111 (26%)
view
9 x 2 DrawableTinting/Applicat...android/drawabletinting
MediaEffects/Application...le/android/mediaeffects
MainActivity.java
MainActivity.java
41:54 (20%)
40:53 (20%)
view
Duplicated Units
The list of top 6 duplicated units.
See data for all 6 unit duplicates...
Size#FoldersFilesLinesCode
43 x 3 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
DisplayingBitmaps/Applic...e/android/common/logger
LogView.java
LogView.java
LogView.java
48:106 
48:106 
48:106 
view
22 x 3 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
DisplayingBitmaps/Applic...e/android/common/logger
LogFragment.java
LogFragment.java
LogFragment.java
56:83 
56:83 
56:83 
view
14 x 3 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
DisplayingBitmaps/Applic...e/android/common/logger
LogFragment.java
LogFragment.java
LogFragment.java
86:104 
86:104 
86:104 
view
12 x 2 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
LogWrapper.java
LogWrapper.java
52:74 
52:74 
view
9 x 2 DrawableTinting/Applicat...android/drawabletinting
MediaEffects/Application...le/android/mediaeffects
MainActivity.java
MainActivity.java
97:113 
96:112 
view
8 x 3 DrawableTinting/Applicat...e/android/common/logger
MediaEffects/Application...e/android/common/logger
DisplayingBitmaps/Applic...e/android/common/logger
LogView.java
LogView.java
LogView.java
125:134 
125:134 
125:134 
view