成为更好的Android开发者前,我们需要注意的31个细节

作者:Aritra Roy,Google认证Android开发者。

原文链接:https://blog.aritraroy.in/30-bite-sized-pro-tips-to-become-a-better-android-developer-b311fd641089

成为一名Android工程师很容易,但要成为卓越的Android开发者却并不简单。要做到这一点,需要付出很多努力、激情,还有毅力。毕竟,没有捷径可以让我们速成。

在想要成为卓越Android开发者的前提下,兴许我过往经验中的一些开发小技巧,对你的开发有所裨益。接下来,我们就不费口舌,直接分享吧。

1.更加熟悉Android框架内部构件

这里讨论的熟悉不是指文档,而是使用实际的Android框架代码。我看到很多开发人员害怕深入了解Android框架内部的内容,害怕探究其实际如何工作,以及不同的部件如何恰如其分的组合在一起。

如果你真的希望在这场Android开发游戏中获得更高的段位,请尝试接触Android SDK的内部工作,并开始关注它吧。

2.尽量避免错失恐惧症(FoMo)

Android涉及的面很大,非常大。通常情况下,我们无法在一两个月的时间完全吃透这个系统。学到的越多,我们就越发认为自己无知。作为一个初学者,有不知道的东西以及对不知道这件事感到恐惧是非常正常的。

然而,我们还是需要尽可能避免这种情绪。事实上,我们需要做的是学以致用,先要了解我们开发App真正需要学习的东西,然后再缓慢扩展视野。

3.习惯阅读更多的代码

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

但这不会增加你的知识,也不会帮助你的成长。我们应该多去查看其他开源应用程序和库,多去学习。每天30分钟的代码阅读是一个很好的开始,长此以往,你会惊奇地发现已经掌握了很多不了解的新事物。

4.考虑学习更多的语言

学习西班牙语或中文或许对开发作用并不明显,但新的编程语言可能就不一样了。作为开发者,我们需要随时随地了解行业变迁,而不是仅将自己仅限于Android。

而了解外部环境的变化,不仅能拓展我们的视野,还将帮助我们显著提高Android开发技能。我们需要下决心每年至少学习一种新的编程语言,而且不要蜻蜓点水一般,要尝试进入语言的深度以及它在内部的工作。

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

从长远来看,我无法判断这对于你的Android开发职业而言重要性如何。然而,遇到关键编程问题的时候,设计模式总能帮你构建一套优雅的解决方案。

我们还需要与其他开发人员在同一频道上,以便他们在讨论使用Factory Pattern、Decorator Pattern、和Façade Pattern的时候,我们知道他们在说什么。

让自己给自己一个承诺吧,每周学习一种新设计模式。

6.给开源贡献代码

如果您开发了一些有用的东西,并在自己的应用程序中使用了它,那么请考虑开源,因为你将会在这个过程中学到很多东西。

如果你没有可以开源的项目,那么也可以考虑查看其他有趣的开源项目,尝试做一些修复错误、改进文档或者测试的工作。即使是一些看上去微不足道的贡献也将有助于项目的发展,保持项目的稳定运行。

7.让你的IDE更加得心应手

接下来,我们还需要开始花更多的时间了解正在使用的IDE——Android Studio。实际上,它的潜力比你想象的要大得多。IDE中隐藏了许多酷炫的功能和快捷方式,而大多数开发者并不知道甚至从未尝试去探索过这些功能。

慢慢的,我们可以养成一个挖掘工具亮点的习惯,进而改善工作流程、提高生产力。

8.是时候正确构建你的应用程序了

大多数时候,我们的代码都集中在Activities或Fragments中,这让它们变成了几乎不可能维护和测试的怪兽。

构建App时采用一个诸如MVP、MVVM、Redux这样的良好的架构,是非常重要的。开发时,我们需要注意将应用程序的业务逻辑、视图交互和数据交互分为不同的层次,使其易于管理和测试。

9.学习如何写出干净的代码

这一点不容忽视。在我们身边,有大量连代码最基本的整洁度都无法保证的开发人员。

