Why Android
Android is a fast growing mobile operating system that is gaining much popularity in the mobile market. While mobile technology has improved greatly, the possibilities with the android platform is just seamless. The points under listed should encourage any one to begin a journey in the android platform.
- Worldwide, over 86% of smartphones are Android-based. Android-majority in virtually all countries.
- In the US, 66% of smartphones are Android-based.
- Mobile development (smartphones and tablet) is the key focus for most modern product companies.
- Huge demand and short supply of Android developers.
- Across the US, the average salary of an Android developer is 93K. In San Francisco, the average salary of an Android developer is 140K
Statistics gotten from codepath - https://codepath.com
Android Development Road Map
Getting started on android development is quite easy. The following topics which are the building block of any android app, should get you started into becoming an android developer.
- Activities
- Activity lifecycle
- Android Views
- UI components
- Intents
- Services
- Content Providers
- Broadcast Receivers
Being an Android Developer, you have to keep yourself updated with new frameworks, libraries, and modern coding standards. Below is the list of few such topics, that you should learn. learning these will help you to increase your coding skills and standards gradually:-
- MVP (Android Architecture Pattern)
- RxJava (Observer Pattern on Steroids)
- Dagger 2 (Dependency Injection Framework)
- TDD (Test Driven Development)
Mockito (Testing Framework)
Espresso Testing (Testing Framework)
RoboElectric (Unit Test Framework)
- RetroLambda (To use Java 8 Features in Android)
- Data Binding (Bind Data & UI)
- LeakCanary (Memory Leak Detection Library)
- Firebase (Tools to build Better Apps)
- MVVM (Another Android Architecture Pattern)
- Retrofit (Type Safe Rest Client)
- FCM (Used for Push Notification)
- Kotlin (Statically-Typed Programming Language)
There are a lot of other advanced topics that you should know about, but surely they will be having a huge learning curve and starting with items mentioned above will bring you on the same page as the rest of experienced Android Developers.
Since android is open source, there are lots of free rich resources and paid ones available online to help your learning
- https://guides.codepath.com/android
- https://www.udacity.com/course/new-android-fundamentals--ud851
- https://www.codementor.io/collections/learn-android-development-bwba0mlle
in this journey of learning android app development, you will need to give it time and enough practice in order to become a world class developer.
Happy Learning...
Thank you for your contribution. However, please spend some time reading the rules. PS: please also don't copy texts from internet.
Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]
Thanks for the advice