It is easy to become an Android developer, but it is difficult to become a successful and outstanding Android developer. It takes a lot of hard work, passion, dedication and perseverance to achieve this achievement. I can't give you a quick way to become a successful developer, but if you're willing to put in the effort and heart, you will get there. As you all requested, here are some concise and professional advice based on my own experience on how to become a better Android developer. So if you have decided to get into Android development or have been doing Android development for a while, you have come to the right place. So without further ado, let’s get started. 1. Get more familiar with the internals of the Android framework I don’t mean familiar with the documentation, I mean the framework code. Many developers are afraid to dive into the Android framework and understand how it works and how the various parts fit together. If you want to go further on the Android platform, boldly touch the internals of the Android SDK and become friends with it. 2. Overcome FOMO Android is big. Very big. You can't learn it from beginning to end in a month or two. The more you learn, the more new things you will find to learn. As a beginner, it is normal to always worry about what you have missed. But to overcome this worry, it is enough to learn what is needed for the app you are currently developing, and then slowly expand your horizons. 3. Start reading more code Many developers are unwilling to take the time to read other people's code and spend most of their time writing what they already know. But that won't help you grow or increase your knowledge. You should start reading the code of other open source apps and libraries. Reading code for 30 minutes a day is a good start. You'll be surprised how much you don't know. Tip: Get started with these best open source apps. 4. Consider learning more languages I'm not asking you to learn Spanish or Chinese, but learn a new programming language. You should keep up with the pace of updates in the industry instead of limiting yourself to Android for life. This will broaden your horizons and help you improve your Android development skills significantly. Make a resolution to learn at least one new programming language a year, but don't just spend a week learning it and forget about it, but study it in depth. Tip: Read this awesome article to help you make a better decision. (Spoiler - the answer is Javascript) 5. It’s time to learn Java design patterns I cannot overemphasize the importance of design patterns in your Android development career. Generally speaking, whenever you face a tough programming problem, design patterns can really help you to find an elegant solution. In addition, you need to be in the same channel with other developers so that you immediately know what they mean when they are discussing Factory, Decorator, Facade. Vow to learn one new design pattern a week. Tip: Here is a really great resource. If you like books, you should definitely read this one. 6. Start contributing to open source code If you develop something useful and use it in your own app, consider open sourcing it. You will learn a lot in the process. If you don't have anything to contribute, consider finding another open source project you like and fixing some bugs, improving documentation, or writing tests on it. Even the smallest contribution goes a long way toward helping maintainers keep the project running. Tip: Here’s a great guide to help you get started contributing to open source projects. 7. Get familiar with the IDE Spend more time getting familiar with the IDE you are using - Android Studio. It can do much more than you think. There are many cool features and shortcuts hidden in this IDE that most developers don't know about or have never tried. Develop the habit of exploring new features and better ways to use tools to improve work efficiency. Tip: Here is an article to help you master Android Studio like a pro. 8. It’s time to properly structure your app Most of the time we put code in Activities and Fragments in a general way (you can blame me on this one too), which turns them into huge "God Objects" which are almost impossible to maintain and test. It is very important to adopt a good architecture for the app, such as MVP, MVVM, Redux, etc. Consider dividing the app's business logic, view interaction, and data exchange into different layers to make them easier to manage and test. Tip: Take a look at these templates from Google to make it easier when architecting your app. 9. Learn Android clean coding standards This is a problem that cannot be ignored. It is difficult to work with people who do not follow even basic Android development coding standards. It's not a difficult thing to do, it only takes a few hours to learn basic Java and Android coding standards. And it's not a one-time deal, it's a lifelong benefit as a developer. Tip: Here is a great resource to start learning about standard coding conventions. 10. Spend time learning Android best practices To give yourself an edge over other developers and build apps that look good and work well, you need to start learning some Android development best practices. On the road to becoming a better developer there are some do’s and don’ts that can make your app stand out. Tip: Here is a collection of some best practices. 11. Make better use of your spare time by listening to the radio When you are commuting, at the gym, driving, or cooking, your smart brain is actually not doing anything. You can use this time to listen to some Android radio stations. Tip: Fragmented Podcasts and Android Developers Backstage are two good stations to start with. 12. Don’t be too engineer-minded, be realistic This happened not only to me, but also to several of my colleagues. It is right to think more before starting work, but overthinking and overanalyzing will not lead to anything except unnecessary confusion, worry, and procrastination. Just do what works for the current project and adjust it later as needed. 13. Try to learn design As a developer it is understandable to focus on writing better code. But if you want to be a well-rounded developer, you should start learning and understanding about UI and UX every day. This will completely change the way you look at the app you have been developing. Try to communicate with the UI or UX designer in your team to gain a deeper understanding of app design. Tip: If you are interested in understanding how design works, read this book. 14. Become a perfectionist This is a subjective topic, as what I consider "perfect" may not be what others consider, but in general, try to make the best product you can. Don't settle for less. Don't just do things to get the job done. Be passionate about your work and do it better than others. This will allow you to grow and eventually become a successful developer. 15. Persistence is the key to success If you want to be a successful developer, you need to persevere. You won't gain anything by doing something for a few days or weeks and then giving up. Plan what kind of Android developer you want to be in the next few years and stick with it no matter what difficulties you encounter. It is easy to start doing something, but it is difficult to continue with the same passion after a long time. 16. Start small and build up gradually As a developer, you should try to split complex problems and features into small, simple, independent modules that are easier to understand and can be solved quickly and with relative ease. Don’t let the size and complexity of a project overwhelm you at first. Anything can be solved with the right approach. Start small, build up gradually, and expand step by step. 17. Always have a practice project in hand Having a hands-on project can completely change the way you learn things. If you come across something new, make it a habit to try it out in a hands-on project. For example, if you find an interesting open source project, you should start playing with it in a practice project instead of just looking at the documentation and API. This will give you a much deeper understanding of the library. 18. Start writing more tests I cannot stress enough the importance of testing. You cannot claim a feature is finished without writing detailed tests. Testing helps you build confidence in your code. Don't make the mistake of ignoring testing as something that is optional, which will lead to a lot of bugs in the future. Remember, code without tests immediately becomes legacy code. 19. Consider test-driven development (TDD) When you are developing an app, think about building it in a robust and efficient way so that it can pass the tests smoothly. Start following the TDD "red-green-refactor" cycle. First, you write a test that might fail (red), then write some actual code to make the test pass (green), then further optimize and streamline the code (refactor). Test-driven development is a way to control anxiety during programming. Anxiety makes you very tentative. Anxiety makes you not want to communicate with others. Anxiety makes you afraid of feedback. Anxiety makes you irritable. — Case from TDD 20. Configure a suitable automatic publishing mechanism As a developer, try to spend as little time as possible on things that should be automated, such as app quality checking and releases. You should use tools like CheckStyle, PMD, Lint, FindBugs for quality checking. It is necessary to run all unit tests and real machine tests before merging into the main branch. When all these checks pass, you’ll get a green signal to publish your APK to the Play Store or distribute it to other channels (like Crashlytics Beta). Tip: This tool can be used for automatic publishing to the Play Store. 21. Embrace Responsive Programming If you want to further improve your skills, you should definitely consider embracing responsive programming. This will force you to revolutionize the way you think when building apps. Using a responsive approach to programming will definitely help you write interactive apps, and it will also make daily development easier and more enjoyable. Tip: Here is a good series of tutorials to learn the basics of RxJava.
22. Learn Android development with Kotlin Kotlin is one of the most loved and discussed languages in Android development right now. Now it has also become an officially supported language for developing Android apps. This simple language has brought a breath of fresh air to the world of Android. It is the best gift for those who are tired of the old, clunky, and error-prone Java. Try it and you will definitely find the lost joy of development again. Tip: Learn more about why you should start learning Android development with Kotlin: 23. Attend meetups to socialize with other developers We developers are generally introverts who like to sit in front of a computer in a corner, immersed in our own personal world. But try to get out of your comfort zone and hang out with other developers. Attending developer meetups, social gatherings, and just hanging out with developers who share the same interests can help you learn a lot. Tip: This is a great place to find meetups that interest you. 24. Get familiar with keyboard shortcuts Try to develop the habit of using the mouse as little as possible. Almost all Android Studio operations have corresponding shortcut keys. This will significantly reduce your development time and increase your productivity. Although it may take some time to remember these shortcuts at first, it will help you enter a true mouseless workflow in the long run. Tip: If you don’t want to use the outdated method of memorizing shortcuts, here is a great AS plugin that can help you. 25. Learn at least one new Android knowledge per week There is a lot to learn in the vast world of Android, and it can be daunting at first, but if you commit to learning just one Android topic per week, things will become easier. Make a list of all the things you don't know, and tackle them one by one a week according to the set priorities. After a few months, you will find that you have left your original self several streets behind. 26. Automate anything that eats your time Developers are inherently lazy and always want to find an easy way to do boring work. So if you have to do something repetitive and boring several times a day, consider automating it. You can save a lot of time in a week, and the time saved can be used for other useful things. Tip: Check out this amazing tool that helps you connect your everyday tools to automate communication. 27. Consider running two versions of Android Studio Always use a stable version of Android Studio for important day-to-day work. But also install a canary or beta version of Android Studio. Sometimes these versions are updated with many new features in advance, and you might be happy to try them out as soon as possible. 28. Check your third-party libraries from time to time We all like to use third-party libraries when needed, and there is nothing wrong with that. But make it a habit to check all your third-party libraries once in a while and remove the ones that are no longer needed. If you only use a small part of a library's functionality, consider extracting that part instead of using the entire library. Also, checking in occasionally can help you learn about urgent updates to the library. 29. Learn better ways of refactoring legacy codebases Don't refactor a large legacy code base all at once, or you'll end up with a lot of problems. A better approach is to refactor the parts that need to be refactored immediately, and then slowly expand to other parts as needed. In addition, before changing the code that is suspected of affecting existing functionality, consider writing tests for the refactored pages. Tip: This book completely changed the way I work with legacy code. You should read it, too. 30. Always test on low-end devices If you want to develop like a professional developer, never make the mistake of testing your app on high-end devices. Generally, developers have high-end flagship devices, so they also use them to test their apps. But this is something you need to restrain yourself from. Buy the cheapest, most low-end devices you can find on the market and make a habit of developing apps on them. You will see a lot of problems that you never encountered before. 31. Buy the best work equipment you can afford Don't let the mistake of buying a low-end device ruin your daily development experience. Consider using a Mac (better than Windows) for development; you'll love its simplicity and stability. Well, if you're buying a MacBook consider the best configuration you can get, a few hundred dollars won't make a big difference and you'll always thank yourself for that decision. I hope these tips can help you become a better Android developer. Now that you have read them and understood what they mean, it is time to put them into practice. Only then can you experience their true power. If you found this article useful, please recommend it to your friends, colleagues, enemies or anyone else through social media. |
Why are there more common swifts—also called Beij...
The reason why most people have to replace their ...
In the chess game of new energy vehicles in China...
Today, the fragmented society has led to a sharp ...
Not long ago, a customer consulted the editor. Si...
Crop straw It is the other half of agricultural p...
Windows 10 is about to be completed, and the buil...
Testing is a topic that no developer wants to tal...
On a world map, how many colors are needed to col...
This article is reprinted with permission from AI...
Douyin is a music creative short video social sof...
Someone told me that Sina Weibo’s scale is not up...
1. What do I look for when recruiting operations ...
1. For families with school-age children, placing...