加载中

Becoming an Android developer is easy, but becoming a successful Android developer and standing out from the rest is not. It takes a lot of hard work, passion, dedication and perseverance to reach there.

There is no shortcut or an easy way that I can show you to become a truly successful developer. But if you are willing to put in the effort and heart needed, you will surely get all the success you deserve.

On your quest of becoming a better Android developer, here are some bite-sized pro tips from my experience to aid you in the journey. So, if you have decided to jump into Android development or have been working as an Android developer for a while now, you have reached the perfect place.

So, without wasting any more time further, let’s get started.

成为一名安卓开发者是容易的,但是成为一名成功和杰出的开发者并不容易。需要大量的努力工作,激情,奉献精神和锲而不舍才能达到。

我可以证明给你看成为一名真正卓有成就的开发者没有捷径和容易的方法。但是如果你愿意放在心上并且努力,你一定会取得应有的成就。

在你成为一名优秀的安卓开发者的探索中,这里有一些从个人经验中总结出来的小贴士可以用来帮助你。

所以,假如你打算投入到安卓开发中或者已经成为了一名安卓开发者,那你已经找到了绝佳的地方。

所以,不要再浪费更多的时间,我们开始吧。

1. Get more familiar with the Android framework internals

I am not talking about getting familiar with the documentation but with the actual Android framework code. I have seen many developers afraid of looking and diving deep into the Android framework internals and discovering how things actually work and how different pieces fit together properly.

If you need to level up your Android game, stop shying away from the inner workings of the Android SDK and start befriending it.

2. Try to get over the Fear Of Missing Out (FoMo)

Android is big, very big. You cannot learn it completely end-to-end in a month or two or so. The more you learn, you will find even more new things coming your way. As a beginner, it’s perfectly normal to have a fear of miss out.

But try to get over it. Learn the things that you really need to learn in order to get started with the app you are currently building and then slowly expand your horizon.

3. Start reading more code

Most developers don’t pull out time to read what other developers are writing. They just spent most of their time writing what they already know.

But that will not help you grow as a developer. That would not increase your knowledge. You should start looking at other open-source apps and libraries and start learning. 30 minutes of code reading everyday is a good start. You will be surprised to discover so many new things you had no idea about.

TipHere are some of the best open-source apps to help you get started.

1.熟悉 Android 框架的内部构件

我不是让你去熟悉文档,而是要去实际使用 Android 框架代码。我看到许多开发人员害怕深入去了解 Android 框架内部的内容、其如何运作,以及不同的部分应如何正确配合。

如果你需要升级你的 Android “游戏”,请不要再害怕去接触 Android SDK 的内部运作,尽快开始关注它吧。

2.尽量克服遗漏恐惧症(FoMo)

Android 体系很大,非常大。在一两个月左右的时间里,根本不能完全掌握它。你学的越多,你会发现有更多的新事物来到你的面前。作为一个初学者,害怕遗漏一些东西是很正常的。

但是请试着克服它。了解你真正需要学习的内容,以便开始在正在构建的应用程序中使用,然后再慢慢地扩展自己的视野。

3.开始阅读更多的代码

大多数开发人员没有时间阅读其他开发人员正在撰写的内容。他们大部分时间都在写他们已经知道的内容。

但这对提高你的开发技能并没有帮助,不会增长你的知识。你应该开始接触其他开源的应用和库,并开始学习。每天30分钟的代码阅读是一个很好的开始。你会惊奇地发现你不知道的许多新事物。

提示:这里有一些很好的开源应用可以帮助你上手。

4. Consider learning more languages

I am not telling you to learn Spanish or Chinese, but to learn new programming languages. You need to keep yourself updated with what is happening in the industry rather than confining yourself only with Android all the time.

This will open up your perspective and will help you improve your Android development skills significantly. Make up your mind to learn at least one new programming language every year. But don’t just skim over the language for a week and leave it. Try to get into the depths of the language and how it works internally.

TipCheck out this amazing article that can help you make a better descision. (SPOILER — Javascript is the answer)

5. It’s time to learn Java Design Patterns

I can’t stress enough on how important this can be in your Android development career in the long run. Whenever you are stuck with solving a critical programming problem, design patterns can really help you a lot in building an elegant solution.

You also need to be on the same page with other developers, so that when they are talking about using a Factory or Decorator or a Facade pattern, you instantly know what they mean.

Make yourself the promise of learning one new design pattern every week.

