Kotlin is the best choice as the code is compact and less verbose than Java.
But start with Java as it's essential for your professional portfolio. Java is your core dev language. Only when confident with Java, one should jump into Kotlin!
Don't just study. Be it course, codelab or tutorial, make sure you are following in parallel. Practicing on your own makes wonders!
Build apps and have fun with it. That's how you will ultimately learn to code.
5. Make sure you understand lifecycles
Regardless what you are learning right now, if you haven't started with lifecycles in Android, do it now!
Lifecycles are fundamental to everything in Android development. Start from Activity lifecycle, to fragment and application.
6. Don't skip important components
You 100% need to learn Jetpack Compose, but this doesn't mean you shouldn't learn anything about Fragments or XML.
Kotlin Flow is out, it doesn't mean you shouldn't learn RxJava!
You will need these skills, so by all means don't avoid them!
7. Jetpack is your friend, starting with Compose
Try to explore the Jetpack libraries first. Start with the best one yet: Compose. Move to ViewModel, LiveData, Room, Hilt, Paging etc.
Try to see why you need a library and how it works. Always understand what you're doing.
8. Try to use up-to-date libraries
Go and explore Coroutines, RxJava, Dagger and Retrofit. While RxJava and Dagger are less and less used, you might encounter an old project that has them!
Always expand your horizon over the libraries that are only used "today".
9. Learn app architecture
Build better apps by exploring what MVC, MVP and MVVM patterns are. Understand the benefits of MVVM and why most modern android apps use it.
Learn what separation of concerns means and how to create clean Android projects by separating business logic.
10. Learn how to test your code
This is the stepping stone to becoming a great developer. Learn how to unit test your app and how to build UI tests that make sure the application behaves correctly.
Tests should be a normality in every Android project!
11. Don't settle for less just because you're starting out.
Explore the SOLID principles, or Clean code by Uncle Bob. Understand Dependency Injection and why Hilt/Dagger are used in projects.
These are skills that will differentiate your from other developers!
12. Stay consistent in learning
Create your goals and set deadlines for each chapter of your journey.
Become accountable for each one of your goals. This way, you will keep on grinding and avoid procrastinating.
13. Stay curios and question everything
Always ask yourself why you are doing whatever you are doing when adding a function, a callback, a library, test etc.
Always understand what you are doing step by step. This will help your memorize the flow needed to build apps.
14. Always test your code on older devices
Never build apps on your latest Android device. Chances are, when running the code on older API levels, the application will not behave as expected.
It's your job to make it run smoothly on all Android API levels.
15. Understand how your apps work
Explore the build process of Android applications and understand the runtime process from Dalvik to recent Android Runtime (ART).
Every Android developers should have such an overview! When asked how your apps work, what will you say?
• • •
Missing some Tweet in this thread? You can try to
force a refresh