android開(kāi)發(fā)進(jìn)階 從小工到專(zhuān)家是一本Android開(kāi)發(fā)進(jìn)階書(shū)籍,由Android工程師何紅輝編著。本書(shū)結(jié)合作者多年開(kāi)發(fā)經(jīng)驗(yàn)的總結(jié),把作者以前開(kāi)發(fā)走過(guò)的坑和陷阱講解出來(lái),看了以后可以少走很多彎路,提升自己的開(kāi)發(fā)能力很快,抓住開(kāi)發(fā)的痛點(diǎn)和需求講解內(nèi)容,使讀者閱讀后很有成就感。全書(shū)除了全面講解了Android開(kāi)發(fā)知識(shí)外,還對(duì)單元測(cè)試、代碼規(guī)范、版本控制、重構(gòu)、架構(gòu)等重要知識(shí)點(diǎn)進(jìn)行了講解,使得讀者在深入技術(shù)的同時(shí)開(kāi)闊眼界,能夠以更專(zhuān)業(yè)的方式設(shè)計(jì)應(yīng)用軟件,完成從只會(huì)實(shí)現(xiàn)功能的“碼農(nóng)”到軟件工程師、設(shè)計(jì)師的過(guò)渡。
《android開(kāi)發(fā)進(jìn)階 從小工到專(zhuān)家》的主要內(nèi)容為:構(gòu)成Android系統(tǒng)基石的四大組件、創(chuàng)造出豐富多彩的UI設(shè)計(jì)的控件、保證App流暢的多線程開(kāi)發(fā)、必知必會(huì)的HTTP網(wǎng)絡(luò)請(qǐng)求應(yīng)用、數(shù)據(jù)存儲(chǔ)的核心SQLite數(shù)據(jù)庫(kù)、讓程序的性能優(yōu)化、讓程序更整潔的代碼規(guī)范、管理程序的好幫手Git版本控制,以及需要掌握的高級(jí)技術(shù),如單元測(cè)試、六大原則與設(shè)計(jì)模式、重構(gòu)和綜合實(shí)戰(zhàn)等。本書(shū)適合Android開(kāi)發(fā)初學(xué)者、程序員學(xué)習(xí),也適合作為大中專(zhuān)院校相關(guān)專(zhuān)業(yè)的師生用書(shū)和培訓(xùn)學(xué)校的教材。
2、如果打不開(kāi)本文件,請(qǐng)務(wù)必下載pdf閱讀器
3、安裝后,在打開(kāi)解壓得出的pdf文件
4、雙擊進(jìn)行閱讀試讀
收起介紹展開(kāi)介紹

