Android app development tutorial is everywhere. But it is tough to get the right direction from an experienced Java Android developer. Hasan Abdullah is a famous Android developer. He has longtime experience in Android development. Today he is sharing his knowledge and experience with you- how to you can become an experienced Android developer.
When Android development will not start, and when will start
Generally, graduation takes 4 years to complete. So when your 3rd year will end, you can start then. If you start to learn before 3rd year, it’ll hard for you to manage study, ACM etc. Because, it’ll take many times to learn Data Structure, OOP, Database, Algorithm etc. You may take to understand a Data Structure concept for 2/3 hours, but it’ll take many times how to use it or how to implement expertly. It’s not an overnight issue. If you have no good concept of Data Structure, OOP, Database, Algorithm etc. then you will face many problems with application development.
But if you are separate from CSE department or study, then you can start anytime.
How to start Android Development
Java and Kotlin both are the official languages for Android development. You can work with anyone. But most of the senior developer advice to start with Java. Through the Java, you will learn a strong and strict language with OOP concept clearly. Since I’m an Android developer with Java so the article will focus on the language.
Prerequisites for Learning Android Development
If you want to start Android development after the basics of your programming knowledge, then think about how much knowledge you have in Java. If you do not study Java before, then take 2-3 months for making the concept clear with OOP. Below are the names of some topics that you can start Android after learning this.
- Java input and output from console
- Simple arithmetic and bitwise operation
- Stack class
- Queue class
- StringBuffer class
- String class
- Date and time-related classes
- File input and output
- Linear Search
- Binary Search
- Bubble Sort
- Quick Sort
- Sieve of Eratosthenes
- Method overloading
- Method overriding
Within 3 months it’s possible to learn above things. Therefore, it’ll best if you make a simple project in the console. It maybe student information. Try to apply read-write-delete-edit system, try to implement your OOP knowledge on it due to sharp your knowledge. If you unable to clear this concept, you’ll face many problems when you’ll do Android. Need to learn many things, but you’ll learn all gradually.
For learning blog or video tutorials is not good, books are the best. I have followed these books for learning Java-
- How to program Java by Deitel
- Head First Java
- Effective Java
Start Learning of Android App Development
Android Studio is the strongest IDE for developing Android apps. Download it and install it on your PC. If you have trouble installing then watch YouTube video. Since you are trying to learn app development, I’m assuming you have enough patience and has a habit of Google searching. If you get stuck in anywhere, you should not knock to someone like a fool, before that you will take few hours on Google to find the problem.
To learn by myself, in my opinion, it is better to start seeing video tutorials. It quickly captures some output in front of the eyes. It’s needed for your inspiration. There has many beginner level video tutorial series on YouTube. You should practice regularly. I give a few links below:
Giving you more resource, which is very helpful.
- Android Official Documentation
- Awesome Android Complete Reference
- Developers Blog
- Android Hive
- Tutorials Point
- Java Point
- The Busy Coder’s Guide to Android Development (Book)
- Head First Android Development – 2nd Edition (Book)
Find out more numerous resources. In addition, start by doing what you like best. The videos of the first link are good to me. Because very fast and a little bit of video. There has no any chance of sleeping when you see those videos. Therefore, every topic discussed in a small video. So, after learning some of these topics, since you learned, you should make a small project. Do not ask again, “Brother, which project I can do? I do not have any idea. Give me an idea!“. Make the calculator if you do not get an idea. Make a scientific calculator or do not have anything in mind, create a simple app so that you can implement topics what you learned above. If someone asks, “What did you learn?”, then show him this app.
Practice reading books as well as watching videos. Because you will never get the full concept of a topic from the video. Therefore, all the information is not provided in the video. There is a little more on the blog than the video. More details are available in the book. Furthermore, Android’s official documentation is the most reliable and authoritative source of learning. At the beginning, it may not be very advantageous for you. But if you gradually increase your skills, then you will be able to understand the documentation. The thing I do is, first of all, take ideas by watching a tutorial blog or video. Then slowly began to read the official doc. It’s easy to understand me. But this system may not work in your case. Therefore, you can catch your own system after a while.
Some topics about Android App Development
You can learn the following topics gradually. It does not have to learn this serially. You can do it before and after when need.
- TextView (To show “Hello World!”)
- EditText (to get text input)
- Pop up Dialog
- Radio Button
- Activity (start an activity from another activity)
- Data transfer between two ‘Activity’
- Activity Life Cycle ***
- Phone call, email, SMS
- Navigation Drawer
- Floating Action Button
- SQLite database
- Learn to use third-party libraries.
- Learn Logger Library
- Learn Picasso and Glide Library for image loading
- Network call (REST API) with Retrofit ***
- Butter Knife Library
- EventBus Library
- RecyclerView and CardView
- Runtime permission
- Default Camera
- Image or file upload to server
- Play Audio and Video
- Firebase Push Notification
- ProGuard for Source Code Security
- Use Youtube API, Map API
- Use Social Login
- Learn about basic design pattern like Singleton, Builder pattern, Factory pattern etc
- Learn MVP architectural pattern ***
- Android Development best practices ***
- Git for version control
- Learn MORE and MORE and MORE…
*** mark for very important
After completing above steps you call yourself ‘basic Android developer’. Furthermore, when you see any new topic should be learned like a thirsty! You have to be patient, should go forward with strong steps. Therefore- sun, rain, storm, nothing should touch you. Your app will crash 10 times once every run. That’s the rule.Null pointer Exception will hang your head. Which problems you are facing when learning, every developer faced the same condition when they were fresher. So if the app is not working then do not do massage a friend or senior developer, first search on Google and try to solve yourself.
If possible, start working with a team of 3-4 peoples. Take the people who love to code rather than making money. Do not take someone in the team, who worried about the sharing of revenue before start work. At the beginning take simple projects and become expert gradually. Then if you got an excellent idea create an account on PlayStore. Do not worry about more income. Rather than, try to implement in your ap what you’ve learned. If you want to learn through work, you can create newspaper loading apps. But don’t think you’ll get lots of money from the app. If there is something unique in your newspaper app, which does not have another app, then it is different. Do not waste time by developing this type of app- ‘Tips for cooking in the morning’, ‘Makeup tips in the afternoon’ etc.
Set your mind to become a problem solver, not just to become Android Developer! Build yourself as core programmer. Again, if you think that “I can not do a programming… so I’m going to be an app developer!” So this is your nightmare! If you think you are not ready for hard work, then try in another way.
Today have Android. If not have on tomorrow? Then what you’ll do? So that you can switch to any new technology, so there has no alternative to learning core programming.
Ending with an ethics talk. Never do such an illegal thing for money, do not make an app that does not support your religion, which is harmful to the people of your country, which is harmful to society and human civilization. Do not make apps that will not show your mother with pride. You can see that your younger siblings are using them. Your kids may use this app someday. As a result, the income from this app will not be legal. Since you will die, the sins of all the users of this app will reach your grave! Therefore, can you tolerate the punish of the grave?
Being a good app developer, it’s better to become a good man. Knowledge is not for special someone! Share the article with your friends and sisters.