Java 物聯網、人工智能和區塊鏈編程實戰 Practical Java Programming for IoT, AI, and Blockchain
Perry Xiao 王穎 周致成 黃星河 譯
- 出版商: 清華大學
- 出版日期: 2021-01-01
- 定價: $588
- 售價: 8.5 折 $500
- 語言: 簡體中文
- 頁數: 388
- 裝訂: 平裝
- ISBN: 7302569266
- ISBN-13: 9787302569268
-
相關分類:
區塊鏈 Blockchain、物聯網 IoT
- 此書翻譯自: Practical Java Programming for IoT, AI, and Blockchain
下單後立即進貨 (約4週~6週)
買這商品的人也買了...
-
$534$507 -
$454Java 機器學習 (Mastering Java Machine Learning)
-
$450$351 -
$520$411 -
$880$836 -
$266Java 程序設計任務驅動式教程, 4/e
-
$620$490 -
$690$587 -
$1,200$948 -
$450$338 -
$356Spring Boot 區塊鏈應用開發入門 (微課視頻版)
-
$593$563 -
$520$406 -
$301物聯網中間件技術與應用
-
$505Java 從小白到大牛, 2/e
-
$454架構師的自我修煉:技術、架構和未來
-
$658Java 高並發核心編程. 卷2, 多線程、鎖、JMM、JUC、高並發設計模式
-
$550$495 -
$620$484 -
$352基於Java的物聯網基礎應用開發
-
$337基於Android的物聯網應用開發
-
$380$342 -
$47321天學通 Java, 8/e (Sams Teach Yourself Java in 21 Days, 8/e)
-
$680$537 -
$454Java 網絡編程實戰
相關主題
商品描述
主要內容
● 更新對Java基礎知識的理解
● 使用Git和GitHub進行Java版本控制
● 使用Java進行編程,與操作系統、網絡和移動應用交互
● 在物聯網和人工智能項目中使用Java
● 使用Java通過公鑰和私鑰以及數字簽名來加密數據
● 探討Java如何助力區塊鏈技術的發展
● 在大數據應用中使用Java
作者簡介
Perry Xiao
博士是英國倫敦南岸大學工程學院的副教授兼課程主任。
他獲得了光電子學學士學位、固態物理學理學碩士學位和光物理學博士學位。
他是特許工程師(Chartered Engineer,CEng)、工程技術學院(Institution of Engineering and Technology,IET)的院士(Fellow,FIET)
和高等教育學院(Higher Education Academy,HEA)的高級院士(Senior Fellow,SFHEA) 。
Perry從事本科和研究生課程的電子、軟件、計算機網絡和電信學科的教學已有近二十年的時間。
他還每年指導BEng項目和MSc項目的學生。
他的主要研究興趣是為皮膚生物工程應用和工業無損檢測(nondestructive testing,NDT)開發新型的紅外和電子傳感技術。
迄今為止,Perry已經完成了七次博士生指導,獲得了兩項英國專利,
發表了100多篇科學論文,成為9種期刊的編輯審稿人,並獲得了近100萬英鎊的研究經費。
Perry還是英國Biox Systems有限公司的董事兼聯合創始人,這是一家校企,
設計和製造了世界上最先進的皮膚測量儀器AquaFlux和Epsilon,這些儀器已在全球範圍內得到廣泛應用,
包括領先的化妝品公司、大學、研究機構和醫院等。
目錄大綱
目 錄
第Ⅰ部分
第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