Android設(shè)計模式與最佳實踐(圖靈出品)
定 價:79 元
- 作者:[英] 凱爾·繆(Kyle Mew) 著,李玥 譯
- 出版時間:2020/10/1
- ISBN:9787115547682
- 出 版 社:人民郵電出版社
- 中圖法分類:TN929.53
- 頁碼:272
- 紙張:膠版紙
- 版次:1
- 開本:16開
本書是一份全面的指南,介紹如何在應(yīng)用程序中使用久經(jīng)考驗的編程方法——設(shè)計模式。書中將主要探討如何構(gòu)建自己的定制模式,并將其應(yīng)用于Android開發(fā)。本書并非依次介紹每種設(shè)計模式,而是從開發(fā)者的角度,基于應(yīng)用程序開發(fā)的各個方面探討在構(gòu)建Android應(yīng)用程序過程中可能出現(xiàn)的設(shè)計模式。本書專注于開發(fā)一個完整的客戶端移動應(yīng)用程序,重點關(guān)注何時、如何以及為什么應(yīng)該在Android開發(fā)中使用模式。讀者將學(xué)會如何將設(shè)計模式應(yīng)用于Android開發(fā)的各個方面,以及如何使用它們協(xié)助實現(xiàn)最佳實踐。
1.本書以Android應(yīng)用程序的功能為例,深入講解各種設(shè)計模式;
2.內(nèi)容通俗易懂,講解循循善誘,并且結(jié)合實戰(zhàn)來幫助讀者學(xué)以致用;
3.本書并不局限于經(jīng)典的23種設(shè)計模式,還包含了Android開發(fā)的方方面面,使讀者可以在掌握設(shè)計模式的同時學(xué)到Android中的一些重要知識;
4.提供源代碼文件以及彩圖文件下載。
長期以來,設(shè)計模式一直被視作解決常見軟件設(shè)計問題的有效途徑。各類設(shè)計模式提供了可復(fù)用的通用解決方案,用于解決常見的開發(fā)問題。Android開發(fā)平臺非常適合使用設(shè)計模式,不僅大量的應(yīng)用程序是用Java編寫的,而且SDK中的許多API也應(yīng)用了設(shè)計模式。
本書作者將設(shè)計模式融入Android開發(fā)實踐,猶如牛奶與巧克力的交融,讓人意猶未盡,驚嘆其優(yōu)雅、靈活的實現(xiàn)方式,并忍不住想要親自嘗試。通過閱讀本書,你甚至可以創(chuàng)造出屬于自己的設(shè)計模式。
●構(gòu)建簡單的應(yīng)用程序,并在真實設(shè)備和虛擬設(shè)備上運行它
●探索Android Studio針對Material Design提供的WYSIWYG和XML方法
●使用觸摸屏監(jiān)聽器、手勢檢測和讀傳感器來檢測用戶活動
●應(yīng)用轉(zhuǎn)換和共享元素來優(yōu)雅地顯示動畫,并高效地利用移動設(shè)備的屏幕空間
●開發(fā)一個應(yīng)用程序,可以使用指定資源目錄,自動為不同設(shè)備匹配合適的布局
●將應(yīng)用程序連接到社交媒體來推廣產(chǎn)品
●利用AppCompat支持庫,使應(yīng)用程序觸達更多潛在用戶
凱爾·繆(Kyle Mew)
自20世紀80年代初開始從事編程工作,并為多家技術(shù)網(wǎng)站撰稿。除此書外,他還撰寫了與Android開發(fā)相關(guān)的3部廣播劇和3本書。
【譯者簡介】
李玥
畢業(yè)于吉林大學(xué),百度高級研發(fā)工程師,百度APP搜索Topic的一員,參與過多個應(yīng)用程序、插件、SDK的Android端開發(fā),包括百度APP、簡單搜索、百度暢聽、圖搜插件、語音SDK、全景渲染SDK、Pose相機、百糯連等。項目經(jīng)驗豐富,熱衷鉆研技術(shù)。
第 1章 設(shè)計模式 1
1.1 如何使用本書 2
1.2 我們將構(gòu)建什么 3
1.2.1 場景 3
1.2.2 問題 3
1.2.3 解決方案 3
1.3 目標平臺版本 4
1.4 支持庫 6
1.5 工廠模式 6
1.6 運行和測試應(yīng)用程序 10
1.6.1 連接到真機 11
1.6.2 連接到模擬器 11
1.6.3 監(jiān)控設(shè)備 12
1.7 抽象工廠模式 14
1.8 小結(jié) 19
第 2章 創(chuàng)建型模式 20
2.1 應(yīng)用主題 21
2.2 定制顏色和文本 23
2.2.1 使用調(diào)色板 23
2.2.2 定制文本 24
2.3 添加圖像資源 24
2.3.1 管理屏幕密度 25
2.3.2 使用指定資源 26
2.4 創(chuàng)建卡片視圖 27
2.4.1 了解卡片視圖的屬性 27
2.4.2 應(yīng)用CardView參數(shù) 29
2.4.3 更新工廠模式 34
2.5 應(yīng)用建造者模式 35
2.6 小結(jié) 38
第3章 Material模式 39
3.1 應(yīng)用程序欄 39
3.1.1 圖像資源 42
3.1.2 使用動作 44
3.1.3 應(yīng)用程序欄結(jié)構(gòu) 45
3.2 導(dǎo)航抽屜 46
3.2.1 抽屜結(jié)構(gòu) 47
3.2.2 比例關(guān)鍵設(shè)計線 50
3.2.3 激活抽屜 52
3.2.4 添加碎片 54
3.2.5 右側(cè)抽屜 54
3.3 單例模式 55
3.4 小結(jié) 57
第4章 布局模式 58
4.1 線性布局 58
4.2 相對布局 62
4.3 屏幕旋轉(zhuǎn) 65
4.4 大屏幕布局 69
4.4.1 寬度限定符 70
4.4.2 布局別名 71
4.5 策略模式 73
4.6 小結(jié) 78
第5章 結(jié)構(gòu)型模式 80
5.1 生成列表 81
5.2 列表項的布局 82
5.3 連接數(shù)據(jù) 83
5.4 翻譯字符串資源 84
5.5 適配器模式 87
5.6 橋接模式 92
5.7 外觀模式 94
5.8 標準模式 97
5.9 小結(jié) 102
第6章 活動模式 104
6.1 可折疊工具欄 105
6.2 應(yīng)用數(shù)據(jù)工廠模式 109
6.3 定位列表項布局 111
6.4 將工廠與RecyclerView一起使用 113
6.5 添加分隔符 116
6.6 配置懸浮按鈕 118
6.7 對話框建造者 121
6.8 添加滑動操作和取消操作 125
6.9 構(gòu)建布局建造者 127
6.10 小結(jié) 134
第7章 混合模式 135
7.1 概述規(guī)范 136
7.2 原型模式 137
7.2.1 設(shè)置原型模式 137
7.2.2 應(yīng)用原型模式 141
7.3 裝飾者模式 142
7.3.1 設(shè)置裝飾者模式 142
7.3.2 應(yīng)用裝飾者模式 144
7.3.3 擴展裝飾者模式 145
7.4 三明治建造者模式 146
7.4.1 應(yīng)用模式 146
7.4.2 連接到UI 149
7.5 選擇模式 152
7.6 添加裝飾者模式 153
7.6.1 附加模式 153
7.6.2 將模式連接到UI 155
7.7 小結(jié) 158
第8章 組合模式 159
8.1 組合模式 159
8.2 布局的組合器 163
8.2.1 添加組件 164
8.2.2 創(chuàng)建組合 167
8.2.3 創(chuàng)建組合布局 169
8.2.4 在運行時格式化布局 170
8.3 存儲選項 173
8.3.1 創(chuàng)建靜態(tài)文件 173
8.3.2 創(chuàng)建和編輯應(yīng)用程序文件 175
8.4 存儲用戶偏好 178
8.4.1 活動生命周期 178
8.4.2 應(yīng)用偏好 179
8.4.3 添加唯一標識符 184
8.5 小結(jié) 185
第9章 觀察者模式 187
9.1 觀察者模式 188
9.1.1 創(chuàng)建模式 188
9.1.2 添加通知 191
9.1.3 觀察者和被觀察者工具類 193
9.2 通知 195
9.2.1 設(shè)置intent 195
9.2.2 自定義和配置通知 197
9.2.3 可見性和優(yōu)先級 199
9.3 服務(wù) 201
9.4 小結(jié) 204
第 10章 行為型模式 205
10.1 模板模式 205
10.1.1 擴展模板 210
10.1.2 策略模式 215
10.2 訪問者模式 216
10.3 狀態(tài)模式 221
10.4 小結(jié) 225
第 11章 可穿戴模式 226
11.1 Android TV 227
11.1.1 TV 主屏幕 228
11.1.2 TV MVP模式 230
11.1.3 TV 應(yīng)用程序結(jié)構(gòu) 231
11.1.4 推薦卡片 232
11.2 Android Wear 234
11.2.1 配對可穿戴設(shè)備 235
11.2.2 管理屏幕形狀 237
11.2.3 可穿戴通知 238
11.2.4 讀傳感器 239
11.3 Android Auto 241
11.3.1 Auto安全注意事項 242
11.3.2 配置Auto應(yīng)用程序 243
11.4 小結(jié) 244
第 12章 社交模式 245
12.1 添加Web頁面 246
12.1.1 包含鏈接 247
12.1.2 配置WebSettings和JavaScript 247
12.1.3 為WebView編寫HTML 249
12.2 連接Facebook 250
12.2.1 添加Facebook SDK 250
12.2.2 獲取Facebook應(yīng)用程序ID 251
12.2.3 添加LikeView 253
12.3 內(nèi)容建造者 255
12.4 整合Twitter 257
12.5 小結(jié) 259
第 13章 分發(fā)模式 260
13.1 擴展平臺范圍 260
13.2 發(fā)布應(yīng)用程序 262
13.2.1 生成簽名的APK 263
13.2.2 注冊成為開發(fā)者 264
13.2.3 在Google Play商店發(fā)布應(yīng)用程序 265
13.2.4 通過電子郵件和網(wǎng)站發(fā)行 266
13.3 應(yīng)用程序推廣和盈利 266
13.3.1 應(yīng)用程序推廣 266
13.3.2 應(yīng)用程序盈利 268
13.3.3 應(yīng)用程序內(nèi)計費 268
13.3.4 接入廣告 269
13.4 小結(jié) 271