《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf

所需积分/C币:50 2019-05-23 10:05:13 179.65MB PDF
收藏 收藏 1
举报

《Kotlin从入门到进阶实战》_陈光剑
不非 作者简介 CtNE INRIN 陈光剑笔名一剑。资深程序员,现就职于阿里 巴巴集团。有丰富的平台开发经验,曾经参与了 多种平台工具的开发。使用Java、 Android scaa、 Groovy和 Kotlin等语言或工具进行领域建 模、架构设计和工具开发等,积累了大量经验。 善于总结,乐于分享,发布过大量技术文章,并 著有《 Kotlin极简教程》一书,深受读者好评。 本书特色 本书重点介绍了 Kotlin语言的特性,包括可空 类型、安全操作符、面向对象编程、 Lambda表 达式、函数式编程、扩展函数及创建DSL等,并 都给出了丰富的代码示例。 本书详细介绍了编程实践中较为常用的元编 仅供非商业用途或交流学习使用 Kotlin 从入门到进阶实战 陈光剑编著 清华大学出版社 北京 仅供非商业用途或交流学习使用 仅供非商业用途或交流学习使用 内容简介 本书从 Kotlin语言的基础语法讲起,逐步深入到 Kotlin进阶实战,并在最后配合项目实战案例,重 点介绍了使用 Kotlin+ Spring boot进行服务端开发和使用 Kotlin进行 Android应用程序开发的内容,让读 者不但可以系统地学习 Kotlin编程的相关知识,而且还能对 Kotlin应用开发有更为深入的理解。 本书分为14章,涵盖的主要内容有 Kotlin简介, Kotlin语法基础,类型系统与可空类型,类与面向 对象编程,函数与函数式编程,扩展函数与属性,集合类,泛型,文件1O操作、正则表达式与多线程, 使用 Kotlin创建DSL,运算符重载与约定,元编程、注解与反射, Kotlin集成 Spring Boot服务端开发, 使用 Kotlin进行 Android开发。 本书内容通俗易懂,案例丰富,实用性强,特别适合 Kotlin语言的入门读者和进阶读者阅读,也适 合 Android程序员、Java程序员等其他编程爱好者阅读,还适合作为相关培训机构的教材。 本书封面贴有清华大学出版社防伪标签,无标签者不得销售。 版权所有,侵权必究。侵权举报电话:010-6278298913701121933 图书在版编目(C|P)数据 Kotlin从入门到进阶实战/陈光剑编著.一北京:清华大学出版社,2018 ISBN978-7-302-50872-4 I.①K…Ⅱ.①陈…Ⅲ.①JAVA语言-程序设计Ⅳ.①TP3128 中国版本图书馆CP数据核字(2018)第181509号 责任编辑:杨如林 封面设计:欧振旭 责任校对:徐俊伟 责任印制:李红英 出版发行:清华大学出版社 网址:htp:/ww.tup.com.cn,htt:!/ww.wqbook.com 地址:北京清华大学学研大厦A座 邮编:100084 社总机:010-62770175 邮购:010-62786544 投稿与读者服务:010-6277969,C-service@tup.tsinghua.edu.cn 质量反馈:010-62772015,zhiliang@tup.tsinghua.edu.cn 印装者:三河市金元印装有限公司 经销:全国新华书店 开本:185mm×260mm 印张:17 字数:428千字 版次:2018年9月第1版 印次:2018年9月第1次印刷 定价:69.80元 产品编号:080566-01 仅供非商业用途或交流学习使用 仅供非商业用途或交流学习使用 前言 当下,互联网、大数据和云计算迅猛发展,数以百万计的应用程序在服务器和移动端 运行。这些应用程序的开发语言有很大一部分是用软件界已经流行了20年之久的主力编程 语言Java编写的。 毫无疑问,Java语言历史悠久,影响力巨大。历经20多年的发展,它已经成为一门 非常成熟的编程语言,性能强大而稳定。Java虚拟机JM的生态也繁荣昌盛,经久不衰。 但Java也背负着历史的包袱,如它有空指针、语法啰嗦和不支持一等函数等缺点。如果用 一辆汽车来比喻编程语言,Java拥有一个高效而可靠的发动机,但其防抱死刹车系统和动 力转向系统却不是那么可控。Java语言在使用时需要小心检査可能出现的空指针,还要处 理异常、重复生成冗长而单调的样板代码行等问题。 对于开发人员而言,编程语言的防危性( safety)和安全性( security)是至关重要的 要是有一门语言既能继承Java的所有优点及其强大而完备的生态库,又能更加简单、安全 和可控,那真是再好不过了。我们很高兴地看到, Kotlin就是一门这样的语言。 目前,图书市场上 Kotlin相关图书还很少,尤其是实用性强的书更是凤毛麟角。为了 帮助广大的编程人员系统地学习这门开发语言,笔者编写了本书。本书从 Kotlin语言的基 础语法讲起,逐步介绍了 Kotlin的扩展函数、一等函数支持、 Lambda表达式、强大的DSL 支持、运算符重载与约定、无编程、注解与反射等特性,并配合项目实战案例,详细介绍 了使用 Kotlin+ Spring boot进行服务端开发和使用 Kotlin进行 Android应用程序开发的内 容。通过阅读本书,读者不但可以系统地学习 Kotlin编程的相关知识,而且还能对 Kotlin 应用开发有更为深入的理解。 本书特色 1.内容全面,讲解由浅入深,符合学习规律 本书内容涵盖了 Kotlin语言的基础语法和大部分最常用的核心知识点和开发技巧,还 详细介绍了两个实用性很强的项目开发案例。讲解遵循由浅入深、循序渐进的原则,让读 者的学习曲线更加平滑。这样的内容梯度安排和讲解,符合读者的编程语言学习规律,可 以取得较好的学习效果。 2.图文并茂,讲解生动有趣,阅读起来不枯燥 技术学习,有时一图胜千言。本书在介绍知识点时尽量给出简单易懂的图示帮助读者 理解,这使得整个学习过程变得简单、有趣。 仅供非商业用途或交流学习使用 仅供非商业用途或交流学习使用 Kotlin从入门到进阶实战 用代码示例引导学习,可以大大提高动手编程能力 本书非常注重内容的实用性和可操作性,书中重点介绍的知识点都给出了大量代码示 例,并且对代码做了详细的注释和讲解,这样可以大大提高读者实际动手编程的能力。 4.偏重于实战讲解,不涉及不常用的知识 相比笔者的另外一本书《 Kotlin极简教程》,本书内容更加偏重于 Kotlin编程实战讲 解。书中对于 Kotlin基础知识和语言特性的讲解更加精简,重点突出;而对于编程实战中 不常用的一些内容不做过多介绍,比如没有介绍目前不常用的 Kotlin native和实验阶段的 协程( Coroutine)两个专题;但增加了在编程实践中较为常用的元编程、注解与反射,运 算符重载与约定两章的内容。 5.项目案例实用性强,可以提高项目开发水平 本书最后两章配合项目实战案例,详细介绍了使用 Kotlin+ Spring boot进行服务端开 发和使用 Kotlin开发 Android应用程序的相关内容。这两个项目案例可以带领读者体验实 际的 Kotlin应用开发,可以大幅度提高读者的项目实战开发水平。 本书内容 第1章主要介绍了 Kotlin编程语言的基本特性、编程哲学、学习工具,以及为什么要 学 Kotlin和JVM语言生态等内容。 第2章主要介绍了 Kotlin语法基础,主要内容包括变量和标识符、关键字与修饰符、 流程控制语句、操作符与重载、包声明等内容。 第3章主要介绍了 Kotlin的类型系统、可空类型、安全操作符、特殊类型、类型检测 与类型转换等内容 第4章主要介绍了 Kotlin的类与面向对象编程,包括声明类、抽象类与接口、 object 对象、数据类、注解、枚举和内部类等内容。 第5章主要介绍了 Kotlin函数式编程,包括声明函数、 Lambda表达式、高阶函数及 Kotlin中的特殊函数等内容。 第6章主要介绍了 Kotlin扩展函数与属性,以及扩展函数的实现原理和扩展中的this 关键字。 第7章主要介绍了 Kotlin集合类,包括常用的3种集合类、不可变集合类、创建集合 类、遍历集合中的元素、映射函数、过滤函数、排序函数和元素去重等内容 第8章主要介绍了 Kotlin的泛型,包括为何引入泛型、泛型接口、泛型类、泛型函数 类型上界、协变与逆变、outT与iT、类型擦除等内容。 第9章主要介绍了 Kotlin语言的文件Io操作、网络IO操作、执行Shel命令、正则 表达式和多线程编程等相关内容。 第10章主要介绍了怎样使用 Kotlin语言创建DSL,包括什么是DSL、 Kotlin的DSL 特性支持,同时实现了一个集合类的流式 Kotlin dsL实例及一个SQL风格的集合类DSL 实例。 II 仅供非商业用途或交流学习使用 仅供非商业用途或交流学习使用 前言 第11章主要介绍了 Kotlin的运算符重载与约定,包括什么是运算符重载、重载二元 算术运算符、重载自增自减一元运算符、重载比较运算符及重载计算赋值运算符等内容 第12章主要介绍了 Kotlin元编程、注解与反射的相关内容,包括元编程简介、声明 注解、使用注解、处理注解、反射、类引用、函数引用、属性引用、绑定函数、使用反射 获取泛型信息等内容。 第13章介绍 Kotlin集成 Spring boot服务端开发,首先用 Spring boot快速开发一个 Restful hello world示例,然后给出了一个完整的图片爬虫Web应用项目案例。 第14章介绍如何使用 Kotlin进行 Android开发,首先给出了一个简单的 Kotlin版本的 Hello World android示例程序,然后详细介绍了用 Kotlin开发一个电影指南 Android应用 程序综合项目案例。 本书读者对象 口 Kotlin入门人员; 口 Kotlin进阶开发人员; 口 Android程序员 口Java程序员; 口其他编程爱好者; 口相关培训机构的学员。 本书源程序获取方式 本书涉及的源代码需要读者自行下载。请登录清华大学出版社网站ww.tup. com. cn, 搜索到本书页面,在页面上找到“资源下载”栏目,然后单击“课件下载”或者“网络资 源”按钮即可下载。 作者与致谢 笔者现就职于阿里巴巴集团,曾经参与了多种平台工具的开发,主要使用Java、 Android、 Scala、 Groovy和 Kotlin等语言或工具进行领域建模、架构设计和工具开发等, 积累了大量经验。 感谢在本书写作过程中提供过帮助的各位朋友!也感谢在本书出版过程中提供过帮助 的各位编辑,没有你们的付出,本书就不会顺利和读者见面!最后感谢各位读者选择了本 书,祝你们学习愉快! 虽然笔者对书中所述内容都尽量核实,并多次进行文字校对,但因时间所限,加之水 平所限,书中可能还存在疏漏和错误,敬请广大读者批评指正。联系E-mail: bookservice2008@163.com 陈光剑 于杭州 仅供非商业用途或交流学习使用 仅供非商业用途或交流学习使用 目录 第1章 Kotlin是什么…… 1.1初识 Kotlin ………………………………………………………1 1.2语言特性 1.2.1 Kotlin与Java完全互操作 1.2.2扩展函数与扩展属性………… ……………………………………4 123不可空类型与空安全 124一等函数支持…… 12.5智能类型推断… ,,,, 1.3编程哲学 14学习工具………… 45666777 1.4.1云端IDE… 14.2命令行REPL 14.3使用IDEA 1.5为什么要学 Kotlin… 9 1.6JVM语言生态………… ………12 17本章小结… …16 第2章 Kotlin语法基础… ……17 2.1变量和标识符… …………17 22关键字与修饰符………………… 23流程控制语句 …………………21 2.3.1if表达式 22 232when表达式………… …23 2.33for循环 …24 23.4 while循环… 25 2.3.5 break和 continue …………26 2.3.6 return返回… …26 23.7标签( label)…… ““ 29 23.8 throw表达式…………… ……30 24操作符与重载……… 30 24.1操作符优先级…… ………31 242一元操作符 …32 24.3二元操作符 仅供非商业用途或交流学习使用 仅供非商业用途或交流学习使用 Kotlin从入门到进阶实战 2.5包声明…… ……38 26本章小结 ……………40 第3章类型系统与可空类型 41 3.1类型系统 3.1.1类型系统的作用 41 3.1.2Java类型系统……… 42 3.1.3 Kotlin类型系统… ·,,,,,,,,,,,,,, …………………………43 3.2可空类型 45 3.3安全操作符…………………… 3.3.1安全调用符“?”… …47 332非空断言“!! 48 3.3.3 Elvis运算符“?;” …………………………………48 34特殊类型…… ………48 34.1Unit类型 48 342 Nothing与 Nothing?类型… 343Any与Any?类型…………… 51 3.5类型检测与类型转换… 3.5.1is运算符… ……………………………………………………52 3.52类型自动转换……………… 3.53as运算符… 54 3.6本章小结… ,,,,,,,,来,,,,,,,,,,,,,,,来 ……4 第4章类与面向对象编程… ……55 41面向对象编程简史…… 55 42声明类……… 58 4.2.1空类 …………58 4.2.2声明类和构造函数…………………………… …58 4.3抽象类与接口… 61 4.3.1抽象类与抽象成员 4.32接口…………………………………………………………………64 44 object对象… ………………………65 45数据类… 4.5.1创建数据类 4.5.2数据类自动创建的函数…… …………69 4.5.3数据类的语法限制 …69 454Pai和 Triple.……… 4.6注解 70 47枚举 48内部类……………………… 48.1普通嵌套类 仅供非商业用途或交流学习使用

...展开详情
试读 127P 《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    一个资源只可评论一次,评论内容不能少于5个字
    tower888 感谢分享 正在学习中
    2020-07-09
    回复
    • GitHub

      绑定GitHub第三方账户获取
    • 签到新秀

      累计签到获取,不积跬步,无以至千里,继续坚持!
    • 分享王者

      成功上传51个资源即可获取
    关注 私信 TA的资源
    上传资源赚积分,得勋章
    最新推荐
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf 50积分/C币 立即下载
    1/127
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第1页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第2页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第3页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第4页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第5页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第6页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第7页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第8页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第9页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第10页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第11页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第12页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第13页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第14页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第15页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第16页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第17页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第18页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第19页
    《Kotlin从入门到进阶实战》_陈光剑_2018-9-10.pdf第20页

    试读已结束,剩余107页未读...

    50积分/C币 立即下载 >