Android 开发者必知的开发资源
英文原文:Bongzimo
翻译: ImportNew-黄小非
译文链接:http://www.importnew.com/3988.html
Android 开发者必知的开发资源
随着Android平台市场份额的持续猛增 ,越来越多的开发者开始投入Android应用程序的开发大潮。如果您是一位2013年刚刚入行的Android开发新兵,恭喜你,因为这个平台已经在过去几年里变得愈发成熟了,绝对值得住你全情投入。目前来看,Android现成的开发资源早已经汗牛充栋,我们这篇帖子,就是要在浩如烟海的资源中挑出最重要的那些,呈现给你。
本帖对Android开发菜鸟和中级老兵同样适用,因为本帖重点列出了那些最常用的Android开发资源。
推荐书籍
你或许觉得,都2013年了,再去看个什么书来学习Android开发,这方法应该早就过时了。没错,或许你的想法是对的。但是我们还是推荐按照过时的办法来。理由的话,请参看: Programmers
Don’t Read Books – But You Should (作者为:Jeff Atwood)
我推荐下面两本书:
The
Busy Coder’s Guide to Android Development
- 《The
Busy Coder’s Guide to Android Development》(Mark
Murphy著)。这本书最大的特色就在于它的覆盖广度(此书有超过2000页的篇幅),而且更新频率很高(平均每2个月更新一次)。这本书对于快速进化的Andoird平台来说,应当是很具有榜样性质的。作者Mark Murphy本人还设立了常规答疑环节,这样本书的读者就能够向作者直接提问。本书的示例源代码全部都发布在 github上面。所以综上所述,强烈推荐。 - 《Smashing
UI 》(Juhani
Lehtimaki著)。对于那些关注如何做出顶级UI设计的Android开发者来说,此书无可挑剔。
Smashing
UI
developer.android.com 官方开发者站点推荐资源
在动手编写第一个Android应用之前,用心读一读Android
Design章节。尤其是下面的这些文章:
- Devices
and Displays (设备和显示) - Touch
Feedback(触摸反馈) - Metrics
and Grids (度量和网格) - Iconography (图像研究)
同时也请下载Downloads部分的代码,这些代码囊括了Android图标和控件的设计模板,源文件,样式以及无样式图标等等。
那么读完了这些以后就可以开始编程了么?不,最好连下面的东西也一起读:
- Best
Practices for User Experience & UI (a must read) (用户体验和用户接口最佳实践——必读) - Best
Practices for Performance (性能最佳实践) - Displaying
Bitmaps Efficiently (高性能位图显示) - Adding
Animations (also see NineOldAndroids library)
(动画效果——同时也需要看NineOldAndroids库的介绍) - Tools
help (开发工具介绍) - SDK Samples (SDK示例)
StackOverflow 推荐资源
很多Android核心框架的工程师,开发者布道师以及Android开发专家都会经常到stackoverflow.com上助人为乐。以下是关于Android最热门问题的清单。我已经订阅了很多高手的RSS
feeds, 例如:CommonsWare (Mark
Murphy), Dianne
Hackborn, Romain
Guy, Reto
Meier, Trevor
Johns, Roman
Nurik, Adam
Powell (感谢, @remdroid!).
Blogs 推荐资源
很多博客能够提供给你最好最新的Android开发资源
- Android
Dev Weekly (博主 Gyuri
Grell)。这是一个极好的博客,可以为Android新手提供一手的开发新闻。 - Official
Android developers blog。这是一个绝对值得一看的博客档案,里面的很多东西都是干货,比如:Avoiding
memory leaks (如何防止内存泄露), Memory
Analysis for Android Applications (Android应用程序内存分析). - Romain
Guy。来自Android核心框架组工程师的博客。一旦你开始熟悉Android开发了以后,一定要阅读他写的Android
Performance Case Study这篇博文。当然,他的博客还包含一些非技术的内容,比如:great
photographer (优秀的摄影师) - Codependent(博主:Chet
Haase),Chet Hasse是Android动画框架的创始人(Youtube上的Android开发者频道上有Chet Hasse的专题节目DevOps——译者注) - The
CommonsBlog (博主:Mark Murphy) - Cyril
Mottier 的Android博客。这个博客里的博文都很有深度,而且资源非常丰富。最新更新的博文包括:ListView
Tips & Tricks #5: Enlarged Touchable Areas, Tweeted
Android Development Tips, The
Google Maps Android API V2 Utopia, Android
App Launching Made Gorgeous, “Pull-to-refresh”:
An Anti UI Pattern on Android. - Styling
Android (博主:Mark Allsion) - Daniel’s Lew的Coding
Thoughts —— 此博客的作者是美国Expedia公司的著名Android应用 Hotels
and Flights(正式名称叫Mobiata)的开发人员之一,他的博客经常能给出很多有价值的提示。
Google+ 推荐资源
在Google+尚未成为社交网络的时候,它就已经是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 这个人,他是ActionBarSherlock,ViewPageIndicator,NineOldAndroid以及其他很多著名的开源Android库的作者。
同时也请考虑加入Google+上的一些社区,例如:
- Official Android
dev community (Google+上的官方Android开发者社区) - Android
designer community
开源库推荐
以下是一些最有用的开源库项目:
- ActionBarSherlock,作者是Jake
Wharton。这个库在Android 4.0+版本上通过本地action bar实现了action bar设计模式,并通过单个API和主题在4.0之前的版本上做出了一个自定义action
bar实例。 - ViewPagerIndicator,作者同样是Jake
Wharton。Paging indicator组件与ViewPager都来自于Android支持库和ActionBarSherlock。他们的最初原型是来自于 Åkerfeldt的ViewFlow。 - NineOldAndroids,作者是Jake
Wharton。这个Android库使用Honeycomb 版本的动画API,对直到1.0版本的Android系统全部适用。 - Universal-Image-Loader,作者Sergey
Tarasevich。这个库具有强大的功能和灵活性,可支持图像的异步加载,缓存和显示。 - UrlImageViewHelper,作者Koushik
Dutta。 UrlImageViewHelper可以根据一个URL来找到图形,并填充到ImageView里,还能实现对图像的自动下载,存储以及位图缓存。 - Android-BitmapCache,作者Chris
Banes。这是一个很有特色的缓存库,用于缓存Android位图对象。 - DiskLruCache,作者Jake
Wharton。这是一个基于磁盘系统的LRU缓存库,主要针对于Android平台,用Java实现。
在github 上搜索[android]
项目,你可以找到更多的开源库。而且,DevAppsDirect 应用提供了很好的功能,去归纳目前已有的开源视图,组件和工具库。
GOOGLE I/O TALKS 推荐资源
总的来说Google I/O的门票现在已经火爆到了一定程度了,你基本上是不可能买到票去现场的,不过所幸的是,所有Google
I/O的主题演讲都会被放到网上,并且提供PPT下载链接。以下是Goolge I/O Android相关的所有主题演讲的链接:
其中一些主题是我非常喜欢的,如:
- Advanced
Design for Engineers(工程师设计进阶),演讲人 Alex Faaborg and Christian Robertson (2012年) - For
Butter or Worse: Smoothing Out Performance in Android UIs(Butter项目:让Android UI 性能更加流畅)演讲人: Chet Haase, Romain Guy (2012年) - Navigation
in Android(Android导航)演讲人: Adam Powell, Richard Fulcher (2012)。如果你认为Android的back/up按键问题很好解决的话,看看这个视频你就不会这么想了。 - So
You’ve Read the Design Guide; Now What?(学完了设计指南,然后?)演讲人:Daniel Lehmann, Tor Norbye, Richard Ngo (2012) - What’s
New in Android? (Android更新介绍)演讲人:Chet Haase, Romain Guy, Daniel Sandler (2012) - What’s
New in Android Developers’ Tools(ADT更新介绍)演讲人:Xavier Ducrohet, Tor Norbye (2012) - Memory
management for Android Apps(Android应用程序内存管理)演讲人:Patrick Dubroy (2011) - Writing
zippy Android apps(编写敏捷的Android应用)演讲人:Brad Fitzpatrick (2010) - Developing
Android REST client applications (开发基于REST的Android客户端应用)演讲人:Virgil Dobjanschi (2010)
停!太多了!
如果本贴的内容太过丰富,让你觉得应接不暇,没关系,有些内容是专门针对于初学者的,如果你不是初学者的话,你可以只关注本文中那些相对高级一些的主题。
关于如何有效地选择内容,以下是几点建议:
- 首先,看书。本文一开始就提到了,你应当要看书。看书能为你打下Android开发的牢固知识基础。
- 订阅本文中提到的博客内容,以及stackoverflow的问答内容(通过RSS)
- 在你的Google+账户上创建android-dev开发圈子(当然,由于某些原因,墙内的朋友们可以在墙内的社交媒体或者论坛上建立自己的Android开发圈子——译者注)
Android巨星
在Andoird开发者生态系统的持续繁荣的过程中,逐渐涌现出了许多天赋异禀的巨星级开发人员,尤其下面这两位,他们的工作让其他Android开发者们受益匪浅。他们是:Mark
Murphy 和 Jake
Wharton。
Mark和Jake在Android开源项目上面贡献良多,可以说早已功成名就。如果你有幸见到他们,一定要请他们喝喝啤酒,表示感谢。(不过根据回帖的情况来看,Mark Murphy本人不喜欢喝酒,而有一位叫Chris Bane的网友愿意帮他喝,所以要请客的话可以直接请Chris Bane,并且,如果你一直坚持阅读到了现在,那你就明白感谢Mark Murphy最好的办法就是去订阅他的博客 CommonsWare——原文作者)。
显然,多数Google的Android开发者和设计师也为Android系统做了很多工作。他们中的部分人在本文中也有提到。
结语:
那就到这儿吧。现在你应该了解了不少开发信息和工具了,这一切都是为了让你写出优秀的Android应用程序!好吧,还有一点:你还需要一个优秀的Android UI设计师,不过由于本贴是技术贴,这就不在讨论范围之内了。那么现在,你应该做好充分的准备来开始做你的第一个Android应用了。
如果你觉得我遗漏了哪些优秀的资源,那么就在评论你留言补充吧,我会定时更新这篇文章的内容的。
祝,编码愉快!
英文原文:Bongzimo
翻译: ImportNew-黄小非
译文链接:http://www.importnew.com/3988.html
【如需转载,请在正文中标注并保留原文链接、译文链接和译者等信息,谢谢合作!】
Android 开发者必知的开发资源的更多相关文章
- Android开发者必知的开发资源
推荐书籍 我推荐下面两本书: The Busy Coder’s Guide to Android Development <The Busy Coder’s Guide to Android D ...
- (转载)Android开发者必知的开发资源
(转载)http://www.importnew.com/3988.html 随着Android平台市场份额的持续猛增 ,越来越多的开发者开始投入Android应用程序的开发大潮.如果您是一位2013 ...
- [转][赞]Android开发者必知的开发资源
英文原文:Bongzimo 翻译: ImportNew-黄小非 随着Android平台市场份额的持续猛增 ,越来越多的开发者开始投入Android应用程序的开发大潮.如果您是一位2013年刚刚入行的 ...
- Android开发人员必知的开发资源
developer.android.com 官方开发人员网站推荐资源 在动手编写第一个 Android 应用之前,用心读一读 Android Design 章节.尤其是以下的这些文章: Devices ...
- Android 开发者必知必会的权限管理知识
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/OQRHEufCUXBA3d3DMZXMKQ 导语 本 ...
- Android开发者必知的5个开源库
摘要:过去的时间里,Android开发逐步走向成熟.而无论出现多少Android相关的开发工具,我们每天使用的大量开源库却始终是不可或缺的.这里,向大家介绍的是,这个任劳任怨的大家庭中,最受开发者喜爱 ...
- 开发者必知的8款App快速开发工具
开发者必知的8款App快速开发工具 “我有一个好创意,就差一个CTO……” “原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了.” “APP版本迭代更新,都是企业的一道难关,没有一个一劳 ...
- 每个Android开发者都应该了解的资源列表
前言 这是一篇译文,原文地址Resources every Android developer must know,在译文开头,推荐两篇同样适合于Android开发者阅读的资源列表Android开 ...
- Android初学者必知会的编程规范
在安卓学习中,我们首先需要掌握的就是Android编程的一些规范,只有掌握了这些规范,后面的深入学习才能开展.今天小编在一个Android培训网站上搜罗了一些,Android初学者不得不知的开发规范, ...
随机推荐
- Tab 切换效果
今天写的两个小效果都是为了测试我写的单参函数,结果还是有点成功的~~此处是不是想发表情包! Tab效果很简单,这里我就不赘述了,直接上代码: html代码: <div class="c ...
- webpack学习笔记(4)--webpack.config.js
devtool参数 这个参数控制是否生成,以及如何生成source map,已经在官网的doc说明总结了. 下表总结了各个参数和使用的情况 devtool 构建速度 重新构建速度 生产环境 品质(qu ...
- [洛谷P4887]第十四分块(前体)
题目大意: 给定一个长度为\(n\)的序列\(a\),\(k\),和\(m\)次询问. 每次询问给定区间\([l,r]\),求满足\(l\leqslant i< j\leqslant r\)且\ ...
- 【hihocoder 1312】搜索三·启发式搜索(普通广搜做法)
[题目链接]:http://hihocoder.com/problemset/problem/1312?sid=1092352 [题意] [题解] 从末状态的123456780开始逆向搜; 看它能到达 ...
- HDU5976 Detachment
/* HDU5976 Detachment http://acm.hdu.edu.cn/showproblem.php?pid=5976 数论 等差数列 * * */ #include <cst ...
- 02springMVC理解DispatcherServlet
DispatcherServlet的作用 DispatcherServlet在Web.xml中的配置 上下文关系 DispatcherServlet初始化顺序 DispatcherServlet中使用 ...
- C# string bytes互转
string str = "spike"; byte[] bytes = System.Text.Encoding.Default.GetBytes(str); foreach ( ...
- 安卓项目开发实战(1)--首页顶部菜单BAR实现
从今天開始,我将開始自己手写一个星座运势的项目,星座运势的数据来源採用MYAPI的星座数据,client全然自己实现. 这个系列主要是讲project中主要界面的布局展示和一些项目中的难点解析.因为本 ...
- 第一篇、Android Supersu 权限管理定制,隐藏过滤权限,指定APP最高权限
近期有个需求,在预装ROM的时候,须要权限,可是又不同意全部的应用都有权限,仅仅同意自己的应用有最高的权限(当然没有系统签名情况下). 所以.编译了CM 提取了supersu进行了二次定制,让他进行权 ...
- DOM基础----DOM(一)
DOM(Document Object Model),中文名称为文档对象模型.是处理可扩展标识语言的标准编程接口,主要针对HTML和XML.DOM描绘了一个层次化的节点树,开发者能够加入.改动和移除页 ...