Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Tren Pengembangan Aplikasi Android di 2021 - IDCamp x Dicoding LIVE

Tren Pengembangan Aplikasi Android di 2021 - IDCamp x Dicoding LIVE

- Classic Android Development
- Modern Android Development
- MAD Score Card
- How to always up-to-date

Video: https://youtu.be/fOUqYJJXk_8

Ahmad Arif Faizin

January 21, 2021
Tweet

More Decks by Ahmad Arif Faizin

Other Decks in Programming

Transcript

  1. Previously… Language Java Programming Language • Base of Android Framework

    • Large developer base • Existing libraries, patterns, best practice • Robust/automatic memory management • Still good.. but verbose
  2. Previously… Tools Eclipse + ADT • Familiar developer experience •

    Integration of new sub-tool into IDE • Difficult to customize • Sub-tools tended to have inconsistent UI • Core IDE not being actively improved
  3. Previously… APIs • Android Support • AppCompat • Complicated ◦

    Lifecycle ◦ Storage (SQLite) ◦ Navigation (manual)
  4. Previously… Distribution APK • Zipped for your convenience • More

    Configurations? ◦ More APKs! ◦ Or bigger APKs!
  5. Modern Android Development? Development tools, APIs, language, and distribution technologies

    recommended by the Android team to help developers be productive and create better apps that run across billions of devices.
  6. Kotlin Benefit • Expressive and Concise • Safety • Interoperability

    • Structured Concurrency with Coroutine • Speed
  7. Kotlin Uptake • 20% less likely to crash • 60%

    of Pro Android Developers use Kotlin • 70%+ of Top 1000 Apps contain Kotlin code Source : Google Internal Data, May 2020
  8. Kotlin-KTX • Without KTX • With KTX val viewModel =

    ViewModelProvider(this).get(MyViewModel::class.java) val viewModel by viewModels<MyViewModel>()
  9. New Kotlin Highlight • Kotlin Gradle DSL • Kotlin Live-Template

    • Asynctask deprecated (Use Coroutines / Executors) • Coroutine Flow • Trailing Comma • SharedFlow and StateFLow • Kotlin Synthetic deprecated (Use View Binding) • Kotlin Multi-platform Mobile
  10. Android Studio Features • Intelligent code editor + Code Template

    • Visual Layout Editor + Motion Editor • Database Inspector • Layout Inspector • Navigation Editor • Performance Profiler • APK Analyzer
  11. Android Studio Benefits • Powerful code refactoring • Extensible UI

    for future tools • Core+plugins being actively developed • Tight integration with Kotlin, gradle • Lint checks, quick fixes • Integration with existing and new API (Navigation, layouts, data binding, Room)
  12. Android Jetpack Highlight • Architecture Components ◦ Room + ViewModel

    + LiveData • Material Design Components • Paging • Navigation • WorkManager for schedule deferred job • Dagger Hilt for Dependency Injection • Jetpack Compose
  13. Android App Bundles • Official publishing format and a more

    efficient way to build and release your app. • Easily deliver a great experience in a smaller app size which can improve install success and reduce uninstalls. • In second half of 2021, you must use AAB for upload to Google Play, instead APK.
  14. AAB Uptake • Over 600,000 apps and games currently use

    the app bundle in production, representing over 40% of all releases on Google Play • 20% average size saving vs universal APK • Up to 11% increase in installs from size savings Source: Google I/O 19
  15. How to always up-to-date? • Subscribe email newsletter ◦ Android

    Weekly & Kotlin Weekly • Subscribe Android Developer channel • Follow Android Developers in Medium ◦ ProAndroidDev, BetterProgramming, AndroidPub • Join community events • Watch Dicoding Developer Coaching & Dicoding Live • Learn Dicoding Android Learning Path
  16. Takeaway • Learn Modern Android Development • Check your MAD

    ScoreCard • Stay up-to-date. Stay Hungry. Stay foolish.