Android各层推荐开发书籍及参考资料

转自:http://blog.csdn.net/fancylovejava/article/details/8657058

Android系统按照架构来说一共分为六个部分,因此按照自己的感受推荐一下各个部分适合的书籍,不喜勿喷。

1.Android Application 《Android Developer 文档》、《Pro Android》、《Professional Android Application Development》、《Google Android SDK开发范例大全》、Google IO Android 文档s

2.Android Application Framework

《深入理解Android 卷I》、《Android技术内幕》

3.Dalvik Virtual Machine

《Inside JVM》、《google dalvik 文档s》

4.JNI & Native Libraries

资料很少、看源码吧

5.Core Libraries

资料更少、看源码吧

6.Linux Kernel & Driver 《深入Linux内核架构》、《Linux设备驱动开发》、《Linux Kernel Development》、

编程语言主要涉及到下面三种:

Java:《The Java Programming Language》、《Core Java》、《Java夜未眠》、《Java Threads》、《Java编程思想》

C++:《The C++ Programming Language》、《C++ Primer》、《C++编程思想》

C:《指针和C》、《C语言程序设计》、《C Primer Plus》

总之,对于开源软件来说,在熟悉了整个框架和各个部分的功能之后,最好的方式就是学习源码。

源码不断在更新、在修改设计,书籍会过时,但是经常跟踪源码不会过时,也能随时获知最新的功能。

PS:因为本人没有涉及过游戏开发领域,因此以上各部分的推荐书籍主要是涉及非游戏开发的参考书和资料,谢谢。

Android开发书籍推荐:从入门到精通系列学习路线书籍介绍

很多时候我们都会不断收到新手的提问“Android开发的经典入门教材和学习路线?”、“Android 开发入门教程有哪些推荐?”等类似的问题,我们不断重复回答这些问题,这让我们萌生了做《 Android开发书籍推荐:从入门到精通系列学习路线书籍介绍》的想法,整理收集开发大牛的学习经验,以便让我们少走弯路,更快速成长。希望这个系列可以成为大家手头应对新手的好答案。

Diycode整理推荐:本系列由@jixiaohua 发起,@d_clock同学负责。

JAVA入门书籍:

《 Introduction to java programming 》

《 Core java 》中文译名《Java核心技术》氛围基础知识和高级特性
《Java核心技术(卷1):基础知识(原书第9版) [Core Java Volume I—Fundamentals (Ninth Edition)]》
《Java核心技术(卷2):高级特性(原书第9版) [Core Java, Volume II--Advanced Features]》

JAVA进阶书籍:

《Thinking in java》
《Effective Java》

汤涛推荐理由:第二本要反复多看几遍,另外Java学习还有个技巧,把各种代码检查工具报告的警告都正确处理掉,一个不漏,保证你成长飞快。

stormzhang推荐理由:公认的Java进阶必备,《Effective Java》是一本实用至上的书,78条建议,满满的干货。

袁辉辉推荐理由:《Thinking in java》:非常经典的Java书籍,有些人觉得这个书不适合初学者,可就是我看的第一个本Java书,或许是当初自学Java没有高人指点,便挑选了经典书来入手。看一本经典书,第一遍能理解个大概,能对整体有一个概念,这就可以了,反复多读几遍,细细咀嚼,每一遍都会有不同的领悟。

1、Android入门:

Android Training
Android API Guides

胡凯推荐理由:入门使用官方的这两份文档是最好不过的了,没有比这个更权威,更准确的Android学习资料了。中文书可以随便买两本入门,配合一起看看就好了。在实践的过程中多参考官方的Sample Code,多按照官方的推荐进行代码实践!

汤涛推荐理由:官方文档,权威专业,入门不二之选,正确的入门姿势,对后续的成长帮助非常之大。

《第一行代码》
《疯狂Android讲义》
《Android4高级编程》 
《Android编程权威指南》

徐宜生推荐理由:全面、基础,内容丰富!基础类型的书只要看一本就够了,用来全面了解知识体系和结构,不用全部精读,只需要有概念即可。

CJJ推荐理由:《第一行代码》作者郭霖,看了郭霖很多博客文章,每一篇都写的很详细,也很用心。这本书大概浏览了一遍,内容浅显易懂,非常适合初学者!
任玉刚推荐理由:《第一行代码》作者郭霖,手把手教你入门,清晰易懂。

袁辉辉推荐理由:《疯狂Android讲义》正是这样一本书,也是我看过的第一本Android书籍,书中并没有深奥的理论,有大量的实例,边看的过程中,边在电脑面前跟着敲了一遍实例代码,最好能做到理解性地敲,而非看一个单词再电脑面前敲一个。我大概花了一周时间把这本书看完并把大部分的实例代码都亲手敲了一遍。《第一行代码》作者郭霖,网上有不少人都推荐这本书作为Android入门书,我大概扫了一遍,知识点较基础,作者文笔不错,书中还穿插了不少打怪涨经验升级的片段,比较风趣。

