系统介绍Kotlin语言基础,从零基础介绍起,并给出相关知识点的简介和网上学习资料索引;围绕程序员学习时关心的话题介绍一些专题应用,以便程序员将基础知识点运用好;为了进一步保证学习后能够参与到软件项目开发中,又组织了项目实例,以项目让读者进入到实践。
帮助读者快速掌握使用Kotlin进行Android应用开发;
不熟悉Java的读者读起来也会非常顺畅,不存在阅读障碍;
熟悉Java的读者理解起来会很透彻,转型非常容易。
前言
Kotlin是在Java废墟上崛起的!Kotlin不仅解决了Java中存在的很多问题,还引入了很多新的特点,并且完全兼容Java,因此对Java程序员来说具有很大的诱惑力。对于想学习Java但还未入门的程序员来说,Kotlin是一门非常好的语言。截至2018年3月,Kotlin在TIOBE上的排名已经跃居第38位,这种迅猛上升的势头可以说明很多问题。
Java是使用范围较广的一门开发语言,虽然它有很多优点,但是仍有不少让程序员抓狂的问题。随着这么多年的发展,Java的各种框架、类库让它越来越庞大,问题的彻底解决变得几乎不太可能。
Kotlin是一门基于JVM的新的编程语言,由著名的JetBrains公司开发。简洁、安全、与Java互操作、天生带有IDE支持,这是官方给出的Kotlin的四大特点。正是这四大特点,深深吸引了程序员,快速得到程序员的青睐。
Kotlin可以开发服务器端程序、网页、桌面应用程序和Android应用,本书只介绍Kotlin的Android应用开发,因为Android应用开发有巨大的市场,需要更多软件开发人员在此领域有所作为。
因为Kotlin是基于JVM的(至少目前是这样),并且完全兼容Java,所以笔者写作时稍不注意就会让读者在阅读时遇到生疏的Java知识点,尤其对于不熟悉Java的读者更是如此。笔者在写作时,做了严苛的限制,不出现分毫对Java知识点的依赖。这种限制,对于不熟悉Java的读者来说,阅读起来会更加顺畅,不存在任何因为生疏的Java知识点引起的阅读障碍;而对于熟悉Java的读者来说,理解起来会更加透彻,学习速度也会更快。
进行Android开发同样需要很多知识储备,它不同于常见的Windows操作系统。同样,笔者在这部分内容的写作上也做了严苛的限制,不会出现分毫对Android知识点的依赖。
上面提到的两处写作限制,对没有Java、Android开发经验的读者来说,阅读起来确实会顺畅很多,但是对于有经验的读者来说岂不是稀释了书中的有效知识点?正如:对于同样的武功,高手和初学者都可以练习,但他们会因自身基础的不同而有不同的感悟。有基础的读者,在阅读第5章和第6章时,应该将注意力集中在对Kotlin知识的运用上,以快速提高编程能力。为了照顾有基础的读者,书中提供了大量示例代码,越是有基础越应该自己动手编写示例。
本书的写作目的是让读者快速掌握使用Kotlin进行Android应用开发的能力。所以,本书既不是全面介绍Kotlin知识点的图书,也不是全面介绍Android开发的图书,而是一本指导读者使用Kotlin进行Android应用开发的图书,也是一本围绕开发实践讲解所需要的知识体系架构的图书,这是程序员学习编程语言的最终目标。笔者在写作时,时刻围绕这个目标,心无旁骛地给读者做介绍,虽然有很多精彩的Kotlin知识点时时吸引笔者去写,但笔者最终还是忍住了。虽然书中某些知识点的介绍貌似有些偏离这个目标,如类的设计、PD软件等,但是这些是软件开发实践中重要的知识点。一个只会写代码而不了解设计的程序员,就像一个只顾低头走路而不看方向的人。
本书的结构简洁:第1章和第2章属于了解性内容,介绍了Kotlin的特点,为使用Kotlin进行Android开发做准备;第3章和第4章介绍Kotlin相关的知识,包括Kotlin的基本语法、接口、类和对象;第5章和第6章是Android开发的重点,介绍Android开发的主要知识体系架构,以及数据操作的各种方式,这两章也是前面介绍的Kotlin知识点的具体应用。
虽然笔者编著了多部计算机开发类图书并已出版,但每次编著图书都感觉是全新的开始,前面的写作经验不敢过多依赖,唯一能够依赖的是笔者多年的计算机软件开发经验和学习开发语言时的思路,相信这些对读者的阅读和学习会有一定的益处。笔者对内容的表述不敢有丝毫懈怠,唯恐让读者误解,加上笔者水平有限,总怀惴惴之心,唯恐误人子弟。好在,代码的执行是严格的,错误的代码无论如何也不会有运行结果。所以,推敲内容的文字表述,严格调试每个示例代码,介绍开发经验和学习思路,这是笔者在写作过程中始终努力去做的。
但愿本书能够让读者的阅读有轻松的感觉,能够让读者真正掌握一门语言去做开发,笔者已经在写作本书的过程中尽最大努力了,当然还需要读者在学习过程中努力,才能真正达到目标。学习可以充实自己,努力可以提高自己,低头做事,抬头看路,坚持正确的方向总会有收获,这本书就是笔者的收获,希望每位读者也能有自己的收获。
郭宝利 于北京
2018.11.9
这源代码在IDEA中打开怎么全是乱码啊?