-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
Kotlin移動和服務器端應用開發/移動開發技術叢書 版權信息
- ISBN:9787302614050
- 條形碼:9787302614050 ; 978-7-302-61405-0
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
Kotlin移動和服務器端應用開發/移動開發技術叢書 本書特色
學習使用 Kotlin 創建有用、安全且令人興奮的應用 《Kotlin移動和服務器端應用開發》為學習快速發展的編程語言Kotlin提供了易于理解的綜合資源。本書將帶領讀者快速上手Kotlin,不講無關緊要的內容,且提供的示例可用于真實應用中。 本書由著名技術專家Brett McLaughlin撰寫,引導讀者掌握這個替代Java的流行編程語言的基本和高級主題。雖然本書深入介紹了移動編程,但Kotlin語言不僅可用于移動應用開發,還可用于服務器端應用開發。 本書介紹了開始**個Kotlin項目所需的知識,詳述了Kotlin如何安全地保護和存儲信息,引導讀者了解該語言的局限性以及何時不適合使用Kotlin。*后, 還提供了一些實用且適用的代碼示例,讀者可以使用這些示例即時改進自己的Kotlin應用。 本書適合已在使用Java或Ruby開發應用的讀者,也適合那些試圖使用Kotlin但難以內化其獨特功能的讀者。如果你一直在“用Kotlin寫Java代碼”,或希望開始利用Kotlin提供的一切,那么本書就是為你而寫。
Kotlin移動和服務器端應用開發/移動開發技術叢書 內容簡介
《Kotlin移動和服務器端應用開發》為學習快速發展的編程語言Kotlin提供了易于理解的綜合資源。本書將帶領讀者快速上手Kotin,不講無關緊要的內容,且提供的示例可用于真實應用中。 本書由有名技術專家Brett McLaughlin撰寫,引導讀者掌握這個替代Java的流行編程語言的基本和高級主題。雖然本書深入介紹了移動編程,但Kotlin語言不僅可用于移動應用開發,還可用于服務器端應用開發。 本書介紹了開始**個Kotlin項目所需的知識,詳述了Kotlin如何安全地保護和存儲信息,引導讀者了解該語言的局限性以及何時不適合使用Kotlin。*后,還提供了一些實用且適用的代碼示例,讀者可以使用這些示例即時改進自己的Kotlin應用。 本書適合已在使用Java或Ruby開發應用的讀者,也適合那些試圖使用Kotlin但難以內化其獨特功能的讀者。如果你一直在“用Kotin寫Java代碼”,或希望開始利用Kotlin提供的一切,那么本書就是為你而寫。 主要內容: 如何編寫自己的**個Kotlin應用; 如何將Kotin用作服務器端的解決方案,而不僅僅是編寫移動應用的語言; Kotin如何安全地保護用戶信息以及如何編寫安全的應用; 為什么Kotin是Java的優秀替代品,為什么它是世界上發展*快的編程語言之一。
Kotlin移動和服務器端應用開發/移動開發技術叢書 目錄
第1章 對象的世界 1
1.1 Kotlin:一門新興的編程語言 1
1.2 什么是Kotlin 2
1.3 Kotlin是面向對象的語言 3
1.4 設置Kotlin環境 4
1.4.1 安裝Kotlin(及IDE) 4
1.4.2 安裝Kotlin(并使用命令行) 10
1.5 創建有用的對象 12
1.5.1 使用構造函數將值傳遞給對象 13
1.5.2 使用toString ()方法打印對象 14
1.5.3 覆蓋toString ()方法 15
1.5.4 數據并不都是屬性值 17
1.6 初始化對象并更改變量 18
1.6.1 使用代碼塊初始化類 19
1.6.2 Kotlin自動生成getter和setter 20
1.6.3 常量變量不能改變 21
第2章 Kotlin很難出錯 25
2.1 繼續探究Kotlin類 25
2.1.1 根據類命名文件 26
2.1.2 用包管理類 27
2.1.3 將Person類放入包中 28
2.1.4 類:Kotlin的終極類型 31
2.2 Kotlin有很多類型 31
2.2.1 Kotlin中的數字 31
2.2.2 字母和事物 32
2.2.3 真值或假值 33
2.2.4 類型不可互換I 33
2.2.5 屬性必須初始化 34
2.2.6 類型不可互換II 35
2.2.7 Kotlin很容易出錯(某種程度上) 37
2.3 覆蓋屬性訪問器和更改器 38
2.3.1 自定義設置(custom-set)屬性不能位于主構造函數中 38
2.3.2 覆蓋某些屬性的更改器 42
2.4 類可以有自定義行為 44
2.4.1 在類中定義自定義方法 44
2.4.2 每個屬性都必須初始化 45
2.4.3 有時并不需要屬性 48
2.5 類型安全改變一切 50
2.6 代碼的編寫很少是線性的 50
第3章 Kotlin非常優雅 53
3.1 對象、類與Kotlin 53
3.2 所有類都需要equals()方法 54
3.2.1 equals(x)用于比較兩個對象 54
3.2.2 覆蓋equals(x)使其有意義 56
3.2.3 每個對象都是一個特定的類型 58
3.2.4 空值 60
3.3 每個對象實例都需要唯一的hashCode() 61
3.3.1 所有類都繼承自Any類 61
3.3.2 始終覆蓋hashCode()和equals(x) 64
3.3.3 默認哈希值是基于內存位置的 65
3.3.4 使用哈希值生成哈希值 66
3.4 基于有效和快速的equals(x)和hashCode()方法的搜索 67
3.4.1 在hashCode()中區分多個屬性 67
3.4.2 用==代替equals(x) 68
3.4.3 hashCode()的快速檢查 69
3.5 基本的類方法非常重要 70
第4章 繼承很重要 71
4.1 好的類并不總是復雜的類 71
4.1.1 保持簡單、直白 72
4.1.2 保持靈活、直白 73
4.2 類可以定義屬性的默認值 75
4.2.1 構造函數可以接收默認值 76
4.2.2 Kotlin希望參數有序排列 76
4.2.3 按名稱指定參數 77
4.2.4 更改參數順序 77
4.3 次構造函數可以提供額外的構造選項 78
4.3.1 次構造函數排在主構造函數之后 79
4.3.2 次構造函數可給屬性賦值 80
4.3.3 有時,可以將null值賦給屬性 82
4.3.4 null屬性可能會導致問題 85
4.4 使用自定義更改器處理依賴值 85
4.4.1 在自定義更改器中設置依賴值 86
4.4.2 所有屬性賦值都會使用屬性的更改器 86
4.4.3 可為空的值可以設置為空 87
4.4.4 限制對依賴值的訪問 90
4.4.5 盡可能地計算依賴值 91
4.4.6 只讀屬性可不用括號 93
4.5 具體應用——子類 95
4.5.1 Any是所有Kotlin類的基類 96
4.5.2 {...}是折疊代碼的簡略表達 97
4.5.3 類必須是開放的才能有子類 99
4.5.4 術語:子類、繼承、基類等 100
4.5.5 子類必須遵循其父類的規則 100
4.5.6 子類擁有其父類的所有行為 101
4.6 子類應不同于父類 101
4.6.1 子類的構造函數經常添加參數 101
4.6.2 不要讓不可變屬性成為可變屬性 102
4.6.3 有時,對象并不完全映射現實世界 103
4.6.4 通常,對象應當映射現實世界 104
第5章 List、Set和Map 105
5.1 List只是事物的集合 105
5.1.1 Kotlin的List:一種集合類型 105
5.1.2 更改可變列表 109
5.1.3 從可變列表獲取屬性 110
5.2 List(集合)的類型 111
5.2.1 給列表定義類型 111
5.2.2 遍歷列表 113
5.2.3 Kotlin會揣摩你的意思 116
5.3 List:有序且可重復 117
5.3.1 有序可以使你按順序訪問列表項 117
5.3.2 List可以包含重復項 118
5.4 Set:無序但唯一 119
5.4.1 在Set中,無法保證順序 119
5.4.2 何時順序至關重要 120
5.4.3 動態排序List(和Set) 121
5.4.4 Set不允許有重復項 121
5.4.5 迭代器不(總)是可變的 125
5.5 Map:當單值不夠用時 125
5.5.1 Map是由工廠方法創建的 126
5.5.2 使用鍵查找值 126
5.5.3 你希望值是什么 127
5.6 如何過濾集合 127
5.6.1 基于特定條件的過濾 128
5.6.2 更多有用的過濾器變體 129
5.7 集合:用于基本類型和自定義類型 130
5.7.1 向Person類添加集合 130
5.7.2 允許將集合添加到集合屬性 132
5.7.3 Set和MutableSet不一樣 134
5.7.4 集合屬性只是集合 135
第6章 Kotlin的未來是泛型 137
6.1 泛型允許推遲類型定義 137
6.1.1 集合是泛型的 137
6.1.2 參數化類型在整個類中都可用 138
6.1.3 泛型到底是什么 139
6.2 泛型會盡可能地推斷類型 140
6.2.1 Kotlin會尋找匹配的類型 140
6.2.2 Kotlin會尋找*精確匹配的類型 141
6.2.3 Kotlin不會告訴你泛型類型 142
6.2.4 告訴Kotlin你想要什么 143
6.3 協變:類型與賦值的研究 143
6.3.1 什么是泛型類型 143
6.3.2 有些語言需要額外的工作才能實現協變 145
6.3.3 Kotlin實際上也需要額外的工作才能實現協變 145
6.3.4 有時必須把顯而易見的事情說清楚 146
6.3.5 協變類型限制輸入類型和輸出類型 146
6.3.6 協變實際上是使繼承按期望的方式工作 146
6.4 逆變:從泛型類型構建消費者 147
6.4.1 逆變:限制輸出而不是輸入 147
6.4.2 逆變從基類一直到子類都有效 149
6.4.3 逆變類不能返回泛型類型 150
6.4.4 這些真的重要嗎 150
6.5 UnsafeVariance:學習規則,然后打破規則 151
6.6 類型投影允許你處理基類 152
6.6.1 型變可以影響函數,而不只是類 152
6.6.2 類型投影告知Kotlin可將子類作為基類的輸入 153
6.6.3 生產者不能消費,消費者也不能生產 153
6.6.4 型變不能解決所有問題 154
第7章 控制結構 155
7.1 控制結構是編程的基礎 155
7.2 if和else控制結構 156
7.2.1 !!確保非空值 156
7.2.2 控制結構影響代碼的流程 157
7.2.3 if和else遵循基本結構 158
7.2.4 表達式和if語句 159
7.3 when是Kotlin版本的Switch 163
7.3.1 每個比較或條件都是一個代碼塊 163
7.3.2 用else代碼塊處理其他一切 164
7.3.3 每個分支可以支持一定范圍 165
7.3.4 每個分支通常會有部分表達式 166
7.3.5 分支條件按順序依次檢查 168
7.3.6 分支條件只是表達式 169
7.3.7 when語句也可作為一個整體來賦值 169
7.4 for循環 171
7.4.1 Kotlin中的for循環需要一個迭代器 171
7.4.2 你做得越少,Kotlin做得越多 172
7.4.3 for對迭代有要求 173
7.4.4 可以用for獲取索引而不是對象 173
7.5 執行while循環直至條件為假 176
7.5.1 while與Boolean條件有關 176
7.5.2 巧用while:多個運算符,一個變量 178
7.5.3 組合控制結構,獲得更有趣的解決方案 179
7.6 do...while循環至少運行一次 180
7.6.1 每個do ... while循環都可以改寫成一個while循環 180
7.6.2 如果必須先執行一定的操作,那么使用do ... while 181
7.6.3 選用do ... while可能是基于性能的考慮 186
7.7 break可以立即跳出循環 186
7.7.1 break跳過循環中剩余的部分 186
7.7.2 可以使用帶標簽的break 187
7.8 使用continue立即進入下一次迭代 189
7.8.1 continue也可以使用標簽 189
7.8.2 if和continue對比:通常風格更勝過實質 190
7.9 return語句用于返回 191
第8章 數據類 193
......
第9章 枚舉和密封類,以及更多專業類 215
......
第10章 函數 247
......
Kotlin移動和服務器端應用開發/移動開發技術叢書 作者簡介
Brett McLaughlin在技術工作和技術寫作方面擁有超過20年的經驗。目前,Brett專注于云計算和企業計算。他是一名值得信賴的知名人士,能將繁雜的云概念轉化為清晰的執行層愿景從而幫助公司實現云遷移,尤其是Amazon Web Services。他的日常工作就是與需要了解云的關鍵決策者一起,建立并領導開發和運維團隊,帶領他們與不斷變化的云計算空間進行交互。他最近領導了NASA的Earth Science計劃和RockCreek Group集團的金融平臺的大規模云遷移。Brett目前還是電子商務平臺提供商Volusion的首席技術官。
- >
我與地壇
- >
李白與唐代文化
- >
上帝之肋:男人的真實旅程
- >
月亮虎
- >
【精裝繪本】畫給孩子的中國神話
- >
大紅狗在馬戲團-大紅狗克里弗-助人
- >
推拿
- >
龍榆生:詞曲概論/大家小書