tensorflow / odml-pathways
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
  • 97% duplication:
    • 8,761 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 8,514 duplicated lines
  • 83 duplicates
system97% (8,514 lines)
Duplication per Extension
js99% (6,294 lines)
kt88% (1,471 lines)
css97% (327 lines)
swift91% (296 lines)
html87% (90 lines)
java100% (36 lines)
Duplication per Component (primary)
comment-spam/codelab2100% (4,474 lines)
comment-spam/codelab198% (2,237 lines)
product-search/codelab285% (649 lines)
product-search/codelab199% (355 lines)
object-detection/codelab291% (290 lines)
TextClassificationOnMobile/iOS93% (226 lines)
TextClassificationOnMobile/Android90% (83 lines)
ImageClassificationMobile/ios85% (70 lines)
audio_classification/codelab281% (53 lines)
ImageClassificationMobile/android64% (42 lines)
audio_classification/codelab179% (35 lines)

Duplication Between Components (50+ lines)

G comment-spam/codelab1 comment-spam/codelab1 comment-spam/codelab2 comment-spam/codelab2 comment-spam/codelab1--comment-spam/codelab2 6711 product-search/codelab1 product-search/codelab1 product-search/codelab2 product-search/codelab2 product-search/codelab1--product-search/codelab2 734 audio_classification/codelab1 audio_classification/codelab1 audio_classification/codelab2 audio_classification/codelab2 audio_classification/codelab1--audio_classification/codelab2 88 ImageClassificationMobile/ios ImageClassificationMobile/ios TextClassificationOnMobile/iOS TextClassificationOnMobile/iOS ImageClassificationMobile/ios--TextClassificationOnMobile/iOS 80

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 83 duplicates...
Size#FoldersFilesLinesCode
2004 x 2 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
dictionary.js
dictionary.js
15:2018 (100%)
15:2018 (100%)
view
2004 x 2 comment-spam/codelab1/web/final/www
comment-spam/codelab2/web/final/www
dictionary.js
dictionary.js
15:2018 (100%)
15:2018 (100%)
view
2004 x 2 comment-spam/codelab1/web/final/www
comment-spam/codelab2/web/starter/www
dictionary.js
dictionary.js
15:2018 (100%)
15:2018 (100%)
view
109 x 2 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
style.css
style.css
5:156 (100%)
5:156 (100%)
view
109 x 2 comment-spam/codelab1/web/final/www
comment-spam/codelab2/web/final/www
style.css
style.css
5:156 (100%)
5:156 (100%)
view
109 x 2 comment-spam/codelab1/web/final/www
comment-spam/codelab2/web/starter/www
style.css
style.css
5:156 (100%)
5:156 (100%)
view
99 x 2 object-detection/codelab...odelabs/objectdetection
object-detection/codelab...odelabs/objectdetection
MainActivity.kt
MainActivity.kt
175:357 (57%)
123:305 (68%)
view
76 x 2 comment-spam/codelab1/web/final/www
comment-spam/codelab2/web/starter/www
script.js
script.js
18:197 (100%)
18:197 (100%)
view
76 x 2 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ObjectDetectorActivity.kt
ObjectDetectorActivity.kt
131:286 (57%)
99:254 (67%)
view
76 x 2 comment-spam/codelab1/web/final/www
comment-spam/codelab2/web/final/www
script.js
script.js
18:197 (100%)
18:197 (100%)
view
76 x 2 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
script.js
script.js
18:197 (100%)
18:197 (100%)
view
75 x 2 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
17:171 (100%)
17:171 (100%)
view
75 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
17:171 (100%)
17:171 (100%)
view
75 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
17:171 (100%)
17:171 (100%)
view
75 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
17:171 (100%)
17:171 (100%)
view
75 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
17:171 (100%)
17:171 (100%)
view
75 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
17:171 (100%)
17:171 (100%)
view
71 x 2 TextClassificationOnMobi...TextClassificationStep2
TextClassificationOnMobi...TextClassificationStep3
ViewController.swift
ViewController.swift
25:144 (78%)
25:144 (78%)
view
61 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ObjectDetectorActivity.kt
ObjectDetectorActivity.kt
143:266 (52%)
131:254 (53%)
view
61 x 2 product-search/codelab1/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ObjectDetectorActivity.kt
ObjectDetectorActivity.kt
143:266 (52%)
163:286 (46%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 22 unit duplicates...
Size#FoldersFilesLinesCode
25 x 4 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
ImageClickableView.kt
ImageClickableView.kt
64:98 
64:98 
64:98 
64:98 
view
19 x 4 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
ImageClickableView.kt
ImageClickableView.kt
ImageClickableView.kt
ImageClickableView.kt
110:130 
110:130 
110:130 
110:130 
view
19 x 2 object-detection/codelab...odelabs/objectdetection
object-detection/codelab...odelabs/objectdetection
MainActivity.kt
MainActivity.kt
93:112 
90:109 
view
18 x 2 TextClassificationOnMobi...textclassificationstep3
TextClassificationOnMobi...textclassificationstep2
MainActivity.kt
MainActivity.kt
29:49 
29:49 
view
18 x 2 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ProductSearchActivity.kt
ProductSearchActivity.kt
133:163 
128:158 
view
17 x 2 TextClassificationOnMobi...TextClassificationStep3
TextClassificationOnMobi...TextClassificationStep2
ViewController.swift
ViewController.swift
49:70 
49:70 
view
17 x 2 TextClassificationOnMobi...TextClassificationStep3
TextClassificationOnMobi...TextClassificationStep2
ViewController.swift
ViewController.swift
80:107 
80:107 
view
17 x 3 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
comment-spam/codelab1/web/final/www
script.js
script.js
script.js
87:111 
87:111 
87:111 
view
17 x 3 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
comment-spam/codelab1/web/final/www
script.js
script.js
script.js
138:166 
138:166 
138:166 
view
14 x 3 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
comment-spam/codelab1/web/final/www
script.js
script.js
script.js
173:192 
173:192 
173:192 
view
13 x 2 object-detection/codelab...odelabs/objectdetection
object-detection/codelab...odelabs/objectdetection
MainActivity.kt
MainActivity.kt
63:78 
60:75 
view
12 x 2 TextClassificationOnMobi...TextClassificationStep3
TextClassificationOnMobi...TextClassificationStep2
ViewController.swift
ViewController.swift
177:189 
177:189 
view
12 x 4 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
product-search/codelab1/...labs/productimagesearch
ObjectDetectorActivity.kt
ObjectDetectorActivity.kt
ObjectDetectorActivity.kt
ObjectDetectorActivity.kt
65:78 
65:78 
65:78 
60:73 
view
12 x 3 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
comment-spam/codelab1/web/final/www
script.js
script.js
script.js
26:50 
26:50 
26:50 
view
14 x 2 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ProductSearchActivity.kt
ProductSearchActivity.kt
138:163 
133:158 
view
10 x 2 ImageClassificationMobil...p1/ImageClassifierStep1
ImageClassificationMobil...p2/ImageClassifierStep2
ViewController.swift
ViewController.swift
60:74 
65:79 
view
9 x 2 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ProductSearchActivity.kt
ProductSearchActivity.kt
51:64 
51:64 
view
26 x 3 comment-spam/codelab2/web/final/www
comment-spam/codelab2/web/starter/www
comment-spam/codelab1/web/final/www
script.js
script.js
script.js
68:113 
68:113 
68:113 
view
7 x 2 product-search/codelab2/...labs/productimagesearch
product-search/codelab2/...labs/productimagesearch
ProductSearchActivity.kt
ProductSearchActivity.kt
163:171 
158:166 
view
7 x 2 object-detection/codelab...odelabs/objectdetection
object-detection/codelab...odelabs/objectdetection
MainActivity.kt
MainActivity.kt
80:87 
77:84 
view