对大部分开发者来说,学习的Java和Android编码准则并不难,也花费了不了太多时间。学习写出干净的代码并非一次性任务,而应当是开发者的程序生涯的质量改变。

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

为了让自己比其他开发人员更有优势,并开发出看起来很棒的应用程序,我们需要开始学习一些Android开发的最佳实践。而往往这些实践能帮助我们成为更好的开发人员,让我们开发的App脱颖而出。

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

尝试正确、有效地利用你的时间。当你上下班的时候,在健身房锻炼,开车,烹饪的时候,你天才般的大脑并没有做太多的事情。你可以通过利用这样的时间来聆听一些资源丰富的Android相关的频道,并尽可能地使你的大脑占有有用和翔实的东西。

12.不要老是用程序化的思路做事

这种情况不仅发生在我身上,而且也发生在我开发同事的身上。在开始工作之前思考一下是非常棒的做法,但过度的思考和分析也会导致不必要的混乱,拖延和焦虑。

所以我们最好的选择是选择并做好现在看上去很正确的选择,并保持自己随时适应不断变化的情况的能力。

13.尝试了解设计

在大众的认知当中,开发者的工作重心应当是学习如何更好的书写代码,而我也非常理解这种认知。但是,如果想成为一名全能的开发人员,我们还应该每天花时间学习和了解UI和UX设计。

相信我,这将完全改变我们过去的编程方式。与团队中的UI和UX设计人员进行充分交流,将非常有助于我们更好地了解应用程序设计。

14.追求完美

完美是一个主观的词汇,更多时候这个词应当针对自己而非他人。而作为最好的开发者,我们当然应该尽可能开发出最棒的产品,并且总是如此。

别将就,不要为了工作而工作。要热爱你正在做的工作,要做得比别人更好。坚持下去,我们就能在这场长跑中取得胜利。

15.坚持是成功的最大补给

如果您想成为Android开发大牛,你需要坚持。

虎头蛇尾从来都不会带来什么实质性的改变,我们需要的是坚持。坚持朝着你梦想中的方向前进,并矢志不渝。

从0到1总归是简单的,但是否能够长时间保持激情和奉献精神,才是我们努力不白费的关键。

16.从小切入,缓慢扩张

作为开发者,把复杂的问题分解为小而简单且独立的问题之后,我们才能轻松、快速地理解和解决问题。

不要因为项目太大或者过于复杂而变得不知所措。相信自己,一旦你在正确的轨道上,一切都可以解决。小口插入,然后才能庖丁解牛。

17.保证总有一个练手项目

有一个练手项目能够极大的改变你此前的认知。因为你一旦有了一些新的思路和解决方案,就可以在这个项目中去尝试和实践。

试想,你发现一个有趣的Android库,你不用在文档和API琢磨时间,直接杀去实践是一种何等美妙的体验。我相信,这也将使你对这个库的了解更加深刻。

18.更多测试

对于测试的重要性,强调无意义。我们需知道的是,在进行详尽测试之前,我们都不能确定功能是否开发完毕,而测试将帮助你重塑对代码的自信。

不要误以为测试是一个可选项,而就此忽略了测试,你以后的日子会很痛苦的。记住,没有测试编写的代码很快就会成为你的坑。

19.考虑采用TDD

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

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

测试驱动的开发是在编程过程中管理恐惧的一种方式。恐惧让你犹豫,恐惧让你沉默,恐惧让你逃避反馈,恐惧使你脾气暴躁。

20.设置正确的自动释放机制

作为开发人员,应该让自己尽可能少地参与那些可以自动化的事,比如应用程序质量检查和发布。

你应该使用CheckStyle、PMD、Lint、FindBugs等工具自动完成质量检查机制。在合并这样的重大调整之前,所有单元和仪器测试都必须跑一遍。

当所有这些检查通过时,你就可以将APK发布到Play Store,或以任何其他方式分发(如Crashlytics Beta)。

21.拥抱反应式编程方法

如果你想提高你的Android开发技能,你一定要考虑采用反应式的方法,这将迫使您以完全不同的方式思考您构建的应用程序。

