前 言
写作背景
2020年了,Android开发的热度怎么样了?学习它,对就业和薪资提升帮助大吗?我想这是大多数人最关心的问题。
一门技术在职场中的需求热度,通过大型求职招聘网站可以很容易分析出结论。大体可以这样说,移动端开发作为软件生态的一部分,从来都有很强的需求。在2017年之前,Android原生开发曾一度进入低谷,因为很多团队都选择基于JavaScript的跨平台开发框架。但是,这些框架也存在一些先天缺陷,主要是由于Android与iOS的巨大差异造成的(这两大系统不可能统一,为了商业利益,必须互相制造壁垒)。事实已经证明了一点,跨平台开发始终绕不开原生开发。所以,2017年之后,Android原生开发重新被重视,甚至有国外公司完全回归了原生开发。当前,跨平台开发依然在迅速发展,但是始终绕不过原生开发,而且有些功能只能用原生开发实现。所以,要进行移动开发,必须学习原生开发!
本书作者有15年以上软件开发实战经验、5年以上IT实训教学经验,深入了解各种技术、架构、设计模式,对IT教育有丰富的体验和深入的思考,对各种技术善于以通俗易懂的语言进行透彻讲解。
本书导读
本书是《Android 9编程通俗演义》的姊妹篇,作者在其基础上修正部分错误,改进多处设计,将开发语言由Java升级为Kotlin,紧紧追赶Google的步伐。
“我有一个梦想,让天下没有难学的技术!”本书与《Android 9编程通俗演义》一书的写作风格一致:通俗易懂,具体直观,注重实践,以为读者节省脑细胞作为终极目标。
我一直希望能写出一本让读者轻轻松松学编程的书,如果能把学习当作一种休闲方式,那该是多么美好的事情!当然了,众口难调,一本书的风格不可能满足所有人的口味。在本书创作中,作者已尽量做到照顾更多的人,尤其照顾基础差的人,并且尽量少说黑话,努力使它成为一部不那么“反人类”的作品,相信大部分人都很容易接受这种风格。因为从上一本书的读者反馈看来,效果很不错!
本书应该怎么去阅读?答案就一句话:“看就行了!”
如果你是一个勤快人,可以边看边跟着做;如果是一个懒人,那么仅仅停留在“看”上。你可以躺着看、坐着看、趴着看,最好不要走路看,因为对眼睛不好。
本书翔实地讲述一个Android App的实现过程,并对很多基础知识进行了专门补齐。实现App的每一步都有截图,你不用写代码,也能看到结果。所以,阅读体验是很轻松的。
本书从头至尾讲了一个故事:开发一个Android版高仿QQ App的故事。本书的内容结构是这样的:
? 第1章:Kotlin语言快速入门。
? 第2~4章:Android开发准备与初步体验。
? 第5~14章:Andorid基本功能与界面开发。
? 第15、16章:实现仿QQ App单机版。
? 第17~19章:Android多线程、网络开发。
? 第20章:实现仿QQ App网络聊天版。
示例源码下载
第14章之前讲解基础知识,示例项目为 FirstCotlinApp,其Git仓库地址是https://gitee.com/nnn/FirstCotlinApp.git。
第15章和第16章的项目为无网络通信的仿QQApp,项目名为QQApp,其Git仓库地址为https://gitee.com/nnn/QQAppCotlin.git。
第20章的项目为带网络通信功能的仿QQApp,是从QQAppCotlin改进而来的,因此项目名和包名皆与QQAppCotlin相同,其Git仓库地址为https://gitee.com/nnn/QQAppCotlinHttp.git。
另外,为了模仿QQApp中的树状显示效果,作者还创建了一个开源项目RecyclerListTreeView,托管于GitHub,现已被多人用于商业项目。在本书中亦有对其用法的详细介绍,地址为https://github.com/niugao/RecyclerListTreeView。
对本书内容或各项目有任何疑问,可在gitee或GitHub中的项目仓库页面直接留言,也可在作者的CSDN博客https://blog.csdn.net/niu_gao/中留言。
读者对象
? 了解Java语言,想学习Kotlin语言和Android开发的初学者
? 想快速了解Android开发模式的资深开发人士
? 有一定Android开发基础,想进一步提升实战能力的开发人员
? 需要工程教育实践案例的高校教师
致谢
首先感谢各位读者,你们的肯定给予我笔耕不辍的信心和动力!其次要感谢清华大学出版社夏毓彦编辑的大力支持和指导,让我可以专注于内容,充分体验作为作者的乐趣。再次感谢我的家人和朋友,是你们的鼓励与支持给了我动力。最后感谢我自己,耐住寂寞,坚持不辍,能为世人留下一两部作品,真的感觉人生没有虚度。
牛 搞
2020年3月