aws / aws-cdk-go
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 49,506 units with 528,132 lines of code in units (85.3% of code).
    • 178 very long units (89,117 lines of code)
    • 47 long units (3,359 lines of code)
    • 20 medium size units (766 lines of code)
    • 4,491 small units (49,689 lines of code)
    • 44,770 very small units (385,201 lines of code)
16% | <1% | <1% | 9% | 72%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
go16% | <1% | <1% | 9% | 72%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
awscdk16% | <1% | <1% | 9% | 73%
awscdkapigatewayv2alpha25% | 0% | 0% | 12% | 62%
awscdkappsyncalpha16% | 0% | 0% | 22% | 61%
awscdkgluealpha18% | 0% | 0% | 13% | 67%
awscdkredshiftalpha21% | 0% | 0% | 15% | 62%
awscdkneptunealpha15% | 0% | 0% | 10% | 73%
awscdkservicecatalogalpha17% | 0% | 0% | 12% | 69%
awscdkamplifyalpha23% | 0% | 0% | 10% | 66%
awscdkbatchalpha24% | 0% | 0% | 14% | 60%
awscdkapprunneralpha22% | 0% | 0% | 32% | 44%
awscdkcognitoidentitypoolalpha26% | 0% | 0% | 15% | 57%
awscdkroute53resolveralpha17% | 0% | 0% | 18% | 63%
awscdkivsalpha23% | 0% | 0% | 11% | 64%
awscdkiotactionsalpha37% | 0% | 0% | 0% | 62%
awscdkkinesisfirehosealpha21% | 0% | 0% | 12% | 65%
awscdksyntheticsalpha17% | 0% | 0% | 26% | 55%
awscdkmskalpha20% | 0% | 0% | 12% | 66%
awscdkioteventsalpha22% | 0% | 0% | 22% | 54%
awscdkapigatewayv2integrationsalpha23% | 0% | 0% | 0% | 76%
awscdkkinesisanalyticsflinkalpha21% | 0% | 0% | 16% | 62%
awscdkservicecatalogappregistryalpha0% | 19% | 0% | 13% | 66%
awscdkapigatewayv2authorizersalpha0% | 37% | 0% | 0% | 62%
awscdklambdapythonalpha0% | 11% | 0% | 23% | 64%
awscdkiotalpha0% | 23% | 0% | 20% | 55%
awscdklambdagoalpha0% | 11% | 0% | 22% | 65%
awscdkcloud9alpha0% | 20% | 0% | 15% | 64%
awscdkcodestaralpha0% | 24% | 0% | 10% | 65%
awscdkkinesisfirehosedestinationsalpha0% | 0% | 33% | 7% | 58%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
func init()
in awscdk/awsec2/awsec2.init.go
7061 1 0
func init()
in awscdk/awsstepfunctionstasks/awsstepfunctionstasks.init.go
3243 1 0
func init()
in awscdk/awsapigateway/awsapigateway.init.go
2403 1 0
func init()
in awscdk/awscdk.init.go
2376 1 0
func init()
in awscdk/awsecs/awsecs.init.go
2311 1 0
func init()
in awscdk/awsrds/awsrds.init.go
1903 1 0
func init()
in awscdk/awsappmesh/awsappmesh.init.go
1759 1 0
func init()
in awscdk/awsiam/awsiam.init.go
1736 1 0
func init()
in awscdk/awssagemaker/awssagemaker.init.go
1632 1 0
func init()
in awscdk/awslambda/awslambda.init.go
1524 1 0
func init()
in awscdk/awscloudfront/awscloudfront.init.go
1434 1 0
func init()
in awscdk/awscognito/awscognito.init.go
1331 1 0
func init()
in awscdk/awselasticloadbalancingv2/awselasticloadbalancingv2.init.go
1236 1 0
func init()
in awscdk/awsiot/awsiot.init.go
1158 1 0
func init()
in awscdkapigatewayv2alpha/awscdkapigatewayv2alpha.init.go
1090 1 0
func init()
in awscdk/awspinpoint/awspinpoint.init.go
1068 1 0
func init()
in awscdk/awsglue/awsglue.init.go
1033 1 0
func init()
in awscdk/awss3/awss3.init.go
1000 1 0
func init()
in awscdk/awsstepfunctions/awsstepfunctions.init.go
983 1 0
func init()
in awscdk/awscloudwatch/awscloudwatch.init.go
971 1 0