TipHere is an excellent resource for you to get started. If books are your thing, then you must give this one a read for sure.


4.考虑学习更多的语言

我并不是叫你去学习西班牙语或者汉语,而是去学习一门新的程序语言。你需要时时跟上行业的变革而不是只局限在安卓里面。

这将开拓你的视野也将极大的提高你的安卓开发技能。下定决心每年至少学习一门新的程序语言。但不要只是在一周内浏览它然后丢在一边。尽量理解语言的深层次内涵和它内部如何实现。

提示:看看这篇精彩的文章能帮助你做很好的决定。(SPOILER — Javascript is the answer)

5.是时候学习 java 设计模式了

我不再强调它在你漫长的安卓开发职业生涯中的重要性了。当你在解决极重要的程序问题时,设计模式能够真正极大地帮助你实现优雅的解决。

你也需要跟上其他开发者的步伐,这样当他们讨论工程模式或者装饰者模式或者门面模式时,你能马上知晓他们的意思。

给自己许下诺言,每周学习一个新的设计模式。

提示:这里有你开始的绝佳资源。假如书是你的选择,这本请务必一读。

6. Start contributing to open-source

If you have developed something useful and is using it in your own app, then consider open-sourcing it. You will have so much to learn in the process which will help you grow as a developer.

If you don’t have anything to open-source, consider checking out other interesting open-source projects and fix some bugs, improve the documentation or write a few tests there.

Even the smallest bit of contribution will be helpful for the project maintainer to keep the project running.

TipHere is an awesome guide for you to get started with open-source contribution.

7. Make your IDE work for you

Start spending more time in understanding the IDE you are using — Android Studio. It can do so much more than you think it can. There are so many cool features and shortcuts hidden in the IDE that most developers don’t know or never even try to discover.

Make it a habit of discovering new and better ways of making your tools work for you thereby improving your workflow and productivity.

TipHere is an amazing article to help you master Android Studio like a pro.

8. It’s time to architect your app properly

Most of the time we end up dumping all our code in the Activities or Fragments (you can blame me for this sin as well) turning them into gigantic God objects which are nearly impossible to maintain and test.

It is very important to adopt a good architecture for your app, like MVPMVVMRedux, etc. Consider separate your app’s business logic, view interactions, and data interactions into different layers making them easy to manage and test.

TipCheckout these useful blueprints from Google to make your life easier while architecting Android apps.

6. 开始贡献开源

假如你已经开发了一些有用的代码并用在自己的应用中,那么考虑开源它。在这个过程中会有很多需要学习,这会帮助你成为一名开发者。

假如你没有什么需要开源的,考虑捡出其他感兴趣的代码工程并修复一些 bug 。完善文档或者写一些单元测试。

即使是你一一丝丝的帮助,对项目维护者保证项目的运转都是有帮助的。

提示: 这里有一份你开始为开源贡献的绝佳指南。

7. 花一些时间使你的 IDE 为你工作

开始花一些时间理解你正在使用的 IDE — Android Studio 。它比你想象的能干得多。有很多炫酷的特性和快捷方式隐藏在里面。但大多数开发者不知道或永远不会去尝试发现。

形成一种习惯,探索新的和更好的方法使你的工具为你工作,从而提高你的工作流和生产力。

提示: 这里有一篇绝妙文章帮助你像专家一样掌握 Android Studio 。

8. 是时候正确架构你的应用了

大多数时间,我们最终把我们所有的代码任意堆砌在 Activities 和 Fragments 中,使它们变成巨大的神一般的对象,几乎不可维护和测试。

你的应用采用好的架构是非常重要的, 像 MVPMVVMRedux, 等。考虑分离你的应用业务逻辑,视图交互和数据交互传输到不同的层,使它们易于管理和测试。

提示: 这些从谷歌检索出的实用蓝皮书能使你架构 Android 应用更轻松。

9. Learn clean coding guidelines for Android

You just can’t ignore this. It becomes really difficult to work with developers who don’t write clean code maintaining at least the basic coding guidelines of Android development.

It’s not rocket science at all and should not take you more than a few hours to learn most of the fundamental Java and Android coding guidelines. It should not be an one time thing, rather a lifestyle change for the developer.

TipHere is an excellent resource for you to start learning the standard coding guidelines.

10. Spend some time learning about the Android best practices

To get yourself an edge over other developers and to build apps that look good and work well, you need to start learning some of the best practices of Android development.

