aws-samples / bioimage-search
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 360 units with 6,517 lines of code in units (68.6% of code).
    • 10 very long units (1,737 lines of code)
    • 15 long units (1,003 lines of code)
    • 45 medium size units (1,397 lines of code)
    • 111 small units (1,488 lines of code)
    • 179 very small units (892 lines of code)
26% | 15% | 21% | 22% | 13%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
ts32% | 16% | 26% | 18% | 5%
py15% | 14% | 13% | 31% | 25%
java28% | 15% | 15% | 20% | 20%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
main/cdk62% | 16% | 16% | 4% | <1%
datasets/bbbc-021/cdk90% | 0% | 0% | 9% | 0%
main/src/search-service28% | 15% | 15% | 20% | 20%
datasets/bbbc-021/scripts36% | 21% | 16% | 4% | 21%
main/src/image-artifact100% | 0% | 0% | 0% | 0%
main/src/embedding-compute78% | 0% | 0% | 0% | 21%
main/src/image-management0% | 45% | 28% | 14% | 10%
main/src/training-compute0% | 59% | 34% | 0% | 5%
main/src/training-build0% | 81% | 0% | 18% | 0%
main/src/search0% | 13% | 56% | 18% | 11%
main/src/plate-preprocessing0% | 100% | 0% | 0% | 0%
main/src/image-inspector0% | 68% | 0% | 0% | 32%
cli/bioims/src0% | 0% | 14% | 55% | 30%
main/src/label0% | 0% | 52% | 42% | 5%
main/src/tag0% | 0% | 58% | 41% | 0%
main/src/message0% | 0% | 62% | 27% | 9%
main/src/artifact0% | 0% | 29% | 70% | 0%
main/src/common0% | 0% | 14% | 28% | 57%
main/src/image-preprocessing0% | 0% | 64% | 29% | 5%
main/src/configuration0% | 0% | 29% | 57% | 13%
main/src/train0% | 0% | 33% | 38% | 27%
main/src/training-configuration0% | 0% | 12% | 62% | 25%
main/src/process-plate0% | 0% | 0% | 84% | 16%
main/src/embedding-management0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
constructor()
in main/cdk/process-plate-stack.ts
354 1 3
constructor()
in main/cdk/resource-permissions-stack.ts
233 1 3
constructor()
in main/cdk/train-stack.ts
212 1 3
constructor()
in main/cdk/embedding-stack.ts
205 1 3
constructor()
in datasets/bbbc-021/cdk/bbbc-021-stack.ts
138 1 3
private void searchByImageId()
in main/src/search-service/search/src/main/java/com/bioimage/search/App.java
129 29 1
def _train()
in datasets/bbbc-021/scripts/bbbc021-1-train-script.py
123 24 1
def handler()
in main/src/image-artifact/lambda/default-artifact/default-artifact.py
121 14 2
def handler()
in main/src/embedding-compute/embedding-compute.py
114 13 2
constructor()
in main/cdk/search-stack.ts
108 3 3
export function createTrainPlateVisitor()
in main/cdk/process-plate-stack.ts
91 1 7
async function populateSourcePlate()
in main/src/image-management/image-management.ts
91 13 2
export function createEmbeddingPlateVisitor()
in main/cdk/process-plate-stack.ts
76 1 7
def handler()
in main/src/training-compute/training-compute.py
76 3 2
constructor()
in main/cdk/image-management-stack.ts
75 3 3
def load_training_data()
in datasets/bbbc-021/scripts/bbbc021-1-train-script.py
74 10 1
private void start()
in main/src/search-service/search/src/main/java/com/bioimage/search/App.java
69 11 0
def handler()
in main/src/training-build/training-build.py
61 13 2
async function updatePlateStatus()
in main/src/image-management/image-management.ts
59 1 6
async function submitSearch()
in main/src/search/search.ts
58 9 1