Kotlin从基础到实战
上QQ阅读APP看书,第一时间看更新

前言

为什么要学习Kotlin

Kotlin是JetBrains公司开发的基于JVM的语言。该语言完全兼容Java的特性,并且已经正式成为Android官方支持的开发语言。它可以编译成Java字节码,也可以编译成JavaScript字节码,方便在没有JVM的设备上运行。它比Java语言更简洁、更安全、易扩展,能够静态检测常见陷阱,也可以应用于Android开发、JavaScript开发、服务器端开发的程序中。由于从实际使用效果来说,Kotlin语言比Java语言的开发效率高并且使用更安全,因此Kotlin语言的应用越来越广泛。

如何使用本书

本书是一本Kotlin基础入门书籍,使用IntelliJ IDEA作为开发工具。作为一种技术的入门图书,最重要也最难办的一件事是将一些非常复杂、难以理解的思想和问题简单化,让初学者能够轻松理解并快速掌握。本书先对每个知识点都进行了深入的分析,并针对每个知识点精心设计了相关案例,然后模拟这些知识点在实际工作中的运用,真正做到了学习过程的由浅入深、由易到难。初学者在使用本书时,建议从头开始循序渐进地学习,并且反复练习书中案例,以达到熟能生巧。

本书共分为13章,接下来分别对每章进行简单的介绍,具体内容如下。

• 第1章主要讲解Kotlin语言的特性与IntelliJ IDEA工具的安装。通过对本章的学习,初学者能够掌握IntelliJ IDEA的安装过程,动手实现属于自己的第一个Kotlin程序。

• 第2章主要讲解Kotlin语言的基本语法,不论任何一门语言,其基本语法都是最重要的内容。在学习基本语法时,一定要做到认真学习每一个知识点,切忌走马观花。

• 第3章主要讲解函数,包括函数的分类与使用。通过对本章的学习,初学者可以了解函数的定义以及如何使用不同类型的函数。

• 第4章主要讲解Kotlin语言最重要的特征——面向对象。本章内容以编程思想为主,初学者需要花费很大的精力来理解本章所讲解的内容。

• 第5~7章主要讲解Kotlin中的集合、Lambda编程以及泛型,包括集合中的List接口、Set接口、Map接口、Lambda表达式、高阶函数、内联函数、泛型的约束、协变与逆变等,这几章的内容非常重要,在后续Kotlin程序开发中会经常用到,因此,要求初学者一定要熟练掌握这部分内容。

• 第8章主要讲解Gradle,包括如何创建Gradle程序、Gradle的任务、Gradle的依赖、Gradle的扩展。通过对本章的学习,初学者可以完成简单的Gradle程序开发。

• 第9章主要讲解协程,包括协程的挂起、主协程、协程取消、管道等。通过对本章的学习,初学者可以掌握协程的基本操作与使用。

• 第10章主要讲解坦克大战游戏的开发,该游戏总结了第1~9章的知识点。通过对本章的学习,初学者可以熟练运用Kotlin中的基础开发技术。

• 第11~13章主要讲解DSL、Kotlin与Java互操作以及时钟项目,包括DSL的使用、Kotlin与Java相互调用、Kotlin与Java互操作对比、使用Kotlin语言实现一个JavaScript语言的时钟项目。通过对这3章的学习,初学者可以掌握Kotlin与Java代码如何进行相互调用以及如何运用Kotlin语言实现一个JavaScript语言的项目。

在上面所提到的13章中,第1~3章主要是针对Kotlin的一些比较基础的知识进行详细的讲解,这些知识多而细,要求初学者深入理解,奠定好学习后面知识的基础。第4~9章中每个小节的知识点后都会提供一个实用的案例,并在案例后面对其进行详细的分析,初学者可以结合案例后的分析对案例进行学习,每一个案例都需要动手实践。第10章主要是总结第1~9章的知识点,实现了一个坦克大战游戏的开发。初学者学习本章时要求动手实现该游戏的全部效果。第11章的内容了解即可,第12~13章主要讲Kotlin与Java语言的交互以及如何运用Kotlin语言编写一个JavaScript语言的时钟项目,这两章的内容比较重要,需要初学者掌握并可以灵活运用其中的知识。

在学习本书时,首先要做到对知识点理解透彻,其次一定要亲自动手去练习书中所提供的案例,因为在学习软件编程的过程中动手实践是非常重要的。对于一些非常难以理解的知识点也可以选择通过案例的练习来学习。如果实在无法理解书中所讲解的知识,建议初学者不要纠结于某一个知识点,可以先往后学习,通常来讲,看到后面对知识点的讲解或者其他小节的内容后,前面看不懂的知识点一般就能理解了。

致谢

本书的编写和整理工作由传智播客教育科技有限公司完成,主要参与人员有吕春林、陈欢、柴永菲、闫文华、高美云、张泽华、吴通、肖琦、伍碧林、马伟奇等,研发小组全体成员在这近一年的编写过程中付出了很多辛勤的汗水,在此一并表示衷心的感谢。

意见反馈

尽管我们尽了最大的努力,但书中难免会有不妥之处,欢迎各界专家和读者来信给予宝贵意见,我们将不胜感激。您在阅读本书时,如果发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。

请发送电子邮件至:itcast_book@vip.sina.com

黑马程序员
2018年10月于北京