描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302569268
随着数字革命的到来,新兴技术正以惊人的速度持续发展。它们从根本上改变了我们的生活和工作方式,甚至改变了我们的社交方式。作为一名Java程序员,你可以将自己定位于这些新兴技术发展的*前沿,为物联网、人工智能、网络安全、区块链等创建数字应用。《Java物联网、人工智能和区块链编程实战》由Perry Xiao博士编写,他从1997年至今一直使用Java,本书融入了他对Java的独到见解和丰富经验。
本书在简要回顾Java编程的入门知识之后,介绍了如何将这些技能用于一些*热门的新兴应用,通过范例介绍如何进行Java编程以与操作系统、网络、移动应用进行交互。然后,本书探讨了如何将Java用于互联的家用设备、医疗保健、云以及一些*热门的人工智能应用,你将了解一些Java人工智能库,还将接触一些实用的Java深度学习和神经网络示例,你将学习如何使用Java加密数据保护免受黑客攻击。*后,本书介绍了如何使用区块链以智能合约和数字货币实现Java,以及如何将Java应用于大数据应用。
Java作为易于学习和使用的现代高级编程语言,是开发数字应用的优秀工具。
主要内容 ● 更新对Java基础知识的理解 ● 使用Git和GitHub进行Java版本控制 ● 使用Java进行编程,与操作系统、网络和移动应用交互 ● 在物联网和人工智能项目中使用Java ● 使用Java通过公钥和私钥以及数字签名来加密数据 ● 探讨Java如何助力区块链技术的发展 ● 在大数据应用中使用Java
第Ⅰ部分
第1章 Java简介 3
1.1 什么是Java 3
1.2 Java语言的版本 5
1.3 Java架构 6
1.4 Java平台的版本 7
1.5 Java Spring框架 8
1.6 Java的优缺点 9
1.6.1 优点 9
1.6.2 缺点 9
1.7 Java认证 10
1.8 小结 10
1.9 本章复习题 10
第2章 Java编程入门 12
2.1 下载和安装Java 12
2.2 Java IDE 15
2.3 Java程序Hello World 18
2.4 Java在线编译器 21
2.5 Java在线代码转换器 27
2.6 Java免费在线课程和教程 28
2.7 Java版本控制 32
2.8 小结 32
2.9 本章复习题 32
第Ⅱ部分
第3章 基本的Java编程 37
3.1 引言 38
3.2 变量 38
3.2.1 常数 40
3.2.2 String和StringBuffer类型 40
3.2.3 var变量类型 41
3.3 运算符 42
3.4 保留字 43
3.5 输入和输出 43
3.6 循环和选择 46
3.7 数组、矩阵和ArrayList 48
3.8 读写文件 51
3.9 方法 53
3.10 面向对象编程 55
3.10.1 类和对象 55
3.10.2 实例化 55
3.10.3 封装 55
3.10.4 继承 55
3.10.5 覆盖和重载 55
3.10.6 多态性 56
3.10.7 对象的可访问性 56
3.10.8 匿名内部类 56
3.11 多线程 59
3.11.1 线程的生命周期 64
3.11.2 线程的优先级 66
3.11.3 线程调度 66
3.11.4 线程同步 67
3.12 日期、时间、计时器和睡眠方法 68
3.13 执行系统命令 72
3.14 大规模的软件包和编程 74
3.15 软件工程 77
3.15.1 软件的开发周期 77
3.15.2 缩进 78
3.15.3 注释 79
3.15.4 命名约定 80
3.16 部署Java应用 80
3.16.1 使用Windows批处理文件 81
3.16.2 使用可执行的JAR文件 82
3.16.3 使用Microsoft Visual Studio 83
3.16.4 Java应用的安装 84
3.17 小结 84
3.18 本章复习题 85
第4章 面向Windows应用的Java编程 86
4.1 引言 86
4.2 Java Swing应用 87
4.3 JavaFX应用 91
4.3.1 JavaFX窗口 92
4.3.2 在JavaFX中创建标签和按钮 94
4.3.3 JavaFX图表 95
4.3.4 在JavaFX中处理用户登录 97
4.3.5 在JavaFX中创建图像查看器 99
4.3.6 创建JavaFX Web查看器 100
4.3.7 在JavaFX中创建菜单 101
4.3.8 创建JavaFX文件选择对话框 103
4.3.9 JavaFX教程 105
4.4 部署JavaFX应用 108
4.5 小结 109
4.6 本章复习题 109
第5章 面向网络应用的Java编程 110
5.1 简介 110
5.1.1 局域网和广域网 113
5.1.2 思科的三层企业网络架构 113
5.1.3 关键网络组件 113
5.1.4 传统网络与软件定义网络 114
5.2 Java网络信息编程 116
5.3 Java套接字编程 121
5.3.1 Java UDP客户端-服务器编程 121
5.3.2 Java TCP客户端-服务器编程 123
5.3.3 Java多线程回显服务器编程 126
5.4 Java HTTP编程 128
5.4.1 Java HTTP/HTTPS客户端 128
5.4.2 Java HTTP服务器 134
5.4.3 Java多线程HTTP服务器 136
5.5 Java电子邮件SMTP编程 139
5.6 Java RMI客户端-服务器编程 143
5.7 SDN入门 146
5.7.1 OpenFlow入门 146
5.7.2 Floodlight入门 153
5.7.3 OpenDaylight入门 153
5.8 Java网络编程资源 154
5.9 小结 154
5.10 本章复习题 154
第6章 面向移动应用的Java编程 155
6.1 引言 155
6.2 Android Studio 156
6.3 Hello World应用 157
6.4 Button和TextView组件的应用 163
6.5 传感器应用 166
6.6 部署Android应用 169
6.7 Android应用中activity的生命周期 170
6.8 MIT App Inventor 171
6.9 5G 179
6.9.1 毫米波 181
6.9.2 小蜂窝 181
6.9.3 大规模MIMO 182
6.9.4 波束成形 182
6.9.5 全双工 182
6.9.6 未来的6G和7G 182
6.10 小结 183
6.11 本章复习题 183
第Ⅲ部分
第7章 面向物联网应用的Java编程 187
7.1 什么是物联网 187
7.2 物联网通信协议 190
7.2.1 MQTT 191
7.2.2 CoAP 191
7.2.3 XMPP 192
7.2.4 SOAP 192
7.2.5 REST 192
7.3 物联网平台 192
7.4 物联网安全 193
7.5 为什么使用Java 193
7.6 使用树莓派的Java物联网 193
7.6.1 设置树莓派 196
7.6.2 Java GPIO示例 198
7.6.3 从Java程序中调用Python程序 205
7.6.4 Java PWM示例 206
7.6.5 Java PIR和LED示例 208
7.6.6 Java I2C示例 210
7.6.7 Java ADC示例 213
7.6.8 Java数字传感器示例 217
7.6.9 Java MQTT示例 221
7.6.10 Java REST示例 223
7.7 Oracle Java ME嵌入式客户端 227
7.8 适用于Java的物联网平台 227
7.8.1 Eclipse Open IoT Stack 227
7.8.2 IBM Watson IoT 228
7.8.3 AWS IoT 228
7.8.4 Microsoft Azure IoT 229
7.9 小结 229
7.10 本章复习题 229
第8章 面向人工智能应用的Java编程 231
8.1 什么是人工智能 231
8.1.1 人工智能的研究历史 233
8.1.2 云人工智能与边缘人工智能 234
8.2 神经网络 235
8.2.1 感知器 236
8.2.2 多层感知器与反向传播/前馈神经网络 238
8.3 机器学习 240
8.4 深度学习 241
8.5 Java AI库 244
8.6 神经网络方面的Java示例 245
8.6.1 Java感知器示例 245
8.6.2 Java神经网络反向传播示例 248
8.7 机器学习方面的Java示例 251
8.8 深度学习方面Java示例 255
8.9 适用于Java的TensorFlow 259
8.10 AI资源 262
8.11 小结 263
8.12 本章复习题 263
第9章 面向网络安全应用的Java编程 264
9.1 什么是网络安全 265
9.2 什么是加密 265
9.2.1 私钥加密 266
9.2.2 公钥加密 267
9.3 哈希函数和消息摘要 271
9.4 数字签名 272
9.5 数字证书 273
9.6 案例研究1:安全电子邮件 275
9.7 案例研究2:安全网络 276
9.8 Java私钥加密示例 276
9.9 Java公钥加密示例 277
9.10 Java数字签名/消息摘要示例 279
9.11 Java数字证书示例 284
9.12 其他Java示例 289
9.13 小结 289
9.14 本章复习题 289
第10章 面向区块链应用的Java编程 290
10.1 什么是区块链 291
10.2 如何验证区块链 292
10.3 如何挖掘区块 292
10.4 区块链的工作方式 293
10.5 区块链的应用 294
10.5.1 比特币 294
10.5.2 智能合约 298
10.5.3 医疗 299
10.5.4 制造业和供应链 299
10.5.5 物联网 300
10.5.6 政务 300
10.6 关于区块链的一些问题 300
10.7 Java区块链示例 300
10.8 Java区块链交易示例 305
10.9 Java BitcoinJ示例 311
10.10 Java Web3j示例 312
10.11 Java EthereumJ示例 315
10.12 Java Ethereum智能合约示例 316
10.13 更进一步:选择区块链平台 322
10.14 小结 323
10.15 本章复习题 323
第11章 面向大数据应用的Java编程 324
11.1 什么是大数据 324
11.2 大数据的来源 325
11.3 大数据的三个V 326
11.4 大数据分析带来的好处 326
11.5 什么是Hadoop 326
11.6 Hadoop的关键组件 327
11.6.1 HDFS 327
11.6.2 MapReduce 328
11.6.3 Hadoop Common 328
11.6.4 Hadoop YARN 328
11.6.5 Hadoop集群 概述 328
11.7 在树莓派集群上实现Hadoop 329
11.7.1 树莓派的安装和 配置 330
11.7.2 Hadoop的安装和 配置 330
11.8 Java Hadoop示例 337
11.9 小结 343
11.10 本章复习题 343
附录A Java文档和归档工具以及在线资源 344
附录B Apache Maven教程 351
附录C Git和GitHub教程 357
我们生活在数字革命时代,许多新兴的数字技术正以惊人的速度发展,例如物联网(Internet of Things,IoT)、人工智能(Artificial Intelligence,AI)、网络安全、区块链等。无论我们是否喜欢,也无论我们是否准备好,这些数字技术都将越来越深入地渗透到我们生活的各个方面,这将从根本上改变我们的生活方式、工作方式和社交方式。Java作为一种现代的高级编程语言,是帮助我们学习这些数字技术以及开发数字应用的出色工具。
《Java物联网、人工智能和区块链编程实战》的目的是使用Java作为工具,帮助读者学习这些新的数字技术,使这些数字技术不再神秘并让读者为未来做好更充分的准备。
《Java物联网、人工智能和区块链编程实战》的组织结构
《Java物联网、人工智能和区块链编程实战》分为三大部分。第Ⅰ部分是对Java编程语言的基本介绍,使读者开始接触并使用Java进行编程;第Ⅱ部分的各章提供了常规编程项目的Java示例,例如控制台应用、Windows应用、网络应用和移动应用,所有这些都是为第Ⅲ部分做准备的;第Ⅲ部分是《Java物联网、人工智能和区块链编程实战》的核心,通过Java编程示例提供了有关最新数字技术(IoT、AI、网络安全、区块链和大数据)的易于阅读的指南。
评论
还没有评论。