您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
漫画
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
深入实践Kotlin元编程
字数: 456000
装帧: 平装
出版社: 机械工业出版社
作者: 霍丙乾
出版日期: 2023-08-01
商品条码: 9787111732549
版次: 1
开本: 16开
页数: 336
出版年份: 2023
定价:
¥109
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
编辑推荐
(1)作者背景资深:作者先后就职于腾讯和猿辅导,是中国Kotlin社区知名布道者和技术专家,Google开发者专家(Kotlin方向)(2)作者经验丰富:作者在Kotlin领域有大量的项目实践经验,对Kotlin编译器源码有深入研究,著有畅销书《深入理解 Kotlin 协程》。(3)内容系统深入:作者结合Kotlin编译器源码和工程实践经验,从基础知识、设计思想、技术方案、应用方法、实践技巧5个维度系统讲解Kotlin元编程。(4)理论实战兼备:不仅详细讲解了元编程的常见核心技术,而且提供了大量来自真实生产环境的案例及代码,图文并茂。
内容简介
这是一本从基础知识、设计思想、技术方案、应用方法、实践技巧5个维度系统讲解Kotlin元编程,并以此大幅提升Kotlin工程师开发水平、研发效率和开发体验的著作。作者是Kotlin领域的资深专家和布道者,本书源于他对Kotlin编译器源码的反复研读和大量的工程实践,不仅细致讲解了反射、程序静态分析、 Java注解处理器、Kotlin符号处理器、Kotlin编译器插件、元程序的开发和调试等核心元编程技术,而且详细剖析了Jetpack Compose的编译器插件和IntelliJ 插件、AtomicFU 的 JVM 字节码和JavaScript代码的生成逻辑。本书的出版打破了元编程技术资料少、门槛高的行业现状。本书包含大量案例,这些案例大多来自真实的生产实践,相对成熟和完善,可以作为元编程项目的范本。同时,本书提供大量的代码,为了提升阅读体验,在注释、书写和排版等方面对代码做了精心的优化。全书的源文件均可免费下载,读者可以通过作者的网站实时与作者互动和交流。
目录
前言
第一部分元编程的基础知识
第1章元编程概述2
1.1元编程的需求背景2
1.2元编程的基本概念4
1.2.1元编程的定义5
1.2.2元编程的分类5
1.3元编程的学习方法6
1.3.1培养兴趣6
1.3.2付诸行动6
1.3.3善用工具7
1.3.4多读源代码8
1.4常用项目的调试环境配置8
1.4.1Java编译器8
1.4.2Kotlin编译器11
1.4.3IntelliJ社区版13
1.4.4Jetpack Compose编译器插件19
1.5本章小结21
第2章元数据概述22
2.1基本概念22
2.1.1语法结构23
2.1.2编译产物23
2.2注释23
2.2.1注释的结构化23
2.2.2文档生成24
2.3注解25
2.3.1注解的概念25
2.3.2源代码可见的注解26
2.3.3二进制可见的注解27
2.3.4运行时可见的注解30
2.4Kotlin的元数据31
2.4.1Kotlin JVM中的@Metadata注解31
2.4.2Kotlin JVM模块中的元数据35
2.4.3klib中的元数据37
2.5Kotlin的语法树39
2.5.1Kotlin的语法定义40
2.5.2基于IntelliJ平台接口的抽象语法树41
2.5.3新一代语法树FIR42
2.5.4连接前后端编译器的IR43
2.5.5Java和Kotlin的符号树45
2.6Kotlin的编译产物47
2.6.1JVM47
2.6.2JavaScript48
2.6.3Native48
2.7本章小结49
第二部分元编程的技术实践
第3章运行时的反射52
3.1Java反射52
3.1.1基本功能52
3.1.2解除访问53
3.1.3动态代理54
3.1.4对注解的支持55
3.1.5对方法参数名的支持56
3.1.6访问Kotlin代码57
3.2Kotlin反射58
3.2.1基本功能59
3.2.2类引用的获取61
3.2.3属性引用和函数引用65
3.2.4typeOf67
3.2.5dynamic类型69
3.2.6属性委托70
3.3案例:Retrofit的接口实现72
3.3.1Retrofit基本用法72
3.3.2GitHubService实例的创建73
3.3.3函数参数与请求参数的对应关系74
3.3.4泛型类型的反序列化74
3.3.5案例小结75
3.4案例:使用反射实现DeepCopy75
3.4.1案例背景75
3.4.2需求分析76
3.4.3案例实现78
3.4.4小试牛刀79
3.4.5案例小结79
3.5案例:使用dynamic类型为Kotlin JS实现DeepCopy80
3.5.1案例背景80
3.5.2需求分析80
3.5.3案例实现83
3.5.4案例小结83
3.6本章小结84
第4章源代码生成85
4.1直接输出目标代码85
4.1.1一个简单的例子85
4.1.2标准库的代码生成87
4.2案例:为Kotlin添加Tuple类型88
4.2.1案例背景88
4.2.2需求分析90
4.2.3案例实现91
4.3使用模板引擎生成目标代码93
4.3.1Anko中的代码生成93
4.3.2使用模板引擎渲染目标代码95
4.4案例:为Java静态方法生成Kotlin扩展函数(模板引擎)96
4.4.1案例背景96
4.4.2需求分析96
4.4.3案例实现98
4.4.4代码优化101
4.5使用代码生成框架生成目标代码104
4.5.1JavaPoet104
4.5.2KotlinPoet109
4.6案例:为Java静态方法生成Kotlin扩展函数(KotlinPoet)114
4.6.1类型的映射114
4.6.2实现代码生成116
4.6.3泛型参数的支持118
4.7本章小结121
第5章编译时的符号处理122
5.1符号的基本概念122
5.1.1Java的符号122
5.1.2Kotlin的符号124
5.1.3符号与语法树节点的关系和区别125
5.2处理器的基本结构125
5.2.1APT的基本结构125
5.2.2KSP的基本结构130
5.2.3APT与KSP的结构差异131
5.2.4处理器的配置文件132
5.3深入理解符号和类型132
5.3.1获取修饰符133
5.3.2通过名称获取符号133
5.3.3获取符号的类型134
5.3.4通过类型获取符号138
5.3.5判断类型之间的关系139
5.3.6获取注解及其参数值141
5.4案例:基于源代码生成模块的符号文件144
5.4.1案例背景144
5.4.2案例实现:APT版本145
5.4.3案例实现:KSP版本147
5.5深入理解符号处理器148
5.5.1如何使用APT处理Kotlin符号148
5.5.2符号的有效性验证150
5.5.3处理器的轮次和符号的延迟处理150
5.5.4处理器对增量编译的支持151
5.5.5多模块的符号处理154
5.6案例:使用符号处理器实现DeepCopy156
5.6.1案例背景156
5.6.2需求分析156
5.6.3案例实现:APT版本157
……
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网