新書推薦:
《
异域回声——晚近海外汉学之文史互动研究
》
售價:HK$
109.8
《
世界文明中的作物迁徙:聚焦亚洲、中东和南美洲被忽视的本土农业文明
》
售價:HK$
99.7
《
无端欢喜
》
售價:HK$
76.2
《
股票大作手操盘术
》
售價:HK$
53.8
《
何以中国·何谓唐代:东欧亚帝国的兴亡与转型
》
售價:HK$
87.4
《
一间只属于自己的房间 女性主义先锋伍尔夫代表作 女性精神独立与经济独立的象征,做自己,比任何事都更重要
》
售價:HK$
44.6
《
泉舆日志 幻想世界宝石生物图鉴
》
售價:HK$
134.2
《
养育女孩 : 官方升级版
》
售價:HK$
50.4
|
編輯推薦: |
例子丰富:205个举例,31个实例
知识点新:基于2018年底推出的1.3.0版本
简洁流畅:采用短段、短句,顺流而下般流畅
过程完整:从基础语法到实际开发项目全过程
实战性强:带领读者完成完整的图书管理系统
|
內容簡介: |
本书是Kotlin跨平台编程语言的实战型工具书,全书力求以简洁的语言 大量实例风格进行讲解,能够帮助熟悉Java语言或零基础编程的读者快速掌握Kotlin。全书共分为5篇,由浅入深,层次递进地进行讲解。第1篇准备,介绍了Kotlin语言的基本特性和使用场景;第2篇入门,介绍了Kotlin语言中的变量和常量、数据类型、操作符、流程控制、数组类型、集合类型;第3篇进阶,介绍了映射类型、类与对象、类的进阶用法、继承、抽象类与接口、包管理与访问控制符、正则表达式、泛型;第4篇高阶,介绍了扩展与委托、函数的高级应用、注解与反射、异常、IO操作、DSL、异步编程、与Java之间的调用;第5篇项目实战,主要介绍了使用Kotlin语言来编写一个图书管理系统的后端应用、Android应用、前端应用。本书适合所有对Kotlin语言感兴趣的读者。无论读者之前是否有过Kotlin经验或Java基础,哪怕只是编程的初学者,都可以通过本书很快地掌握这门语言。
|
關於作者: |
上汽88共享汽车 财务线研发经理熟悉各类WEB开发、移动互联网陆金所资深Java,易居创研技术Leader,上汽研发Leader从2014年起接触Kotlin语言,有丰富的编程经验
|
目錄:
|
目录
=
第1篇准备
=
第1章了解Kotlin2
1.1Kotlin能干什么2
1.2Kotlin的优势3
1.3如何使用本书3
-
第2章体验Kotlin4
2.1搭建开发环境4
?O2.1.1搭建Java的开发环境4
?O2.1.2搭建Kotlin的开发环境6
2.2使用RPHL6
?O2.2.1认识RPHL快速验证代码的利器6
?O2.2.2实例1:在RPHL中进行四则运算6
2.3Kotlin的IDE支持7
?O2.3.1使用IDEAAndroid Studio7
?O2.3.2使用Eclipse7
2.4Kotlin 的构建工具8
?O2.4.1使用Maven8
?O2.4.2使用Gradle10
2.5基本概念10
?O2.5.1源文件与字节码文件10
?O2.5.2标识符与关键字11
?O2.5.3语句和代码块11
?O2.5.4注释11
?O2.5.5main函数13
2.6本章小结14
=
第2篇入门
=
第3章第一次动手16
3.1实例2:第一个Kotlin脚本四则运算16
?O3.1.1了解Kotlin脚本16
?O3.1.2编写Kotlin脚本16
?O3.1.3运行脚本16
3.2实例3:第一个Kotlin应用Hello Kotlin17
?O3.2.1了解Kotlin应用17
?O3.2.2编写代码17
?O3.2.3编译代码17
?O3.2.4运行代码18
3.3本章小结18
-
第4章变量和常量19
4.1变量19
?O4.1.1了解变量19
?O4.1.2创建变量19
4.2常量(值)20
?O4.2.1了解常量(值)21
?O4.2.2创建常量(值)21
4.3实例4:对比变量和常量21
4.4本章小结22
=
第5章数据类型23
5.1了解数据类型分类23
5.2数值类型表示数字23
?O5.2.1数值类型的基本分类23
?O5.2.2整型、长整型与短整型24
?O5.2.3单精度与双精度浮点类型26
?O5.2.4实例5:用数值类型进行转账操作27
5.3字符与字符串类型表示文本27
?O5.3.1字符类型28
?O5.3.2字符串类型一组字符的集合28
?O5.3.3字符串类型的常用方法29
?O5.3.4了解字符串模板在字符串中使用表达式31
?O5.3.5实例6:用字符串模板编写SQL语句32
?O5.3.6了解多行文字原样输出多行语句33
?O5.3.7实例7:用多行字符串排版文字34
5.4字节类型表示二进制35
5.5布尔类型真或假35
5.6Kotlin的可空类型35
?O5.6.1空值没有存储空间35
?O5.6.2可空类型可能是空值,也可能不是36
?O5.6.3非空类型不能为空值37
?O5.6.4实例8:用安全操作符避免空指针37
5.7Kotlin的内置类型结构39
?O5.7.1Any类型所有类的父类39
?O5.7.2Unit类型什么都不返回39
?O5.7.3Nothing类型什么都没有39
5.8类型转换与类型判断40
?O5.8.1数值类型转换40
?O5.8.2自动类型转换40
?O5.8.3强制类型转换41
?O5.8.4类型提升41
?O5.8.5安全类型转换41
?O5.8.6类型判断与智能转换42
5.9类型别名42
5.10本章小结43
=
第6章操作符44
6.1认识操作符44
6.2一元操作符44
?O6.2.1正负操作符44
?O6.2.2自增操作符与自减操作符45
?O6.2.3否定操作符45
6.3二元操作符46
?O6.3.1四则运算操作符46
?O6.3.2复合操作符46
?O6.3.3比较操作符47
?O6.3.4位运算方法48
?O6.3.5猫王操作符49
?O6.3.6相等性49
?O6.3.7in和!in操作符50
?O6.3.8索引操作符51
?O6.3.9区间操作符51
6.4操作符重写51
6.5本章小结52
=
第7章流程控制53
7.1条件语句53
?O7.1.1if语句53
?O7.1.2if表达式55
?O7.1.3when语句56
?O7.1.4when表达式57
?O7.1.5实例9:when语句的多种用法57
7.2循环语句59
?O7.2.1while循环60
?O7.2.2for循环61
?O7.2.3实例10:用for循环替代while循环62
?O7.2.4repeat语句62
7.3跳转语句63
?O7.3.1continue语句跳过当前循环63
?O7.3.2break语句停止循环64
?O7.3.3实例11:用continue语句和break语句替换标签65
7.4本章小结65
=
第8章数组类型67
8.1数组67
?O8.1.1了解数组一组相同类型的数据67
?O8.1.2创建数组67
?O8.1.3实例12:数组的常用操作70
8.2多维数组72
?O8.2.1了解多维数组数组的元素也是数组72
?O8.2.2实例13:用多维数组输出图形73
8.3本章小结74
=
第9章集合类型75
9.1列表(List)类型75
?O9.1.1列表有序的一组数据75
?O9.1.2不可变列表75
?O9.1.3可变列表77
?O9.1.4空列表78
?O9.1.5实例14:列表类型的常用方法79
9.2集(Set)类型82
?O9.2.1集不重复的一组数据82
?O9.2.2不可变集82
?O9.2.3可变集82
?O9.2.4空集84
?O9.2.5实例15:集类型的常用方法84
9.3区间(Range)类型85
?O9.3.1了解区间连续的一组数据85
?O9.3.2实例16:区间类型的常用方法87
9.4序列(Sequence)类型88
?O9.4.1了解序列一组数据88
?O9.4.2实例17:序列类型的常用方法88
9.5本章小结89
=
第3篇进阶
=
第10章映射类型94
10.1了解映射通过名字找到值94
10.2创建不可变映射94
10.3创建可变映射95
10.4创建空映射97
10.5实例18:映射的常用方法97
?O10.5.1获得映射的长度97
?O10.5.2通过键访问值97
?O10.5.3修改可变映射99
?O10.5.4删除可变映射中的元素100
?O10.5.5遍历映射100
10.6本章小结101
=
第11章类与对象102
11.1函数的概念与使用102
?O11.1.1了解函数重用一组语句102
?O11.1.2认识函数的基本结构102
11.2函数的返回值103
?O11.2.1在函数中返回值103
?O11.2.2了解返回值的数据类型104
?O11.2.3实例19:在函数中同时返回多个值104
11.3函数的参数105
?O11.3.1了解函数的参数105
?O11.3.2命名参数106
?O11.3.3变参在无法确定参数个数时使用107
?O11.3.4参数的默认值109
?O11.3.5单表达式函数109
11.4类的概念与使用110
?O11.4.1了解类同一种概念的抽象110
?O11.4.2类的基本结构110
?O11.4.3实例20:定义一个电脑类111
11.5对象112
?O11.5.1了解对象类的具体实现112
?O11.5.2创建对象113
?O11.5.3访问对象的属性和方法113
11.6构造方法114
?O11.6.1了解构造方法如何创建对象114
?O11.6.2主构造方法与初始化代码114
?O11.6.3副构造方法116
11.7属性118
?O11.7.1了解属性和字段118
?O11.7.2使用默认的Getter和Setter访问器119
?O11.7.3自定义Getter和 Setter访问器119
?O11.7.4幕后字段121
?O11.7.5延迟初始化属性121
?O11.7.6内联属性123
11.8方法123
?O11.8.1infix方法123
?O11.8.2componentN方法124
11.9this关键字125
11.10实例21:创建用户登录管理系统126
?O11.10.1创建用户类126
?O11.10.2创建用户管理类128
?O11.10.3创建客户端131
11.11本章小结132
=
第12章类的进阶用法133
12.1嵌套类在类中定义类133
12.2内部类将类作为另一个类的成员134
12.3对象声明单例对象134
12.4伴生对象代替静态成员135
?O12.4.1了解伴生对象类中的单例对象135
?O12.4.2伴生对象的应用136
12.5对象表达式匿名类137
?O12.5.1创建对象表达式137
?O12.5.2匿名对象的类型限制138
12.6数据类贫血模型140
?O12.6.1创建数据类140
?O12.6.2了解内置方法的限制规则142
?O12.6.3了解对象间的复制144
12.7枚举类常量集145
?O12.7.1创建枚举类146
?O12.7.2实例22:用枚举类处理日期147
12.8密封类150
12.9本章小结150
=
第13章继承、抽象类与接口152
13.1继承152
?O13.1.1了解继承为现有类增加功能152
?O13.1.2什么样的类才能被继承152
?O13.1.3使用继承153
?O13.1.4重写方法153
?O13.1.5重写属性154
?O13.1.6子类访问父类成员super关键字155
13.2抽象类156
?O13.2.1了解抽象类定义模板156
?O13.2.2使用抽象类156
13.3接口157
?O13.3.1了解接口157
?O13.3.2使用接口158
13.4is-a关系159
13.5重写规则160
13.6实例23:用继承绘制一个手机屏幕161
13.7本章小结165
=
第14章包管理与访问控制符166
14.1包一组相关代码的集合166
?O14.1.1声明包166
?O14.1.2导入包167
?O14.4.3默认导入包168
14.2访问控制符控制成员是否可以被访问168
?O14.2.1访问控制符的分类168
?O14.2.2构造方法上的访问控制符169
?O14.2.3类成员上的访问控制符169
14.3其他控制符170
?O14.3.1open控制符和final控制符171
?O14.3.2override控制符171
14.4=
|
內容試閱:
|
Kotlin是JetBrains公司在2010年推出的一门基于JVM平台的编程语言。Kotlin代码在被编译为字节码文件后,可以在任何支持JVM的平台(包括Windows、Mac、Linux和各种嵌入式系统)上运行。目前,Kotlin语言除支持被编译为字节码文件外,还支持被编译为JavaScript文件,可以运行在浏览器端,是一门真正意义上的跨平台语言。
2014年,由于项目需要,我要找到一门与Java具有良好兼容性、能够直接调用Java类库来编写Android应用程序的JVM语言。在尝试了Groovy、Scala和Clojure等语言后,我发现,这些语言要么编译速度较慢,要么基础类库过大,并不适合用于移动端开发。最后我接触了当时还没有什么名气的Kotlin语言。那时我的感受是:这门语言拥有Scala语言的大部分常用功能,但是核心库却小了很多,可以更好地避免出现方法数超限等问题。但由于当时的版本还比较低,API变化非常频繁,最终我只是用Kotlin编写一些工具库及公司内部的应用程序,并没有将Kotlin语言运用到对外的完整项目中。在2017年5月的Google IO大会上,Google宣布Kotlin将和Java一样作为Android的官方开发语言,我意识到时机已到,开始全面在项目中应用Kotlin。现在,我希望将这门出色的语言分享给更多的人。
本书综合了我的多年开发经验,写作上力求由浅入深,以简洁的语言 大量实例进行讲解,希望带给各个层次的读者一个较为轻松的学习体验。
本书特色
1. 读者无须有Java基础
考虑到部分读者没有太多的编程经验,因此书中对于很多编程基础知识都进行了相应的介绍。即使读者没有任何Java基础,也能顺利读懂本书。
2. 知识点全
本书针对Kotlin于2018年年底推出的1.3.0版本,不但讲解了大量官方文档中所没有的知识点,而且还讲解了Kotlin中部分直接由Java实现的功能的底层细节。
3. 合理的章节安排
本书结合了我多年学习各种编程语言的经验,采用由浅入深、层层递进的结构,可以帮助读者按照合理的顺序学习一个个知识点。读者在学完本书后,甚至可以按照这个结构自行学习其他任何编程语言。
4. 大量典型实例
本书除讲解基础语法外,也注重项目实战。每个知识点后面都至少有一个实例,以便帮助读者更好地理解和掌握。建议读者在学习知识点时,可以根据实例举一反三进行自主练习。
5. 每章都配有总结,便于复习
本书大部分章后都附带一个简短的小结。建议读者在学完一章后按照小结内容进行回顾,如果有遗忘的知识点立即进行复习。
本书读者对象
? 没有太多的编程经验,但是对Kotlin语言感兴趣的人;
? Java后台开发人员;
? 移动应用程序开发人员;
? 立志于大前端的前端开发人员;
? 有其他JVM编程语言经验的开发人员;
? 相关授课老师;
? 大中专院校的相关专业的学生。
|
|