內(nèi)容介紹
《android開(kāi)發(fā)進(jìn)階 從小工到專(zhuān)家》是一本專(zhuān)門(mén)介紹Android開(kāi)發(fā)的圖書(shū)。書(shū)中首先對(duì)Android開(kāi)發(fā)的核心知識(shí)點(diǎn)進(jìn)行深入講解,然后介紹單元測(cè)試、代碼規(guī)范、版本控制、重構(gòu)、架構(gòu)等重要的知識(shí),使得讀者在深入掌握技術(shù)的同時(shí)也幫助他們開(kāi)闊眼界,且能夠以更專(zhuān)業(yè)的方式設(shè)計(jì)應(yīng)用軟件,完成從只會(huì)實(shí)現(xiàn)功能的初級(jí)程序員到軟件工程師、設(shè)計(jì)師的轉(zhuǎn)變。《android開(kāi)發(fā)進(jìn)階 從小工到專(zhuān)家》的主要內(nèi)容為:構(gòu)成Android系統(tǒng)基石的四大組件、創(chuàng)造出豐富多彩的UI設(shè)計(jì)的控件、保證App流暢的多線程開(kāi)發(fā)、必知必會(huì)的HTTP網(wǎng)絡(luò)請(qǐng)求應(yīng)用、數(shù)據(jù)存儲(chǔ)的核心SQLite數(shù)據(jù)庫(kù)、讓程序的性能優(yōu)化、讓程序更整潔的代碼規(guī)范、管理程序的好幫手Git版本控制,以及需要掌握的高級(jí)技術(shù),如單元測(cè)試、六大原則與設(shè)計(jì)模式、重構(gòu)和綜合實(shí)戰(zhàn)等。本書(shū)適合Android開(kāi)發(fā)初學(xué)者、程序員學(xué)習(xí),也適合作為大中專(zhuān)院校相關(guān)專(zhuān)業(yè)的師生用書(shū)和培訓(xùn)學(xué)校的教材。
章節(jié)目錄
第1章 Android的構(gòu)成基石—四大組件 1 1.1 Activity 1 1.1.1 Activity的構(gòu)成 3 1.1.2 Activity的4種啟動(dòng)模式 5 1.1.3 FragmentActivity與Fragment 7 1.2 Service與AIDL 8 1.2.1 普通Service 8 1.2.2 IntentService 9 1.2.3 運(yùn)行在前臺(tái)的Service 10 1.2.4 AIDL(Android接口描述語(yǔ)言) 11 1.3 Broadcast(廣播) 17 1.3.1 普通廣播 17 1.3.2 有序廣播 18 1.3.3 本地廣播 19 1.3.4 sticky廣播 19 1.4 ContentProvider(外共享數(shù)據(jù)) 19 1.5 小結(jié) 26 第2章 創(chuàng)造出豐富多彩的UI— View與動(dòng)畫(huà) 27 2.1 重要的View控件 27 2.1.1 ListView與GridView 27 2.1.2 數(shù)據(jù)展示更好的實(shí)現(xiàn)—— RecyclerView 32 2.1.3 讓頁(yè)面顯示更流暢——ViewPager 33 2.2 必須掌握的最重要的技能— 自定義控件 35 2.2.1 最為自由的一種實(shí)現(xiàn)——自定義View 36 2.2.2 View的尺寸測(cè)量 38 2.2.3 Canvas與Paint(畫(huà)布與畫(huà)筆) 42 2.2.4 自定義ViewGroup 45 2.3 Scroller的使用 46 2.4 讓?xiě)?yīng)用更精彩—?jiǎng)赢?huà) 56 2.4.1 幀動(dòng)畫(huà) 57 2.4.2 補(bǔ)間動(dòng)畫(huà) 58 2.4.3 屬性動(dòng)畫(huà) 60 2.4.3.1 屬性動(dòng)畫(huà)的核心類(lèi)—— ValueAnimator 60 2.4.3.2 對(duì)任意屬性進(jìn)行動(dòng)畫(huà)操作—— Object Animator 61 2.4.3.3 實(shí)現(xiàn)豐富多彩的動(dòng)畫(huà)效果—— AnimatorSet 62 2.4.3.4 動(dòng)畫(huà)執(zhí)行時(shí)間——TypeEvaluator與TimeInterpolator 63 2.5 小結(jié) 66 第3章 保證App流暢的關(guān)鍵因素— 多線程 67 3.1 Android中的消息機(jī)制 67 3.1.1 處理消息的手段——Handler、Looper與MessageQueue 67 3.1.2 在子線程中創(chuàng)建Handler為何 會(huì)拋出異常 72 3.2 Android中的多線程 73 3.2.1 多線程的實(shí)現(xiàn)——Thread和Runnable 73 3.2.2 線程的wait、sleep、join和 yield 74 3.2.3 與多線程相關(guān)的方法——Callable、Future和FutureTask 78 3.2.4 構(gòu)建服務(wù)器應(yīng)用程序的有效 方法——線程池 81 3.2.4.1 啟動(dòng)指定數(shù)量的線程—— ThreadPoolExecutor 82 3.2.4.2 定時(shí)執(zhí)行一些任務(wù)——Scheduled ThreadPoolExecutor 85 3.2.4.3 線程池的使用準(zhǔn)則 86 3.2.5 同步集合 87 3.2.5.1 程序中的優(yōu)化策略—— CopyOnWriteArrayList 87 3.2.5.2 提高并發(fā)效率—— ConcurrentHashMap 88 3.2.5.3 有效的方法—— BlockingQueue 88 3.2.6 同步鎖 89 3.2.6.1 同步機(jī)制關(guān)鍵字—— synchronized 89 3.2.6.2 顯示鎖—— ReentrantLock與 Condition 90 3.2.6.3 信號(hào)量Semaphore 93 3.2.6.4 循環(huán)柵欄CyclicBarrier 94 3.2.6.5 閉鎖CountDownLatch 95 3.2.7 創(chuàng)建異步任務(wù)更簡(jiǎn)單—— AysncTask的原理 97 3.2.7.1 AsyncTask的實(shí)現(xiàn)基本原理 97 3.2.7.2 實(shí)現(xiàn)一個(gè)簡(jiǎn)單的AsyncTask 105 3.3 小結(jié) 108 第4章 HTTP網(wǎng)絡(luò)請(qǐng)求 109 4.1 HTTP網(wǎng)絡(luò)請(qǐng)求原理 109 4.1.1 HTTP的請(qǐng)求方式 110 4.1.1.1 GET請(qǐng)求 110 4.1.1.2 POST請(qǐng)求 110 4.1.1.3 PUT請(qǐng)求 111 4.1.1.4 DELETE請(qǐng)求 111 4.1.1.5 HEAD請(qǐng)求 112 4.1.1.6 TRACE請(qǐng)求 112 4.1.1.7 OPTIONS請(qǐng)求 113 4.1.2 HTTP報(bào)文格式解析 113 4.1.2.1 響應(yīng)報(bào)文 116 4.1.2.2 常見(jiàn)的請(qǐng)求頭部 117 4.1.3 簡(jiǎn)單模擬HTTP服務(wù)器 117 4.2 Android中執(zhí)行網(wǎng)絡(luò)請(qǐng)求 126 4.2.1 全面支持HTTP協(xié)議—— HttpClient 126 4.2.2 最佳選擇——HttpURLConnection 128 4.3 網(wǎng)絡(luò)框架的設(shè)計(jì)與實(shí)現(xiàn) 130 4.3.1 SimpleNet的基本架構(gòu) 130 4.3.2 Request類(lèi) 131 4.3.3 Response類(lèi) 135 4.3.4 請(qǐng)求隊(duì)列 136 4.3.5 NetworkExecutor網(wǎng)絡(luò)執(zhí)行器 137 4.3.6 執(zhí)行網(wǎng)絡(luò)請(qǐng)求的接口—— HttpStack 139 4.3.7 將請(qǐng)求的回調(diào)執(zhí)行到UI線程—— ResponseDelivery 142 4.3.8 手動(dòng)實(shí)現(xiàn)文件上傳 144 4.3.8.1 自定義實(shí)現(xiàn)MultipartEntity 144 4.3.8.2 SimpleNet中實(shí)現(xiàn)文件上傳 149 4.4 小結(jié) 151 第5章 獨(dú)特高效的數(shù)據(jù)存儲(chǔ)—SQLite 數(shù)據(jù)庫(kù) 152 5.1 SQLite3的基本介紹 152 5.1.1 SQLite前端解析系統(tǒng) 153 5.1.2 SQLite后端引擎 154 5.2 SQLite中的SQL語(yǔ)句 154 5.2.1 創(chuàng)建數(shù)據(jù)庫(kù) 154 5.2.2 創(chuàng)建表 154 5.2.3 插入數(shù)據(jù) 159 5.2.4 select語(yǔ)句 161 5.2.5 update語(yǔ)句 168 5.2.6 delete語(yǔ)句 169 5.2.7 修改表 169 5.2.8 創(chuàng)建索引 170 5.2.9 創(chuàng)建視圖 171 5.2.10 創(chuàng)建觸發(fā)器 171 5.2.11 drop命令 172 5.3 Android中的數(shù)據(jù)庫(kù)開(kāi)發(fā) 173 5.3.1 數(shù)據(jù)庫(kù)基本類(lèi)型與接口 173 5.3.2 Android數(shù)據(jù)庫(kù)使用示例 177 5.3.3 數(shù)據(jù)庫(kù)升級(jí) 181 5.3.4 Android中數(shù)據(jù)庫(kù)的異步操作 181 5.4 數(shù)據(jù)庫(kù)框架ActiveAndroid的使用與 基本原理 184 5.4.1 使用ActiveAndroid 184 5.4.2 數(shù)據(jù)庫(kù)升級(jí) 188 5.4.3 基本原理 189 5.5 小結(jié) 196 第6章 讓程序更優(yōu)秀的技術(shù)—性能 優(yōu)化 197 6.1 布局優(yōu)化 197 6.1.1 include布局 197 6.1.2 merge標(biāo)簽 201 6.1.3 ViewStub視圖 204 6.1.4 減少視圖樹(shù)層級(jí) 209 6.2 內(nèi)存優(yōu)化 211 6.3 內(nèi)存泄漏 216 6.3.1 使用 Memory Monitor 216 6.3.2 內(nèi)存泄漏檢測(cè)利器—— LeakCanary 218 6.4 性能優(yōu)化 222 6.4.1 過(guò)度繪制 222 6.4.2 Android 圖形渲染 223 6.4.3 數(shù)據(jù)采集和分析工具—— TraceView 227 6.5 小結(jié) 231 第7章 裝點(diǎn)程序“門(mén)面”—代碼規(guī)范 232 7.1 代碼規(guī)范的第一個(gè)重點(diǎn)—排版 232 7.1.1 代碼縮進(jìn) 232 7.1.2 長(zhǎng)句分割 233 7.1.3 一句一行 233 7.1.4 大括號(hào) 233 7.1.5 空行分隔 234 7.1.6 空行分隔 234 7.1.7 數(shù)據(jù)與函數(shù)的排布 235 7.1.8 修飾詞順序 235 7.2 注釋 235 7.2.1 類(lèi)注釋 236 7.2.2 注釋的位置 236 7.2.3 函數(shù)的注釋 237 7.2.4 異常的注釋 237 7.3 命名 238 7.3.1 包的命名 238 7.3.2 類(lèi)與接口的命名 238 7.3.3 函數(shù)命名 238 7.3.4 setter和getter 238 7.3.5 字段名 239 7.3.6 字段名 239 7.4 編碼建議 239 7.4.1 beak語(yǔ)句 239 7.4.2 覆寫(xiě)時(shí)添加@Override 239 7.4.3 指定集合中的元素類(lèi)型 240 7.4.4 顯示指明操作符優(yōu)先級(jí) 240 7.5 小結(jié) 240 第8章 讓不斷升級(jí)的系統(tǒng)更好管理— Git版本控制 241 8.1 Git起源 243 8.2 Git基本原理 243 8.2.1 直接記錄快照,而非差異 比較 243 8.2.2 近乎所有操作都是本地執(zhí)行 244 8.2.3 時(shí)刻保持?jǐn)?shù)據(jù)完整性 245 8.2.4 多數(shù)操作僅添加數(shù)據(jù) 245 8.2.5 文件的3種狀態(tài) 245 8.3 Git基本配置 246 8.4 Git基本命令 247 8.4.1 進(jìn)行版本控制的第一步—— Git init 248 8.4.2 常用的版本控制命令—— Git status 248 8.4.3 添加到追蹤列表中——Git add 248 8.4.4 提交——Git commit 249 8.4.5 查看項(xiàng)目歷史記錄——Git log 250 8.4.6 下載程序——Git clone 250 8.4.7 不同分支——Git branch 251 8.4.8 簽出一個(gè)分支——Git checkout 251 8.4.9 合并分支——Git merge 253 8.4.10 解決沖突 254 8.4.11 為版本打一個(gè)標(biāo)簽——Git tag 255 8.4.12 幫助文檔——Git help 256 8.5 項(xiàng)目協(xié)作—GitHub 256 8.5.1 SSH key配置 257 8.5.2 項(xiàng)目托管——it remote 258 8.5.3 將項(xiàng)目推送到遠(yuǎn)程倉(cāng)庫(kù)—— Git push 259 8.5.4 更新最代碼——Git pull 260 8.5.5 Giti gnore忽略文件 261 8.5.6 Fork 加Pull request多人協(xié)作 模式 262 第9章 開(kāi)發(fā)人員必備的技能— 單元測(cè)試 267 9.1 什么是單元測(cè)試 267 9.2 為什么要做單元測(cè)試 267 9.3 不寫(xiě)單元測(cè)試的借口 268 9.4 如何寫(xiě)單元測(cè)試 269 9.4.1 第一個(gè)單元測(cè)試 269 9.4.2 Junit簡(jiǎn)介 272 9.4.2.1 Junit執(zhí)行流程 273 9.4.2.2 Junit的斷言和失敗提示 273 9.4.2.3 運(yùn)行多個(gè)測(cè)試類(lèi)—— TestSuite 274 9.5 測(cè)試哪些內(nèi)容 275 9.5.1 邊界條件 275 9.5.2 覆蓋執(zhí)行路徑 275 9.6 模擬所需的功能模塊—Mock 對(duì)象 278 9.6.1 手動(dòng)Mock對(duì)象 278 9.6.2 使用Mockito庫(kù) 279 9.6.2.1 驗(yàn)證某些行為 280 9.6.2.2 如何做一些測(cè)試樁(Stub) 280 9.6.2.3 參數(shù)匹配器 281 9.6.2.4 驗(yàn)證函數(shù)的確切調(diào)用次數(shù)、 最少調(diào)用、從未調(diào)用 281 9.6.2.5 確保交互操作沒(méi)有執(zhí)行 在Mock對(duì)象上 282 9.6.2.6 簡(jiǎn)化Mock對(duì)象的創(chuàng)建 282 9.6.2.7 為連續(xù)的調(diào)用做測(cè)試 樁(stub) 283 9.6.2.8 為回調(diào)做測(cè)試樁 283 9.6.2.9 doReturn()、doThrow()、 doAnswer()、doNothing() 和doCallRealMethod()系列 方法的運(yùn)用 283 9.6.2.10 監(jiān)控真實(shí)對(duì)象 284 9.6.2.11 為下一步的斷言捕獲參數(shù) 285 9.6.2.12 綜合示例演練 285 9.7 Android中的單元測(cè)試 288 9.7.1 第一個(gè)單元測(cè)試 288 9.7.2 使用Instrumentation測(cè)試 290 9.7.2.1 需要Context的測(cè)試用例 290 9.7.2.2 測(cè)試Activity 290 9.7.2.3 測(cè)試Service 293 9.7.2.4 測(cè)試ContentProvider 295 9.8 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(TDD)簡(jiǎn)介 298 9.9 小結(jié) 300 第10章 六大原則與設(shè)計(jì)模式 301 10.1 面向?qū)ο罅笤瓌t 301 10.1.1 單一職責(zé)原則 301 10.1.2 里氏替換原則 302 10.1.3 依賴(lài)倒置原則 304 10.1.4 開(kāi)閉原則 304 10.1.5 接口隔離原則 306 10.1.6 迪米特原則 308 10.2 設(shè)計(jì)模式 309 10.3 避免掉進(jìn)過(guò)度設(shè)計(jì)的怪圈 310 10.4 反模式 311 10.5 小結(jié) 311 第11章 使系統(tǒng)適應(yīng)變化—重構(gòu) 312 11.1 為什么要重構(gòu) 312 11.2 什么時(shí)候重構(gòu) 313 11.3 常用的重構(gòu)手法 313 11.3.1 提取子函數(shù) 313 11.3.2 上移函數(shù)到父類(lèi) 316 11.3.3 下移函數(shù)到子類(lèi) 318 11.3.4 封裝固定的調(diào)用邏輯 320 11.3.5 使用泛型去除重復(fù)邏輯 320 11.3.6 使用對(duì)象避免過(guò)多的參數(shù) 322 11.3.7 重構(gòu)的支柱——轉(zhuǎn)移函數(shù) 324 11.3.8 將類(lèi)型碼的轉(zhuǎn)為狀態(tài)模式 326 11.3.9 什么也不做的對(duì)象——NullObject 模式 329 11.3.10 使類(lèi)保持“苗條身材”——分解“胖”類(lèi)型 331 11.4 小結(jié) 334 第12章 從碼農(nóng)歷練成工程師— 綜合實(shí)戰(zhàn) 335 12.1 項(xiàng)目需求 335 12.2 第一版實(shí)現(xiàn) 336 12.3 第一版存在的問(wèn)題與重構(gòu) 352 12.3.1 類(lèi)型重命名 352 12.3.2 去除重復(fù)代碼 353 12.3.3 簡(jiǎn)化復(fù)雜的函數(shù) 356 12.3.4 明確職責(zé)與降低耦合 358 12.4 降低復(fù)雜性—MVP架構(gòu) 362 12.5 開(kāi)啟單元測(cè)試之路— 添加單元測(cè)試 367 12.5.1 創(chuàng)建測(cè)試工程 367 12.5.2 測(cè)試網(wǎng)絡(luò)請(qǐng)求解析類(lèi) 369 12.5.3 測(cè)試數(shù)據(jù)庫(kù)操作類(lèi) 371 12.5.4 測(cè)試業(yè)務(wù)邏輯Presenter 374 12.5.5 模擬對(duì)象 375 12.5.6 更多測(cè)試 377 12.6 小結(jié) 378
使用說(shuō)明
1、下載并解壓,得出pdf文件2、如果打不開(kāi)本文件,請(qǐng)務(wù)必下載pdf閱讀器
3、安裝后,在打開(kāi)解壓得出的pdf文件
4、雙擊進(jìn)行閱讀試讀
- 下載地址
android開(kāi)發(fā)進(jìn)階 從小工到專(zhuān)家 何紅輝 pdf掃描版
- 本地下載通道:
- 浙江電信下載
- 北京聯(lián)通下載
- 江蘇電信下載
- 廣東電信下載
有問(wèn)題? 點(diǎn)此報(bào)錯(cuò)
發(fā)表評(píng)論
0條評(píng)論軟件排行榜
- 102j331地溝及蓋板圖集
- 212j201平屋面建筑構(gòu)造圖集 pdf電子版
- 3機(jī)械設(shè)計(jì)手冊(cè)軟件版 v3.0破解版 附安裝教程
- 4欄桿圖集15j403-1 pdf電子版
- 5建筑電氣工程施工質(zhì)量驗(yàn)收規(guī)范gb50303-2015 pdf電子版
- 6421頁(yè)pdf完整版
- 7高效能人士的七個(gè)習(xí)慣(30周年紀(jì)念版) pdf+epub高清版
- 816j914-1公用建筑衛(wèi)生間圖集 pdf電子版
- 905s502室外給水管道附屬構(gòu)筑物圖集
- 10工程地質(zhì)手冊(cè)第五版pdf高清電子版
熱門(mén)推薦
有柿電腦版 v11.8.9121.22M / 簡(jiǎn)體中文
南方Plus電腦版 v12.3.024.02M / 簡(jiǎn)體中文
網(wǎng)易云閱讀電腦版 v6.7.226.41M / 簡(jiǎn)體中文
數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡(jiǎn)體中文
吉利博瑞用戶(hù)手冊(cè) pdf高清版57.89M / 簡(jiǎn)體中文
未公開(kāi)的Oracle數(shù)據(jù)庫(kù)秘密 迪貝斯pdf掃描版34.69M / 簡(jiǎn)體中文
PHP語(yǔ)言精粹電子書(shū) pdf掃描版25.72M / 簡(jiǎn)體中文
本草綱目 5.34M / 簡(jiǎn)體中文
docker入門(mén)實(shí)戰(zhàn) pdf完整版1.38M / 簡(jiǎn)體中文
C++多核高級(jí)編程 修斯pdf掃描版57.21M / 簡(jiǎn)體中文