android / uamp
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 90 units with 1,061 lines of code in units (36.8% of code).
    • 0 very long units (0 lines of code)
    • 1 long units (53 lines of code)
    • 13 medium size units (367 lines of code)
    • 25 small units (373 lines of code)
    • 51 very small units (268 lines of code)
0% | 4% | 34% | 35% | 25%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
kt0% | 4% | 34% | 35% | 25%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
common/src/main/java/com/example/android/uamp/media/library0% | 39% | 0% | 46% | 14%
common/src/main/java/com/example/android/uamp/media0% | 0% | 46% | 38% | 15%
automotive/src/main/java/com/example/android/uamp/automotive0% | 0% | 47% | 33% | 19%
app/src/main/java/com/example/android/uamp0% | 0% | 67% | 14% | 17%
app/src/main/java/com/example/android/uamp/viewmodels0% | 0% | 29% | 19% | 50%
app/src/main/java/com/example/android/uamp/fragments0% | 0% | 0% | 65% | 35%
common/src/main/java/com/example/android/uamp/common0% | 0% | 0% | 20% | 80%
app/src/main/java/com/example/android/uamp/cast0% | 0% | 0% | 78% | 21%
app/src/main/java/com/example/android/uamp/utils0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
override fun search()
in common/src/main/java/com/example/android/uamp/media/library/MusicSource.kt
53 10 2
override fun toMediaQueueItem()
in common/src/main/java/com/example/android/uamp/media/CastMediaItemConverter.kt
42 1 1
override fun onCreate()
in common/src/main/java/com/example/android/uamp/media/MusicService.kt
32 2 0
override fun onViewCreated()
in automotive/src/main/java/com/example/android/uamp/automotive/PinCodeSignInFragment.kt
31 3 2
override fun onViewCreated()
in automotive/src/main/java/com/example/android/uamp/automotive/UsernameAndPasswordSignInFragment.kt
30 2 2
fun isKnownCaller()
in common/src/main/java/com/example/android/uamp/media/PackageValidator.kt
30 4 2
override fun onViewCreated()
in automotive/src/main/java/com/example/android/uamp/automotive/PhoneSignInFragment.kt
29 1 2
override fun onViewCreated()
in automotive/src/main/java/com/example/android/uamp/automotive/SignInLandingPageFragment.kt
29 3 2
override fun onBindViewHolder()
in app/src/main/java/com/example/android/uamp/MediaItemAdapter.kt
28 3 3
override fun onCreate()
in app/src/main/java/com/example/android/uamp/MainActivity.kt
25 2 1
override fun onPrepareFromMediaId()
in common/src/main/java/com/example/android/uamp/media/MusicService.kt
24 2 3
override fun onGetRoot()
in common/src/main/java/com/example/android/uamp/media/MusicService.kt
23 4 3
override fun onLoadChildren()
in common/src/main/java/com/example/android/uamp/media/MusicService.kt
23 4 2
fun playMediaId()
in app/src/main/java/com/example/android/uamp/viewmodels/MainActivityViewModel.kt
21 3 1
override fun onActivityCreated()
in app/src/main/java/com/example/android/uamp/fragments/MediaItemFragment.kt
20 3 1
fun loadRecentSong()
in common/src/main/java/com/example/android/uamp/media/PersistentStorage.kt
20 2 0
override fun onViewCreated()
in app/src/main/java/com/example/android/uamp/fragments/NowPlayingFragment.kt
19 1 2
override fun onSearch()
in common/src/main/java/com/example/android/uamp/media/MusicService.kt
18 3 3
override fun onPlayerStateChanged()
in common/src/main/java/com/example/android/uamp/media/MusicService.kt
18 3 2
override fun getCurrentLargeIcon()
in common/src/main/java/com/example/android/uamp/media/UampNotificationManager.kt
18 3 2