这是一篇译文,原文地址Resources every Android developer must know,在译文开头,推荐两篇同样适合于Android开发者阅读的资源列表Android开发者网址导航和StackOverflow Android Tag,翻译这篇文章的原因是最近在知乎上收到很多关于如何学习Android开发、Android学习路线等雷同的问题(Android在大学并不算是一门流行的课程,所以存在这样的疑问很正常),没有时间一一回复,索性将很久之前看到的这篇文章翻译过来,希望能够帮助到有需要的Android开发者。
Android平台持续疯狂地增长,越来越多的开发者进入了Android开发者阵营,如果你在2013年才开始做Android开发,你将是一个幸运的人,因为这个平台在过去几年里变得越来越成熟,同时网络上开发资源的数量似乎势不可挡,这篇文章就是其中的一份子。
这篇文章适合于初学者和有一定经验的开发者。
你可能觉得,都到2013年了,通过看书来学习一个新的开发平台也太过时了,你的想法有可能是对的,但是你还是应该做一件事情:去阅读Jeff Atwood列出的很多程序员没有读过但你应该读的书籍列表
对于Android开发入门,我墙裂推荐下面这两本书:
Mark Murphy写的The Busy Coder’s Guide to Android Development,并不是因为这本书有2000多页,对Android介绍得足够全面才推荐它,而是因为它会持续更新(大约每两个月会更新一次),这是在Android SDK频繁更新的情况下特别值得阅读的一本书,本书作者还会定期举办问答活动。同时书中的示例代码都托管在了github上。
Juhani Lehtimäki写的Smashing Android UI,一本任何关心UI设计的Android程序员都值得阅读的书。
在开发你的第一个Android应用之前,用心阅读和学习Android Design,特别是下面这些主题:
设备和显示
触摸反馈
尺寸和网格
图标
另外请查阅下载部分,包含模板、图标和控件的源文件、Action Bar的风格和样式图标等等。
浏览了上面的资源之后,就可以开始写程序了吗?NO,你还需要阅读下面这些主题:
用户体验和UI最佳实践(必读)
体验优化最佳实践
高效显示位图
Android动画效果(墙裂建议阅读开源项目nineoldandroids)
Android SDK示例程序
很多Android核心架构工程师、优质开发者和专家会经常会在stackoverflow上回答问题,这是一份StackOverflow上优质Android开发者名单
许多博客提供了大量的Android开发方面的信息。
Gyuri Grell的Android开发者周报,一个评价很高的关于Android开发新闻的邮件列表,每周一次更新;
Android官方开发者博客,博客中的所有文章都值得一读,很多文章都是非常有营养的,比如:避免内存泄露、Android应用内存分析等;
Romain Guy,一个Android核心框架工程师Romain维护的博客,在你认为自己熟悉Android开发之前,请确保你阅读过该博客中的Android应用性能优化系列课程,另外值得说明的是:Romain还是一个伟大的摄影家;
Android动画框架作者Chet Haase的个人博客;
Mark Murphy的个人博客
Cyril Mottier’s的个人博客,里面有很多有深度非常值得一读的文章,比如:Listview技巧之扩大点击区域、Tweeted开发技巧、Google地图Android API V2.0的乌托邦、快速启动Android应用等等;
Mark Allison的个人博客
Daniel Lew的个人博客
虽然Goolge+没有成为一个社交网络,但它是一个Android开发方面重大的消息源,作为一个Android开发者,下面这些Google+账号非常值得关注:
Tor Norbye (ADT)
Dianne Hackborn
Romain Guy
Chris Banes
Roman Nurik
Nick Butcher
Adam Powell
Rich Hyndman
Cyril Mottier
Paul Burke
Jeff Gilfelt
Jake Wharton
同时考虑加入一些Google+圈子,比如:
Android开发圈
Android设计圈
阅读优秀的开源代码是非常棒的一件事情:
Google I/O,如果你喜欢拷贝/粘贴代码,这里面很不错;
Chris Banes开发的photup
Reto Meier开发的android-protips-location
Android官方在Github上开源的一系列项目Android source code.
下面是一些非常有用的开源项目:
ActionBarSherlock
ViewPagerIndicator
NineOldAndroids
Universal-Image-Loader
UrlImageViewHelper
Android-BitmapCache
DiskLruCache
更多Android方面的开源项目请到Github上搜索关键字"android",另外,Android APPDevAppsDirect收集了很多开源组件
每一年的Google I/O大会中的视频都值得一看:
2012
2013
2014
这么多资源看起来会让作为一个初次接触Android开发的你压力山大,不过不要紧张,上面的这些连接只有一部分是对Android初学者有用的,很大一部分是需要你有一定开发经验之后才能阅读的。
下面提供一些快速消化本篇文章的技巧:
首先:读书,为什么要读书呢?因为通过读书你可以涉猎到与Android相关的所有基础知识;
通过RSS订阅博客和StackOverflow中有价值的答案;
在Google+建立一个Android开发者圈子
啥都不说了,强烈推荐Mark Murphy和JakeWharton,为什么推荐他俩?了解他们的履历或者对Android开发所做的贡献就知道了。
在浏览了上面这些资源之后,你可以考虑加入到Android开发者阵营啦,但忘记告诉你一件事情,那就是你的工作需要和UI工程师配合完成,因为一个优秀的APP需要非常好的用户体验。