博主现在是一名大三学生,学习Android一年多时间,一路磕磕碰碰,现在也开始找实习了,虽然不知道结果如何,但是呢,也该总结总结自己所学所想了。第一篇博客,写点什么好呢?有始有终,从第一本书开始吧。
学习Android,我们必须有java基础,这个毋庸置疑,如果觉得自己java基础不太好的同学,又想快速提高java能力的话,我推荐《Head First Java》这本书,虽然是好几年前的书了,但是经典,Head First系列的书籍都很不错,语言风格都是幽默诙谐,给人继续读下去的欲望。
和大多同学一样,初学者喜欢买从入门到精通,当然Android也有这本书,我的第一本书就是它,但是呢,真像很多人说的,容易让你从入门到放弃,这本书讲的内容很泛很杂,可能会说优点是知识点全,但我看来,对于初学者来说,会越看越困,越看越没信心。另外,它还有一个致命的缺点,这本书版本太陈旧了,如果我们想跟上时代的步伐,最低应该从Android5.0学起吧,5.0有个翻天覆地的变化时加入了Google自己的设计思想material design,另外工具应该是Android Studio,而不再是Eclipse,可能这些对于有经验的Android程序员来说无所谓,但对于初学者来说,我觉得是至关重要的。
接下来,我根据自己阅读经历,向大家推荐优秀的各阶段的书籍(我并没有推销的意思,都是自己的经历,希望大家少走点弯路)
1.我推荐初学者的第一本书是《Android编程权威指南第2版》,这本书原著是美国作家写的,有中文版的。别看它名字高大上,其实是我所读这么多Android书籍中最亲民的,所以适合初学者。这本书基于Android5.0,使用Android Studio,通过这本书,读者可以快速掌握Android Studio的使用,也可以快速入手第一个项目的构建。这本书细节做得很好,基本每一步都写得清清楚楚,从怎么操作Android Studio,怎么新建项目,怎么写布局,怎么关联Activity等等,另外,这本书包含了所有源代码,每一步都写得很详细,因此我们不需要另外去找它的Demo源码,这并不是说这本书用源代码来填充篇幅,重复的语句它不会多说,我觉得更多原因是作者考虑到了初学者的方方面面,不想读者遇到凭空出现的某段代码进而不知所措。另外,不得不说,这本书排版也是很优秀的,纸张很护眼,看起来很舒服。
2.第二本书呢,我推荐《Android群英传》,是由知名博主徐宜生所写。这本书呢就不像上一本那么体贴了,尤其是前面几章,没有Android基础的话,很多时候会不知所措,一脸懵逼,所以这本书是需要有一定基础以后再去阅读,这本书demo代码不是太全,需要读写自行到github去找源码。这本书优秀的地方在于,它讲清楚了很多滑动,绘图,动画等方面的知识,也拓展了很多,比如性能优化,后端云服务,materia design的设计。
如果完全看完前两本书的话,我相信,你已经具备了一定能力了,接下来介绍一些进阶书籍。
3.第三本书,我推荐《Android开发进阶 从小工到专家》,由知名博主何红辉所写。到了一定阶段,我们就应该去学习下一些设计原理了,这本书就是引导我们如何去学习知识点的内在原理的,当然,这本书讲的就更抽象了,如果觉得阅读有难度的话,希望多看几遍,实在不行,可能是基础还不太牢,建议先回去复习。这本书通过讲解源码的形式,为我们剖析原理实现,比如,service,content provider,view的绘制,动画原理,多线程,数据库,网络等等。我现在也面试了几次,才发现这本书讲的很多知识点都是面试官喜欢问的,所以建议同学们认真学习这本书,这样我们才能真正摆脱初学者的称号。
4.接下来推荐的一本,可能是要求比较高了,需要我们有大量的编码经验,或者有工作经历的程序员,但是呢,我们也可以先学习下,有个大概的概念在脑海中,之后遇到的话在细细品味。它是《Android 源码设计模式》,我目前也在学这本书,设计模式不用多说,到了一定程度,我们自然而然就需要了。这本书可以和《Android开发进阶 从小工到专家》同时学习,也不要纠结所有的设计模式,开始可以先学会常用的几个。
5.还有的话,工具书推荐,《Android 群英传 神兵利器》,是徐宜生博主的第二本书,日常可以当做工具书使用,里面有很多零散的知识点,我们可以选择的看。另外,如果比较注重学Android网络的话,我目前还没找到一本比较好的专门讲Android网络的书籍,《精通Android网络开发》,倒是可以作为工具书,这本书很厚,几乎都是大片大片的贴代码,不过知识点还是很全的,见仁见智吧。
写了这么多书,可能初学者有点害怕了,说实话,我看过的书还不止以上所列的,去掉了一些我认为不好的书籍。当然初学者也不必纠结,毕竟,不是说几个月就能速成的,慢慢来吧,建议多实践,多照书上的demo做,到一定能力了,就多看下源码,自己写个app。 ps:以上所推荐的书籍都是我的阅读经历,当然肯定还有更多优秀的书籍,欢迎大家补充。给初学者更多的建议,很有必要。
