注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)重構(gòu)JavaScript

重構(gòu)JavaScript

重構(gòu)JavaScript

定 價(jià):¥88.00

作 者: [美] Evan Burchard 著
出版社: 中國電力出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787519823542 出版時間: 2018-10-01 包裝: 平裝
開本: 16開 頁數(shù): 400 字?jǐn)?shù):  

內(nèi)容簡介

  本書作者向你展示如何識別糟糕的代碼,然后通過多種重構(gòu)方法來改進(jìn)這些糟糕的代碼。采用的技術(shù)從重命名變量到運(yùn)用函數(shù)式和面向?qū)ο缶幊痰脑瓌t。如果你想在前后端寫出更好的JavaScript代碼,那么本書必不可少。 利用重構(gòu)來重新組織現(xiàn)有的代碼,而不改變它的行為。 了解重構(gòu)與質(zhì)量之間的關(guān)系。 探索現(xiàn)今使用的不同版本的JavaScript。 創(chuàng)建自動化測試以確保你的代碼可以工作,并且找到被遺漏掉的錯誤。 了解如何重構(gòu)簡單的JavaScript結(jié)構(gòu)、函數(shù)以及對象。 運(yùn)用面向?qū)ο蠛秃瘮?shù)式編程原則來重構(gòu)你的代碼。 重構(gòu)異步JavaScript的檢驗(yàn)方法。

作者簡介

  目錄 序 1 前言 3 第1章 重構(gòu)是什么? 13 你如何保證不改變行為? 13 如果不改變行為,重構(gòu)的目的是什么? 18 重構(gòu)是什么,不是什么 21 小結(jié) 22 第2章 你使用哪種JavaScript? 23 版本與規(guī)范 24 平臺與實(shí)現(xiàn) 25 預(yù)編譯語言 26 框架 27 庫 29 你需要什么JavaScript? 29 我們在用什么JavaScript? 30 小結(jié) 30 第3章 測試 31 為什么測試 34 測試的多種方法 35 工具和流程 43 小結(jié) 52 第4章 測試實(shí)踐 53 從零開始的代碼 55 采用測試驅(qū)動開發(fā)的從零開始的代碼 61 未經(jīng)測試的代碼與特性測試 80 調(diào)試和回歸測試 85 小結(jié) 93 第5章 基本重構(gòu)目標(biāo) 95 函數(shù)塊 98 輸入 101 輸出 106 副作用 109 上下文第一部分:隱式輸入 110 上下文第二部分:隱私 116 小結(jié) 128 第6章 重構(gòu)基本結(jié)構(gòu) 130 示例代碼132 我們的信心策略 135 重命名 137 無用的代碼 142 變量 148 字符串 157 使用數(shù)組:循環(huán)、forEach、映射 161 小結(jié) 167 第7章 重構(gòu)函數(shù)與對象 168 示例代碼(改進(jìn)后) 168 數(shù)組和對象的替代品 171 測試我們所擁有的 179 提取函數(shù)185 用全局對象簡化API 192 小結(jié) 246 第8章 層次結(jié)構(gòu)中的重構(gòu) 247 關(guān)于“CRUD應(yīng)用”和框架247 構(gòu)建層次結(jié)構(gòu) 248 破壞層次結(jié)構(gòu) 256 繼承與結(jié)構(gòu) 264 Has-A關(guān)系 270 繼承反模式 271 小結(jié) 280 第9章 重構(gòu)到面向?qū)ο竽J?281 模板方法282 策略 285 狀態(tài) 288 空對象 295 包裝(裝飾器和適配器) 302 外觀 310 小結(jié) 313 第10章 重構(gòu)異步 315 為什么用異步? 315 修復(fù)金字塔厄運(yùn) 318 回調(diào)和測試 326 Promises 330 小結(jié) 336 第11章 函數(shù)式重構(gòu) 337 函數(shù)式編程的限制和好處 338 基礎(chǔ) 344 高級基礎(chǔ)358 Burritos 369 學(xué)習(xí)和使用Burritos 383 從OOP遷移到FP 385 小結(jié) 390 第12章 結(jié)論 392 附錄A 進(jìn)一步閱讀和資源 393

圖書目錄

目錄
序 1
前言 3
第1章 重構(gòu)是什么? 13
你如何保證不改變行為? 13
如果不改變行為,重構(gòu)的目的是什么? 18
重構(gòu)是什么,不是什么 21
小結(jié) 22
第2章 你使用哪種JavaScript? 23
版本與規(guī)范 24
平臺與實(shí)現(xiàn) 25
預(yù)編譯語言 26
框架 27
庫 29
你需要什么JavaScript? 29
我們在用什么JavaScript? 30
小結(jié) 30
第3章 測試 31
為什么測試 34
測試的多種方法 35
工具和流程 43
小結(jié) 52
第4章 測試實(shí)踐 53
從零開始的代碼 55
采用測試驅(qū)動開發(fā)的從零開始的代碼 61
未經(jīng)測試的代碼與特性測試 80
調(diào)試和回歸測試 85
小結(jié) 93
第5章 基本重構(gòu)目標(biāo) 95
函數(shù)塊 98
輸入 101
輸出 106
副作用 109
上下文第一部分:隱式輸入 110
上下文第二部分:隱私 116
小結(jié) 128
第6章 重構(gòu)基本結(jié)構(gòu) 130
示例代碼132
我們的信心策略 135
重命名 137
無用的代碼 142
變量 148
字符串 157
使用數(shù)組:循環(huán)、forEach、映射 161
小結(jié) 167
第7章 重構(gòu)函數(shù)與對象 168
示例代碼(改進(jìn)后) 168
數(shù)組和對象的替代品 171
測試我們所擁有的 179
提取函數(shù)185
用全局對象簡化API 192
小結(jié) 246
第8章 層次結(jié)構(gòu)中的重構(gòu) 247
關(guān)于“CRUD應(yīng)用”和框架247
構(gòu)建層次結(jié)構(gòu) 248
破壞層次結(jié)構(gòu) 256
繼承與結(jié)構(gòu) 264
Has-A關(guān)系 270
繼承反模式 271
小結(jié) 280
第9章 重構(gòu)到面向?qū)ο竽J?281
模板方法282
策略 285
狀態(tài) 288
空對象 295
包裝(裝飾器和適配器) 302
外觀 310
小結(jié) 313
第10章 重構(gòu)異步 315
為什么用異步? 315
修復(fù)金字塔厄運(yùn) 318
回調(diào)和測試 326
Promises 330
小結(jié) 336
第11章 函數(shù)式重構(gòu) 337
函數(shù)式編程的限制和好處 338
基礎(chǔ) 344
高級基礎(chǔ)358
Burritos 369
學(xué)習(xí)和使用Burritos 383
從OOP遷移到FP 385
小結(jié) 390
第12章 結(jié)論 392
附錄A 進(jìn)一步閱讀和資源 393

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號