These are some of the do’s and don’ts that can help you in becoming a better developer and make your app stand out from the rest.

TipHere is a compilation of some of the best practices for you to make better apps.

11. Utilize your free time effectively by listening to podcasts

Try to utilize your time properly and effectively. There are times like when you are commuting to/from office, working out at the gym, driving, cooking etc. and your genius brain is not doing too much.

You can utilize times like these by listening to some resourceful Android podcasts. Always prefer to keep your brain occupied with useful and informative things as much as possible and always try to make the most of your time.

TipFragmented Podcasts and Android Developers Backstage are two amazing podcast sources to start with.

9. 掌握 Android 简洁编码指南

千万不要忽视简洁性。和那些将代码写的很凌乱的开发者共事会非常痛苦。

学习基础的 Java 和 Android 编码指南没有什么快捷方式,也不用花费你几个小时的时间。因为这不是一次性能实现的,而是在开发过程中潜移默化的。

提示:这有开始学习标准编码指南的极好资源。

10. 花点时间了解 Android 最佳实践

为让自己比其他开发人员更有优势,并构建出卖相和功能都很牛的应用程序,你需要开始学习一些 Android 开发的最佳实践。

这些做法和经验积累,可以帮助你成为更优秀的开发者,并让你的应用程序脱颖而出。

提示:这有构建应用程式的一些最佳做法的汇总。

11. 通过听播客来有效利用空闲时间

尝试正确并有效地利用你的时间。当你上下班、在健身房锻炼、开车、做饭时,你天才一般的大脑并没有做太多的事情。

所以,可以通过聆听一些具有价值的 Android 播客来利用这些空闲时间。总是尽可能地让一些有用的东西充斥着你的大脑,始终尽量充分利用你的时间。

提示:Fragmented Podcasts 和 Android Developers Backstage 是两个不错的播客音频来源。

12. Don’t over-engineer things. Be realistic.

I have seen this happening not only with me but with several other fellow developers I have worked with as well. Thinking about something before starting to work on it is good (rather very good), but over-thinking and 0ver-analyzing things lead to nothing other than unnecessary confusion, delay and anxiety.

Do what seems good for the project right now and you can always adjust to the changing situations in the future as required.

Recommended Reading

What 2 Years of Android Development Have Taught Me the Hard Way

13. Try to learn about design

I can understand that being a developer your primary focus is on learning to write better code and that’s pretty obvious as well. But if you want to be a complete developer, you should start spending some time everyday on learning and understanding about UI and UX design as well.

This will completely change the way you look at the apps you have been coding all the time. Try to talk and interact more with the UI and UX designers in your team to get better insight into app design.

TipGive this amazing book a read if you are interested in understanding how design actually works.

14. Start being a perfectionist

This is a subjective topic as what is “perfection” to me might not be “perfection” to others. But as a thumb rule, try to achieve the best possible version of the product that you are required to deliver, all the time.

Never settle for less. Don’t work on something just for the sake of it. Be passionate about the work you are doing and do it better than others. This will help you constantly grow and become a successful developer in the long run.

12. 不要过度思考,现实点。

我不止在自己的身上看到这种情况,还发现其他和我一起工作的同事身上也存在相同的问题。在开始工作之前,思考一些事情是正确的(非常好),但过度的思考和分析事情,除了带来不必要的混乱、拖延和焦虑之外,没有任何好处。

做好眼前对项目有好处的事情,根据需要随时适应变化即可。

延伸阅读:2 年艰难的 Android 开发教会了这些

13. 试着了解设计

作为开发者,重心放在学习编写更好的代码上,完全可以理解。但是,如果想成为一名全能的开发者,还是应该每天花时间学习和了解 UI 和 UX 设计。

这将完全改变你之前编写应用程序的方式。请尝试与团队中的 UI 和 UX 设计人员进行交流和互动,以更好地了解应用设计。

提示:如果有兴趣了解设计如何工作,可阅读这本令人惊叹的书籍

14. 开始成为一位完美主义者

这是一个主观话题,我眼中的“完美”可能和他人的“完美”并不一样。但是,尽可能将你的产品打磨至最佳,是一个真理。

永不放弃。不要只因为某个目的而去做某件事。热衷于你正在做的工作,然后做得比别人好。这有助于你一路成长,并最终成为一名成功的开发者。

15. Consistency is the key to success