二、Android进阶

《App研发录》
《Android群英传》
《深入理解Android》
《Android开发艺术探索》
《Android系统源代码情景分析》

袁辉辉推荐理由:《深入理解Android》邓凡平,作者功力深厚,以情景为分支,从framework源代码层面来,深入分析Android系统,非常适合高级应用开发工程师和系统工程师阅读。《Android系统源代码情景分析 》罗升阳,对Android系统的理解非常深,老罗知识体系很全,文章从app/framework/native/kernel等全方面剖析,这是Android界的尽人皆知的大牛,“老罗栽树,大家乘凉”,非常值得一看,前提要是有扎实基础。

stormzhang推荐理由:《Android开发艺术探索》这是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的Android应用开发要点,Android开发进阶值得拥有!

任玉刚推荐理由:《Android开发艺术探索》,作者任玉刚。分析android核心知识点,直指高级工程师进阶要点!(作为艺术探索一书的读者,我也是激励推荐的!!非常赞的一本书!)

《Clean Code》
《Clean Coder》
汤涛推荐理由:进阶是个大话题,只看一两本是不够的,甚至只看书也是不够的,能进阶到什么程度只能靠自己积极主动的积累。 硬要推荐的话,就不说 Android 的书了,市面上几本热门书都可以看看。这里推荐的两本,同一人所写,都有中文译本。教你代码怎么写得更好,以及怎么做一个更职业的程序员。

《HeadFirst设计模式》
《重构:改善既有代码的设计》
胡凯推荐理由:在大量实践Android程序之后,我们需要会分辨哪种写法是更优秀的,通过重构来改善既有的代码,通过设计模式的不断理解实践对既有的框架进行优化,追求更加设计良好的程序。

三、Android底层

《深入理解Android ***》系列书籍,邓凡平老师写的系列。
《Android源码设计模式》,结合设计模式分析源码
《Android框架揭秘》,底层架构的一本好书

徐宜生推荐理由:底层书籍对于应用开发者来说,不用过于深入,主要用于学习设计思路和了解底层设计机制

《Linux内核设计与实现》
《深入理解Linux内核》

袁辉辉推荐理由:Android底层是基于Linux Kernel,所以想成为Android全栈工程师,了解Linux Kernel是非常有必要的。这方面书籍较多,我就列举两本《Linux内核设计与实现》,《深入理解Linux内核》。第一阶段只需加深对Android系统整体性的理解,不必拘泥于每个细节都理解,看完能大抵理解kernel进程的管理和调度机制,内存管理和内存寻址,I/O驱动设备(字符设备、块设备、网络设备)和调度机制等有所了解就够了;如果都理解了也就够了,如果想再深入,可以结合Kernel代码多看两遍。

小结

不管看多少书,更重要的是自己思考,动手重复的实践!也许这个过程很耗时间,但是,这个不断以代码去验证自己的某些猜想的过程,便是技术成长的历程!

本系列书籍推荐方法:

1、按照自身的学习路程,亲自看过的书籍;
2、写一个小小邀请,邀请一些开发牛人给列一个书单,然后综合筛选;
3、整理完毕了,网络上让大家继续推荐,随时更新;
4、你的一些整理方法,总之做出一份优质的推荐书籍就好哈;
5、因为Android发展太快了,所以一些时间特别久远的书籍可能不合适了,比如2012年前出版的一些Android开发书籍已经不适用了;
6、需要有一些适当的JAVA基础书籍推荐。

另一份书籍推荐

一个老鸟发的公司内部整理的 Android 学习路线图

我们邀请了以下的社区牛人参与编写(或者提意见)此系列书籍推荐(排名不分先后):

胡凯:微博@胡凯me,个人网站hukai.me

袁辉辉:微博@Gityuan,个人网站gityuan

汤涛:微信公众号【Android程序员:微信号androidtrending】

stormzhang:微博@googdev

任玉刚:微博@任玉刚Coder

Stay:微博@stay4it

郭霖:

冯建:微博@冯建V

CJJ:微博@AndroidCJJ

hi大头鬼hi:微博@hi大头鬼hi

等Android中文开源社区热心牛人参与书籍推荐:社区名人Android 开发书籍推荐列表

最后如果还有任何建议欢迎大家留言以及通过以下社交工具联系我们。


邮箱订阅:
移动开发者周刊:每日分享一次Android、iOS、Swfit技术干货,目前订阅人数 12800 +;

Github :
code_news:目前Watch10,Star 80,Fork 21;

官方微博:
优雅的程序员D :关注人数 460 人;