反应灵敏的方式肯定会帮助你更快地编写交互式应用程序,并使你的开发生活更轻松又有趣。

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

Kotlin目前是Android开发中最受人关注的语言之一,也是开发Android应用程式的正式支持语言,这种易于使用的语言为Android的世界带来了新鲜空气。

对那些厌倦了老套、冗长且容易出错的Java的开发者来说,Kotlin是Android开发行业的新曙光。尝试一下,你一定会在你的发展生活中找到失去的幸福。

23.参与更多的社交活动

我们的开发人员往往很内向,喜欢和我们的电脑坐在一个角落。

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

24.熟悉键盘快捷键

尽可能使用键盘快捷键而不是鼠标,几乎每个要在Android Studio中执行的操作都有键盘快捷键。

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

25.每周至少了解一个新Android产品

在Android的巨大世界中,有很多东西要学习和理解。当你进入这个世界时,最初可能会压倒你。但是,如果我们让自己每个星期学习一件新产品,事情将变得容易很多。

列出你不知道的所有事情,为他们分配先后顺序,每周解决一个陌生面孔。几个月后,你会发现已经走得很远了。

26.用自动化节约时间

我们的工程师,因为出生而懒惰,总是试图找到一个简单的方法来做一个无聊的工作。

所以,如果你需要每天做一些重复和无聊的事情,那么请考虑自动化。累积下来,它节省你相当多的时间。而你,则可以把这些时间放在其他生产和有用的事情上,减少你的焦虑。

27.考虑运行两个版本的AndroidStudio

我们需要确保所有重要的事情,都有一个稳定的Android Studio版本来执行。同时,我们还要考虑保持安装最新Android Studio的金丝雀或测试版本。

有时候,相比前代,新版本往往有许多新的和令人兴奋的功能,你也应该对此很有兴奋感。

28.经常审核您所有的第三方库

大多时候,我们都喜欢使用库,这也是非常好的。但是同时,我们还要养成检查三方库的习惯,需要定期检查并删除不再需要的第三方库。

如果您仅使用特定库的一小部分,那么请考虑提取该部分,而不是使用整个库。偶尔的检查也将帮助您更新更快的更新库。

29.学习重构代码

重构代码,不要试图一次完成。这样做会让你陷入陷阱,而且无法逃脱。

我们应该考虑重构现在工作需要的代码库的部分,然后在需要时慢慢地扩展到其他部分。另外,要先编写测试用例,然后再处理你怀疑的可能会影响现有功能的任何代码。

30.始终在低端设备上开发和测试

如果你想开发一个专业的应用程序,别在高端设备上测试。一般来说,我们开发人员拥有高端的旗舰产品,并用于开发和测试应用程序,但这是你应该避免的东西。

尝试在市场上找到最便宜的和最低端的设备,并使之成为专门的开发测试机。在这些设备上,你会发现此前并不了解的App缺陷。

31.购买你能买得起的最好的工作机器

千万不要购买低端工作机器,这会让你的开发变得很蛋疼。

请考虑使用Mac进行开发,你会爱上它的简单性和稳定性。

现在,如果您正在购买一台MacBook,请选择最高配。几百加元不会伤害你,你会永远感谢你做出这个决定。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,510评论 25 707
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,599评论 18 139
  • 文/萧让 上午 我垛馅 姥姥和面 姥姥擀面皮儿 我包饺子 姥爷烧锅 我和姥姥 姥爷说着话 水烧好了 下了饺子 我们...
    萧让听雪阅读 336评论 0 2
  • 有一天,法慧大师和两位弟子在经堂里诵经,突然听到"嗡——嗡——"的叫声。小和尚叫流水,他悄声地对师兄说:"师兄,你...
    金色童话阅读 565评论 0 0
  • 明天就要大暑,一年中最炎热的夏季时节。出生在南方的我,最怕的是冬天的严寒,而非酷暑。但是近几年的上海,夏天的高温让...
    柚子花开Renee阅读 231评论 0 0