産品特色
編輯推薦
CSDN社區專傢精心撰寫、業界專傢鄧凡平、郭霖、任玉剛、徐宜生等鼎力推薦Android源碼講解設計模式的書
《Android 源碼設計模式解析與實戰》不僅分析瞭Android源代碼的設計模式,更結閤實例演示瞭如何使用這些設計模式。看這本書,既能學到如何分析、學習Android源代碼,又能提高自己架構設計水平
書中的主人公小民就是那些不斷追求技術進步,從而得以不斷成長的IT技術人的代錶,小民的成長過程基本上反映瞭我們現在程序員的成長經曆,他的成功很值得我們學習和藉鑒。
內容簡介
MVP模式。主要內容為:優化代碼的首步、開閉原則、裏氏替換原則、依賴倒置原則、接口隔離原則、迪米特原則、單例模式、Builder模式、原型模式、工廠方法模式、抽象工廠模式、策略模式、狀態模式、責任鏈模式、解釋器模式、命令模式、觀察者模式、備忘錄模式、迭代器模式、模闆方法模式、訪問者模式、中介者模式、代理模式、組閤模式、適配器模式、裝飾模式、享元模式、外觀模式、橋接模式,以及MVC的介紹與實戰和MVP應用架構模式。每個章節都對某個模式做瞭深入的分析,並且會對模式相關的技術點進行深入拓展,讓讀者在掌握模式的同時學習到Android中的一些重要知識,通過實戰幫助讀者達到學以緻用的目的,且能夠將模式運用於項目中,開發齣高質量的程序。
《Android 源碼設計模式解析與實戰》適閤的讀者為初、中、高級Android工程師,也可以作為大專院校相關師生的學習用書和培訓學校的教材。
作者簡介
CSDN博客專傢,在開源社區做瞭大量的工作,貢獻瞭許多模式設計的技術。
目錄
第1章 走嚮靈活軟件之路——
麵嚮對象的六大原則 1
1.1 優化代碼的第一步——
單一職責原則 1
1.2 讓程序更穩定、更靈活——
開閉原則 5
1.3 構建擴展性更好的係統——
裏氏替換原則 12
1.4 讓項目擁有變化的能力——
依賴倒置原則 13
1.5 係統有更高的靈活性——
接口隔離原則 16
1.6 更好的可擴展性——
迪米特原則 18
1.7 總結 22
第2章 應用最廣的模式——單例模式 23
2.1 單例模式介紹 23
2.2 單例模式的定義 23
2.3 單例模式的使用場景 23
2.4 單例模式UML類圖 23
2.5 單例模式的簡單示例 24
2.6 單例模式的其他實現方式 26
2.6.1 懶漢模式 26
2.6.2 Double CheckLock ( DCL )
實現單例 26
2.6.3 靜態內部類單例模式 27
2.6.4 枚舉單例 28
2.6.5 使用容器實現單例模式 28
2.7 Android源碼中的單例模式 29
2.8 無名英雄——深入理解
LayoutInflater 33
2.9 運用單例模式 40
2.10 總結 42
第3章 自由擴展你的項目——
Builder模式 43
3.1 Builder模式介紹 43
3.2 Builder模式的定義 43
3.3 Builder模式的使用場景 43
3.4 Builder模式的UML類圖 43
3.5 Builder模式的簡單實現 44
3.6 Android源碼中的Builder模式實現 46
3.7 深入瞭解WindowManager 52
3.8 Builder模式實戰 59
3.9 總結 64
第4章 使程序運行更高效——
原型模式 66
4.1 原型模式介紹 66
4.2 原型模式的定義 66
4.3 原型模式的使用場景 66
4.4 原型模式的UML類圖 66
4.5 原型模式的簡單實現 67
4.6 淺拷貝和深拷貝 69
4.7 Android源碼中的原型模式實現 72
4.8 Intent的查找與匹配 74
4.8.1 App信息錶的構建 74
4.8.2 精確匹配 80
4.9 原型模式實戰 83
4.10 總結 85
第5章 應用最廣泛的模式——
工廠方法模式 87
5.1 工廠方法模式介紹 87
5.2 工廠方法模式的定義 87
5.3 工廠方法模式的使用場景 87
5.4 工廠方法模式的UML類圖 87
5.5 模式的簡單實現 90
5.6 Android源碼中的工廠方法模式實現 93
5.7 關於onCreate方法 95
5.8 工廠方法模式實戰 102
5.9 總結 105
第6章 創建型設計模式——
抽象工廠模式 106
6.1 抽象工廠模式介紹 106
6.2 抽象工廠模式的定義 106
6.3 抽象工廠模式的使用場景 106
6.4 抽象工廠模式的UML類圖 106
6.5 抽象工廠方法模式的簡單實現 109
6.6 Android源碼中的抽象工廠
方法模式實現 112
6.7 總結 116
第7章 時勢造英雄——策略模式 117
7.1 策略模式介紹 117
7.2 策略模式的定義 117
7.3 策略模式的使用場景 117
7.4 策略模式的UML類圖 118
7.5 策略模式的簡單實現 118
7.6 Android源碼中的策略模式實現 123
7.6.1 時間插值器 123
7.6.2 動畫中的時間插值器 124
7.7 深入屬性動畫 128
7.7.1 屬性動畫體係的總體設計 128
7.7.2 屬性動畫的核心類介紹 128
7.7.3 基本使用 129
7.7.4 流程圖 130
7.7.5 詳細設計 131
7.7.6 核心原理分析 131
7.8 策略模式實戰應用 142
7.9 總結 144
第8章 隨遇而安——狀態模式 145
8.1 狀態模式介紹 145
8.2 狀態模式的定義 145
8.3 狀態模式的使用場景 145
8.4 狀態模式的UML類圖 145
8.5 狀態模式的簡單示例 146
8.6 Wi-Fi管理中的狀態模式 150
8.7 狀態模式實戰 159
8.8 總結 164
第9章 使編程更有靈活性——
責任鏈模式 165
9.1 責任鏈模式介紹 165
9.2 責任鏈模式的定義 165
9.3 責任鏈模式的使用場景 165
9.4 責任鏈模式的UML類圖 165
9.5 責任鏈模式的簡單實現 170
9.6 Android源碼中的責任鏈模式實現 173
9.7 責任鏈模式實戰 178
9.8 總結 181
第10章 化繁為簡的翻譯機——
解釋器模式 182
10.1 解釋器模式介紹 182
10.2 解釋器模式的定義 182
10.3 解釋器模式的使用場景 183
10.4 解釋器模式的UML類圖 184
10.5 解釋器模式的簡單實現 185
10.6 Android源碼中的解釋器模式實現 189
10.7 關於PackageManagerService 195
10.8 總結 203
第11章 讓程序暢通執行——
命令模式 204
11.1 命令模式介紹 204
11.2 命令模式的定義 204
11.3 命令模式的使用場景 204
11.4 命令模式的UML類圖 204
11.5 命令模式的簡單實現 207
11.6 Android源碼中的命令模式實現 211
11.7 Android事件輸入係統介紹 214
11.8 命令模式實戰 216
11.9 總結 223
第12章 解決、解耦的鑰匙——
觀察者模式 224
12.1 觀察者模式介紹 224
12.2 觀察者模式的定義 224
12.3 觀察者模式的使用場景 224
12.4 觀察者模式的UML類圖 224
12.5 觀察者模式的簡單實現 225
12.6 Android源碼分析 227
12.7 觀察者模式的深入拓展 230
12.8 實戰 238
12.9 總結 245
第13章 編程中的“後悔藥”——
備忘錄模式 247
13.1 備忘錄模式介紹 247
13.2 備忘錄模式的定義 247
13.3 備忘錄模式的使用場景 247
13.4 備忘錄模式的UML類圖 247
13.5 備忘錄模式的簡單示例 248
13.6 Android源碼中的備忘錄模式 250
13.7 深度拓展 257
13.7.1 onSaveInstanceState調用
的時機 257
13.7.2 使用V4包存儲狀態的bug 257
13.8 實戰 260
13.9 總結 267
第14章 解決問題的“第三者”——
迭代器模式 268
14.1 迭代器模式介紹 268
14.2 迭代器模式的定義 268
14.3 迭代器模式的使用場景 268
14.4 迭代器模式的UML類圖 268
14.5 模式的簡單實現 271
14.6 Android源碼中的模式實現 275
14.7 總結 277
第15章 抓住問題核心——
模闆方法模式 278
15.1 模闆方法模式介紹 278
15.2 模闆方法模式的定義 278
15.3 模闆方法模式的使用場景 278
15.4 模闆方法模式的UML類圖 278
15.5 模闆方法模式的簡單示例 279
15.6 Android源碼中的模闆方法模式 281
15.7 深度拓展 283
15.8 模闆方法實戰 296
15.9 總結 299
第16章 訪問者模式 301
16.1 訪問者模式介紹 301
16.2 訪問者模式的定義 301
16.3 訪問者模式的使用場景 301
16.4 訪問者模式的UML類圖 301
16.5 訪問者模式的簡單示例 302
16.6 Android源碼中的模式 306
16.7 訪問者模式實戰 309
16.8 總結 316
第17章 “和事佬”——中介者模式 317
17.1 中介者模式介紹 317
17.2 中介者模式的定義 318
17.3 中介者模式的使用場景 318
17.4 中介者模式的UML類圖 318
17.5 中介者模式的簡單實現 320
17.6 Android源碼中的中介者模式實現 324
17.7 中介者模式實戰 326
17.8 總結 329
第18章 編程好幫手——代理模式 330
18.1 代理模式介紹 330
18.2 代理模式的定義 330
18.3 代理模式的使用場景 330
18.4 代理模式的UML類圖 330
18.5 代理模式的簡單實現 332
18.6 Android源碼中的代理模式實現 336
18.7 Android中的Bin
精彩書摘
《Android 源碼設計模式解析與實戰》:
開閉原則的英文全稱是Open Close Principle,縮寫是OCP,它是Java世界裏最基礎的設計原則,它指導我們如何建立一個穩定的、靈活的係統。開閉原則的定義是:軟件中的對象(類、模塊、函數等)應該對於擴展是開放的,但是,對於修改是封閉的。在軟件的生命周期內,因為變化、升級和維護等原因需要對軟件原有代碼進行修改時,可能會將錯誤引入原本已經經過測試的舊代碼中,破壞原有係統。因此,當軟件需要變化時,我們應該盡量通過擴展的方式來實現變化,而不是通過修改已有的代碼來實現。當然,在現實開發中,隻通過繼承的方式來升級、維護原有係統隻是一個理想化的願景,因此,在實際的開發過程中,修改原有代碼、擴展代碼往往是同時存在的。
軟件開發過程中,最不會變化的就是變化本身。産品需要不斷地升級、維護,沒有一個産品從第一版本開發完就再沒有變化瞭,除非在下個版本誕生之前它已經被終止。而産品需要升級,修改原來的代碼就可能會引發其他的問題。那麼,如何確保原有軟件模塊的正確性,以及盡量少地影響原有模塊,答案就是,盡量遵守本章講述的開閉原則。
勃蘭特·梅耶在1988年齣版的《麵嚮對象軟件構造》一書中提齣這一原則——開閉原則。這一想法認為,程序一旦開發完成,程序中一個類的實現隻應該因錯誤而被修改,新的或者改變的特性應該通過新建不同的類實現,新建的類可以通過繼承的方式來重用原類的代碼。顯然,梅耶的定義提倡實現繼承,已存在的實現類對於修改是封閉的,但是新的實現類可以通過覆寫父類的接口應對變化。
……
前言/序言
Android 源碼設計模式解析與實戰 epub pdf mobi txt 電子書 下載 2024
Android 源碼設計模式解析與實戰 下載 epub mobi pdf txt 電子書
評分
☆☆☆☆☆
還不錯吧,可以看下學習下。
評分
☆☆☆☆☆
不懂,瞭解一下,不至於太落後於時代。
評分
☆☆☆☆☆
本書深入淺齣,詳細講解瞭Android開發的知識,主要內容包括:Android的體係架構、Android Studio、項目的創建、Android工程目錄、調試程序、界麵的搭建;常用的控件和屬性、提示信息Toast和Snackbar、點擊事件3種寫法等;Activity之間的跳轉、Activity生命周期、Activity啓動模式等;數據存儲、網絡編程;圖片的處理;復雜控件的使用;Fragment、廣播接收者、Service、動畫等;以及Android新特性、Kotlin語言、性能優化、屏幕適配、自定義控件、JNI/NDK開發等高級知識。並通過開發一個真實的項目讓讀者學以緻用。
評分
☆☆☆☆☆
大一試水,師兄師姐推薦的,應該不錯
評分
☆☆☆☆☆
二、 我隻愛愛我的人,因為我不懂怎樣去愛一個不愛我的人。---張小嫻《謝謝你離開我》
評分
☆☆☆☆☆
一、 這個世界很奇怪,人傢每次需要幫忙你都義不容辭,人傢並不會感激你,反而哪天不幫瞭還要埋怨你。而如果你一直不冷不熱,偶爾幫人一次,人立刻感恩戴德。所以說,有些不懂得感恩的人,韆萬不要天天對他好,隻有偶爾對他好一下,他纔會感激。
評分
☆☆☆☆☆
京東送貨很快,質量有保證,真是方便
評分
☆☆☆☆☆
正在學習中...講的內容還算是基礎的,適閤小白入門看。努力學習吧……
評分
☆☆☆☆☆
書講的還可以 物流給力 不錯