管理员微博:
安卓大王子 :关注人数 32100 人;
D_clock爱吃葱花 :关注人数 860;

微信公众号:
“优雅的程序员”微信号:diycodes,目前关注人数 550 人;

Android各层推荐开发书籍及参考资料!!!的更多相关文章

  1. Android各层推荐开发书籍及参考资料

    Android各层推荐开发书籍及参考资料 转自:http://blog.csdn.net/fancylovejava/article/details/8657058 Android系统按照架构来说一共 ...

  2. 根据Android架构分层推荐开发书籍

    Android系统的架构可以分为六个部分.笔者根据自己的体会为大家推荐每个部分对应的精品书籍,不喜勿喷.  1.Android Application <Android Developer Do ...

  3. Android开发书籍推荐

    当你看到这些文字时,那么恭喜你,你可能选择了一个无限可能的方向. Android,Google出品,信誉保证,你值得深入研究. 学习一样新事物或许有多种方式,报培训班,看视频,向高手请教等等,但一本好 ...

  4. Android开发书籍推荐:从入门到精通系列学习路线书籍介绍

    Android开发书籍推荐:从入门到精通系列学习路线书籍介绍 很多时候我们都会不断收到新手的提问"Android开发的经典入门教材和学习路线?"."Android 开发入 ...

  5. (转)Android开发书籍推荐:从入门到精通系列学习路线书籍介绍

    Android开发书籍推荐:从入门到精通系列学习路线书籍介绍 转自:http://blog.csdn.net/findsafety/article/details/52317506 很多时候我们都会不 ...

  6. Web前端开发推荐阅读书籍、学习课程下载

    转自http://www.xuanfengge.com/fe-books.html 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 除了在项目中学 ...

  7. 最强最全干货分享:Android开发书籍、教程、工具等

    最全干货分享,本文收集整理了Android开发所需的书籍.教程.工具.资讯和周刊各种资源,它们能让你在Android开发之旅的各个阶段都受益. 入门<Learning Android(中文版)& ...

  8. Web前端开发推荐阅读书籍

    前言 前端工程师在中国兴起也就5年左右,以前公司里没有专门前端工程师的这个职位,很多前端方面的任务都是由全栈工程师来完成,有的基础一点的后台或者设计的帮助分担一些.但是随着互联网的快速发展,特别是所谓 ...

  9. Android HAL层与Linux Kernel层驱动开发简介

    近日稍微对Android中的驱动开发做了一些简要的了解. HAL:Hardware Abstract Layer 硬件抽象层,由于Linux Kernel需要遵循GPL开源协议,硬件厂商为了保护自己硬 ...

随机推荐

  1. Android <Android应用开发实战> 资源类型<一>

    1.字符串资源>>1.普通字符串>>2.字符串数组 <resources> <string-array name="planets_array&qu ...

  2. Django Session配置

    Django Session的三种存储方式 SESSION_ENGINE='django.contrib.sessions.backends.db' # default 保存到数据库中,依赖 'dja ...

  3. To pack or not to pack – MyISAM Key compression

    MyISAM storage engine has key compression which makes its indexes much smaller, allowing better fit ...

  4. nginx 静态服务器设置

    一.配置Nginx [root@VM_16_15_centos nginx]# cd conf.d/ [root@VM_16_15_centos conf.d]# ll total 4 -rwxr-x ...

  5. SpringMVC+MyBatis 返回时间格式转换的解决方案

    Spring MVC 4.X ResponseBody 日期类型Json 处理 摘自http://tramp-zzy.iteye.com/blog/2090330  2014-07-10 方法一:全局 ...

  6. Codeforces 671B/Round #352(div.2) D.Robin Hood 二分

    D. Robin Hood We all know the impressive story of Robin Hood. Robin Hood uses his archery skills and ...

  7. Epoll模型讲解

    1.流模型 首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象. 不管是文件,还是套接字,还是管道,我们都可以把他们看作流. 之后我们来讨论I/O的操作, ...

  8. 知问前端——Ajax登录

    本文,将使用Ajax登录. 一.服务器端代码 is_user.php: <?php require 'config.php'; $query = mysql_query("SELECT ...

  9. bzoj 2762: [JLOI2011]不等式组——树状数组

    旺汪与旺喵最近在做一些不等式的练习.这些不等式都是形如ax+b>c 的一元不等式.当然,解这些不等式对旺汪来说太简单了,所以旺喵想挑战旺汪.旺喵给出一组一元不等式,并给出一个数值 .旺汪需要回答 ...

  10. 【BZOJ】1270 [BeijingWc2008]雷涛的小猫

    [算法]DP [题解]f1[i]表示第i棵树当前高度能得到的最多果子数 f2[i]表示高度i能得到的最多果子数. 于是有: f1[j]=max(f1[j],f2[i+delta])+mp[j][i]; ...