If you want to be successful as an Android developer (or anything else in life), you need to be consistent.

Doing something for a few days or weeks and then quitting won’t take you anywhere. Try to visualize where you want to be as an Android developer in the next few years and stick to your goal whatever challenge comes your way.

It is very easy to start doing something, but very difficult to continue doing it with the same passion and dedication for a (very) long time.

16. Start small. Expand slowly.

As a developer, you should always try to break down any complex problem or feature you are working on into small, simple and independent components that can be understood and solved easily and quickly.

Don’t get overwhelmed with the initial size or complexity of a project. Everything can be solved once you are on the right track. Start small, take baby steps and expand slowly.

17. Always have a playground project in hand

Having a playground project in hand can completely change the way you learn things. If you come across something new in Android somewhere, make it a habit to immediately give it a try in your playground project.

Suppose you discover an interesting Android library somewhere. Instead of just skimming over the docs and the APIs, you should start playing around with it in your playground project right away. This will give you a much better and deeper understanding of the library.

15. 毅力是成功的关键

如果想成为一名成功的 Android 开发者(或生活中的其他角色),你需要有毅力。

一件事情只做几天或几周,然后就丢在一旁不会带来任何结果。尝试清晰的定位你想在未来几年内成为 Android 开发者,并坚持不懈的进行冲刺和挑战。

开始做某件事很容易,但是保持长时间的激情需要努力。

16. 以小目标开始,慢慢拓展

作为开发者,应始终尝试将正在开展的复杂问题或功能,分解成可以快速理解和解决的简单、独立的组件。

不要因项目的初始大小或复杂程度而不知所措。只要你走上了正确的轨道,一切都可以解决。一步一步,慢慢扩张。

17. 手边总有一个练手项目

练手项目可以完全改变学习的方式。如果你在 Android 中遇到了一些新的东西,那就养成一个习惯,立马到练手项目上试试手。

如果你发现一个有意思的 Android 库,不应该只是去了解它的文档和 API ,而是应立即在练手项目中尝试。这会让你对这个库了解更深。

18. Start writing more tests

I can’t stress enough on how important this is. You can’t conclude a feature to be complete until you write exhaustive tests for it. Tests will help you build confidence islands on your code.

Don’t make the mistake of neglecting testing or considering it as something “optional” and making your life more painful with regression bugs later. Remember, a code written without tests becomes legacy code instantly.

Recommended Reading

50+ Ultimate Resources to Master Android Development

19. Consider adopting TDD

When you are developing an app, consider making the choice of building it in a robust and efficient way so that it can survive the test of time.

Start following the “red-green-refactor” cycle of TDD. First write the test case which will fail (red), then write the actual code to make the test pass (green) and then go for cleaning and optimizing the code further. (refactor).

Test-driven development is a way of managing fear during programming. Fear makes you tentative. Fear makes you want to communicate less. Fear makes you shy away from feedback. Fear makes you grumpy. — TDD By Example

20. Setup a proper automated release mechanism

As a developer, try to keep yourself as less occupied as possible with things that can and should be automated, like app quality checking and release.

You should automate the quality checking mechanism with tools like CheckStylePMDLintFindBugs. Running all the unit and instrumentation tests before merging any major change is a must.

When all of these checks pass, you get the green signal to publish the APK to Play Store or distribute it in any other way you want (like Crashlytics Beta).

TipConsider automating the Play Store publishing process as well using tools like this.

18. 开始写更多的测试

我无法强调这有多重要。你无法确定功能是否真正完成,直到为此进行详尽的测试。测试将帮助你对自己的代码建立自信。

请不要忽视测试,或者把它视为“可选”项,这样只会让你在后续的开发上更痛苦。记住,没有测试的代码将很快成为遗留代码。

延伸阅读

50+ 个极限资源来掌握 Android 开发

19. 考虑采用 TDD

当开发应用程序时,考虑以强大而有效的方式来构建应用,以便能经受住时间的考验。

请开始遵循 TDD 的“红 - 绿-重构”循环方法。首先写入失败的测试用例(红色),然后写入实际代码使测试通过(绿色),最后进一步清理和优化代码(重构)。

20. 设置一个适当的自动发行机制

作为一名开发者,应尽量让一些东西自动化,如应用质量检查和发布。

可以使用 CheckStylePMDLintFindBugs 等工具自动完成质量检查机制。在合并任何重大变更之前,运行所有单元测试是必须的。

