Java 到 Kotlin (Java to Kotlin: A Refactoring Guidebook)
Duncan Mc Gregor,Nat Pryce 譯 楊志橋//李偉曄//陳亮//李傳武
- 出版商: 機械工業
- 出版日期: 2023-11-01
- 售價: $894
- 語言: 簡體中文
- 頁數: 381
- 裝訂: 平裝
- ISBN: 7111737032
- ISBN-13: 9787111737032
- 
    相關分類:
    
      JVM 語言
 
- 此書翻譯自: Java to Kotlin: A Refactoring Guidebook
已絕版
買這商品的人也買了...
- 
                
                   揭開設計模式的秘辛 ── 設計模式 第1 3/4版 『Pattern hatching : design patterns applied』 揭開設計模式的秘辛 ── 設計模式 第1 3/4版 『Pattern hatching : design patterns applied』$390$304
- 
                
                   看板實戰 : 用一張便利貼訓練出100分高效率工作團隊 (Kanban in Action) 看板實戰 : 用一張便利貼訓練出100分高效率工作團隊 (Kanban in Action)$560$476
- 
                
                   為你自己學 Git 為你自己學 Git$500$425
- 
                
                   $714Effective Java, 3/e (簡體中文版) $714Effective Java, 3/e (簡體中文版)
- 
                
                   微服務架構設計模式 (Microservices Patterns: With examples in Java) 微服務架構設計模式 (Microservices Patterns: With examples in Java)$834$792
- 
                
                   $454Offer 來了:Java 面試核心知識點精講 (原理篇) $454Offer 來了:Java 面試核心知識點精講 (原理篇)
- 
                
                   $403高性能 Android 開發技術 $403高性能 Android 開發技術
- 
                
                   $505Offer 來了:Java 面試核心知識點精講 (框架篇) $505Offer 來了:Java 面試核心知識點精講 (框架篇)
- 
                
                   網站可靠性工程工作手冊|導入SRE的實用方法 (The Site Reliability Workbook) 網站可靠性工程工作手冊|導入SRE的實用方法 (The Site Reliability Workbook)$780$616
- 
                
                   Kent Beck 的測試驅動開發:案例導向的逐步解決之道 (Test-Driven Development: By Example)(TDD) Kent Beck 的測試驅動開發:案例導向的逐步解決之道 (Test-Driven Development: By Example)(TDD)$560$437
- 
                
                   數據庫程序員面試筆試通關寶典 數據庫程序員面試筆試通關寶典$419$398
- 
                
                   Mike Cohn 的使用者故事:敏捷軟體開發應用之道 (User Stories Applied : For Agile Software Development) Mike Cohn 的使用者故事:敏捷軟體開發應用之道 (User Stories Applied : For Agile Software Development)$600$468
- 
                
                   $556C++20 高級編程 $556C++20 高級編程
- 
                
                   Agile Retrospectives 中文版:這樣打造敏捷回顧會議,讓團隊從優秀邁向卓越 (Agile Retrospectives: Making Good Teams Great) Agile Retrospectives 中文版:這樣打造敏捷回顧會議,讓團隊從優秀邁向卓越 (Agile Retrospectives: Making Good Teams Great)$500$390
- 
                
                   敏捷升級:28個提升敏捷成效的關鍵原則 (More Effective Agile: A Roadmap for Software Leaders) 敏捷升級:28個提升敏捷成效的關鍵原則 (More Effective Agile: A Roadmap for Software Leaders)$650$507
- 
                
                   SRE 實踐與開發平台指南:從團隊協作、原則、架構和趨勢掌握全局,做出精準決策 SRE 實踐與開發平台指南:從團隊協作、原則、架構和趨勢掌握全局,做出精準決策$620$484
- 
                
                   Code:隱藏在電腦軟硬體底下的秘密 (第二版) (Code: The Hidden Language of Computer Hardware and Software, 2/e) Code:隱藏在電腦軟硬體底下的秘密 (第二版) (Code: The Hidden Language of Computer Hardware and Software, 2/e)$680$510
