bazelbuild / tools_remote
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 111 units with 1,211 lines of code in units (61.1% of code).
    • 0 very long units (0 lines of code)
    • 1 long units (86 lines of code)
    • 12 medium size units (311 lines of code)
    • 30 small units (451 lines of code)
    • 68 very small units (363 lines of code)
0% | 7% | 25% | 37% | 29%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
java0% | 7% | 25% | 37% | 29%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
java/com/google/devtools/build/remote/client0% | 7% | 25% | 37% | 29%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
public static void selectAndPerformCommand()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
86 14 1
private void printActionResult()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
32 7 2
private static void doRun()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
32 10 3
private void setupDocker()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
28 4 2
private void downloadDirectory()
in src/main/java/com/google/devtools/build/remote/client/AbstractRemoteActionCache.java
28 5 3
private void setupDocker()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
27 6 3
void add()
in src/main/java/com/google/devtools/build/remote/client/ActionGrouping.java
27 10 1
public String getDockerCommand()
in src/main/java/com/google/devtools/build/remote/client/DockerUtil.java
26 5 2
protected void downloadFile()
in src/main/java/com/google/devtools/build/remote/client/AbstractRemoteActionCache.java
23 6 4
public static ManagedChannel newChannel()
in src/main/java/com/google/devtools/build/remote/client/GoogleAuthUtils.java
23 6 2
private void printActionV1()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
22 3 2
public static List extractExecuteResponse()
in src/main/java/com/google/devtools/build/remote/client/LogParserUtils.java
22 6 1
private void printAction()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
21 3 2
List failedActions()
in src/main/java/com/google/devtools/build/remote/client/ActionGrouping.java
20 5 0
public static Digest extractDigest()
in src/main/java/com/google/devtools/build/remote/client/LogParserUtils.java
19 8 1
static void printLogEntry()
in src/main/java/com/google/devtools/build/remote/client/LogParserUtils.java
19 4 2
private void readBlob()
in src/main/java/com/google/devtools/build/remote/client/GrpcRemoteCache.java
19 5 2
private int listDirectory()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
18 4 4
private static void doCat()
in src/main/java/com/google/devtools/build/remote/client/RemoteClient.java
18 4 2
private static SslContext createSSlContext()
in src/main/java/com/google/devtools/build/remote/client/GoogleAuthUtils.java
18 4 1