当所有的检查都通过时,你就可以获得绿色信号,将 APK 发布到 Play Store ,或以其他方式分发(如Crashlytics Beta)。

提示:考虑使用此类工具自动执行 Play Store 发布流程。

21. Embrace the reactive programming approach

If you want to level up your skills as an Android developer, you should definitely consider embracing the reactive approach. This will force you to think in a completely different way in which you build apps.

Going the reactive way will surely help you write interactive apps faster and will make your development life easier and fun again.

TipHere is an excellent series to learn the basics of RxJava for Android develoment.


22. Learn to use Kotlin for Android development

Kotlin is currently one of the most loved and talked about language when it comes to Android development. It is also now the officially supported language for developing Android apps. This easy-going language brings a breath of fresh air to the world of Android.

It is one of the best things that happened to Android developers who are bored working on the same old, verbose and error-prone Java. Give it a try and you will surely find the lost happiness in your development life once again.

Tip: Learn more on why you should start learning Kotlin for better Android development.

Why You Should Start Using Kotlin to Supercharge Your Android Development in 2017

21. 拥抱响应式编程

如果想提高你的 Android 开发技巧,请务必要考虑采用响应式编程方法。这将迫使你以完全不同的思考方式构建应用程序。

响应式编程方法能帮你更快地编写交互式应用,并让开发生活更轻松更有趣。

提示:这有一个系列以了解适用于 Android 开发的 RxJava 的基础知识。

22. 学习使用 Kotlin 进行 Android 开发

Kotlin 是目前 Android 开发中最受欢迎的语言之一,也是官方正式支持的 Android 应用开发语言。这款易于使用的语言为 Android 世界带来了新鲜空气。

对于那些已经对冗长且容易出错的 Java 感到厌倦的开发者来说,这是一件非常好的事情。尝试一下,你或许或重新找回最初开发的激情。

提示:进一步了解为什么你应该开始学习 Kotlin 以更好的进行 Android 开发。

23. Attend meet-ups and be more social with other developers

We developers tend to be quite introvert and like to sit in a corner with our computer and be in our own world.

But try to move out of your comfort zone and interact more with other developers. There are lots of things to learn when you attend dev meetups, social gatherings and talk to other developers who have similar interests like you.

TipHere is a good place to find the meetups you are most interested in.

24. Get familiar with keyboard shortcuts

Try to make it a habit of not using your mouse as much as possible. There are keyboard shortcuts for almost every action you want to perform in Android Studio.

This will significantly reduce your development time and improve your workflow. Memorizing keyboard shortcuts might take some time initially but in the long run, it will help you move towards a truly mouse-less workflow.

Tip: If you don’t want to memorize keyboard shortcuts in the old fashioned way, here is an excellent AS plugin to help you in that.

25. Try learning at least one new Android stuff every week

In the vast world of Android, there are lots of things to learn and understand which might overwhelm you initially when you step into it. But things will turn out to be easy if you make yourself a promise of learning one new thing in Android every week.

Make a list of all the things you don’t know, assign priorities to them and start winning over them one-by-one every week. After a few months, you will find yourself way ahead of where you had started.

23. 参与开发者聚会和社交活动

开发者往往偏内向,喜欢坐在电脑前守着自己的角落,活在自己的世界里。

但是请尝试走出你的舒适区域并与其他开发人员进行更多的互动。当参加这些社交聚会,和具有类似兴趣的其他开发人员交谈时,你会发现能学到很多东西。

提示:这里是找到你最感兴趣的聚会的好地方。

24. 熟悉键盘快捷键

尽量养成不使用鼠标的习惯。几乎所有要在 Android Studio 中执行的动作都有对应的键盘快捷键。

这将大大减少你的开发时间并改善你的工作流程。牢记键盘快捷键最初可能需要一些时间,但从长远来看,将帮助你实现真正无鼠标的工作流程。

提示:如果你不想以原始的方式来记键盘快捷键,这里有一个很好的 AS 插件可以帮到你。

25. 每周尝试学习至少一个新的 Android 相关的东西

在 Android 的庞大世界中,有很多东西需要学习和理解。当你刚踏入这个世界时,可能会被会压倒。但是,如果你制定计划每个星期学习一件新的事物,你会发现事情变得简单了。

列出你不知道的所有事情,为它们分配优先级,并每周一个接一个地开始调整。几个月后,你会发现自己比最初要进步很多。

返回顶部
顶部