- 
                
                   Clean Architecture 實作篇:在整潔的架構上弄髒你的手 (第二版) (Get Your Hands Dirty on Clean Architecture, 2/e) Clean Architecture 實作篇:在整潔的架構上弄髒你的手 (第二版) (Get Your Hands Dirty on Clean Architecture, 2/e)$600$468
- 
                
                   JavaScript 設計模式學習手冊, 2/e (Learning JavaScript Design Patterns: A JavaScript and React Developer's Guide, 2/e) JavaScript 設計模式學習手冊, 2/e (Learning JavaScript Design Patterns: A JavaScript and React Developer's Guide, 2/e)$580$458
- 
                
                   跟 NVIDIA 學深度學習!從基本神經網路到 ......、GPT、BERT...,紮穩機器視覺與大型語言模型 (LLM) 的建模基礎 跟 NVIDIA 學深度學習!從基本神經網路到 ......、GPT、BERT...,紮穩機器視覺與大型語言模型 (LLM) 的建模基礎$880$748
- 
                
                   Jetpack Compose 實戰 Jetpack Compose 實戰$774$735
- 
                
                   LLM 的瑞士刀 - 用 LangChain 極速開發可擴充大型應用程式 LLM 的瑞士刀 - 用 LangChain 極速開發可擴充大型應用程式$880$695
- 
                
                   雲原生 Spring 實戰 Spring Boot 與 Kubernetes 實踐 (Cloud Native Spring in Action: With Spring Boot and Kubernetes) 雲原生 Spring 實戰 Spring Boot 與 Kubernetes 實踐 (Cloud Native Spring in Action: With Spring Boot and Kubernetes)$839$797
- 
                
                   MongoDB 資料建模和模式設計 MongoDB 資料建模和模式設計$534$507
- 
                
                   內行人才知道的系統設計面試指南 第二輯 (System Design Interview – An Insider's Guide: Volume 2) 內行人才知道的系統設計面試指南 第二輯 (System Design Interview – An Insider's Guide: Volume 2)$820$648
商品描述
本書講述瞭如何從Java過渡到Kotlin,主要關註代碼,
每章都闡述了從Java過渡到Kotlin的一個方面,考察了典型Java項目在這個過程中可以改進的方面。
比如,從Optional到nullable,從Bean到值,從開放類到密封類。
每章首先解釋關鍵概念,然後展示如何在保持互操作性的前提下,
逐步且安全地將生產型Java代碼重構為慣用的Kotlin代碼,由此產生的代碼更簡單、更有表現力,也更容易修改。
在本書結束時,你將有信心將Java代碼重構為Kotlin代碼,從頭開始編寫Kotlin代碼,並隨著時間的推移管理一個混合語言代碼庫。
目錄大綱
目錄
前言
第1章 引言
1.1 程式語言的“紋理”
1.2 Java程式設計風格的主觀歷史
1.3 Kotlin的“紋理”
1.4 重構為Kotlin
1.5 我們要做什麼
1.6 啟程
第2章 從Java專案到Kotlin項目
2.1 策略
2.2 在Java建置中加入對Kotlin的支持
2.3 繼續前進
第3章 從Java類到Kotlin類
3.1 一個簡單的值類型
3.2 資料類的局限性
3.3 繼續前進
第4章 從Optional到nullable
4.1 表示缺失
4.2 從Optional重構為nullable
4.3 重構為慣用的Kotlin程式碼
4.4 繼續前進
第5章 從Bean到值
5.1 Bean
5.2 值
5.3 為什麼值類型較受歡迎
5.4 將Bean重構為值
5.5 繼續前進
第6章 從Java集合到Kotlin集合
6.1 Java集合
6.2 Kotlin集合
6.3 將Java集合重構為Kotlin集合
6.4 繼續前進
第7章 從action到calculation
7.1 函數
7.2 calculation
7.3 action
7.4 為什麼要關註action和calculation
7.5 為什麼選擇calculation
7.6 將action重構為calculation
7.7 繼續前進
第8章 從靜態方法到頂層函數
8.1 Java 中的靜態方法
8.2 Kotlin頂層函數、對象和伴生對象
8.3 將靜態方法重構為頂層函數
8.4 移到頂層
8.5 Kotlin化
8.6 繼續前進
第9章 從多表達式函數到單表達式函數
9.1 第1種方式:內聯
9.2 第2種方式:引入函數
9.3 第3種方式:使用let塊
9.4 第4種方式:後退一步
9.5 繼續前進
第10章 從函數到擴充函數
10.1 函數和方法
10.2 擴充函數
10.3 擴充和函數類型
10.4 擴充屬性
10.5 類型轉換
10.6 可空參數
10.7 可空接收器
10.8 泛型
10.9 作為方法的擴展函數
10.10 重構為擴展函數
10.11 繼續前進
第11章 從方法到屬性
11.1 字段、存取器和屬性
11.2 如何選擇
11.3 可變屬性
11.4 重構為屬性
11.5 繼續前進
第12章 從函數到運算符
12.1 基礎類:Money
12.2 新增使用者定義的運算符
12.3 從現有Kotlin程式碼中呼叫運算符
12.4 現有Java類別的運算符
12.5 表示值的約定
12.6 繼續前進
第13章 從流到可迭代物件再到序列
13.1 Java流
13.2 Kotlin可迭代對象
13.3 Kotlin序列
13.4 多重迭代
13.5 在流、可迭代物件和序列之間進行選擇
13.6 代數變換
13.7 將流重構為可迭代物件和序列
13.8 繼續前進
第14章 從可累積物件到轉換對象
14.1 使用累加器進行參數計算
14.2 重構為基於不可變資料的函數
14.3 再來一次
14.4 豐富所發現的抽象
14.5 繼續前進
第15章 從封裝集合到型別別名
15.1 組合領域集合
15.2 具有其他屬性的集合
15.3 重構封裝集合
15.4 繼續前進
第16章 從接口到函數
16.1 物件導向的封裝
16.2 函數式封裝
16.3 Java中的函數類型
16.4 混合和匹配
16.5 物件導向和函數式的對比
16.6 耦合
16.7 物件導向還是函數式
16.8 Java的遺留問題
16.9 可追溯性
16.10 將接口重構為函數
16.11 繼續前進
第17章 從Mock到Map
17.1 用Map取代Mock
17.2 我們真的擺脫Mock了嗎
17.3 繼續前進
第18章 從開放類到密封類
18.1 多態性還是密封類
18.2 將接口轉換為密封類
18.3 繼續前進
第19章 從Throwing到Returning
19.1 異常前的錯誤處理
19.2 異常的錯誤處理
19.3 Java和受檢異常
19.4 Kotlin和異常
19.5 超越異常:函數式錯誤處理
19.6 Kotlin中的錯誤處理
19.7 將異常重構為錯誤
19.8 更多修復
19.9 層級
19.10 繼續前進
第20章 從執行I/O操作到傳遞數據
20.1 監聽測試
20.2 從I/O到數據
20.3 高效率寫入
20.4 高效率讀取
20.5 繼續前進
第21章 從異常到值
21.1 辨識可能出錯的地方
21.2 表示錯誤
21.3 I/O錯誤
21.4 繼續前進
第22章 從類別到函數
22.1 驗收測試
22.2 單元測試
22.3 標題
22.4 不同的字段分隔符
22.5 序列
22.6 從檔案中讀取
22.7 與Commons CSV比較
22.8 繼續前進
第23章 繼續旅程
23.1 紋理
23.2 函數式思維
23.3 簡單設計
23.4 函數式程式設計與文本推理
23.5 重構
23.6 重構與函數式思維
參考文獻

 
    
 
     
    
 
     
     
     
     
    
 
     
    
 
    
 
     
     
     
     
    
 
    
 
     
    