幫助中心 | 我的帳號 | 關於我們

Effective TypeScript(精進TypeScript代碼的83個實踐方法第2版)

  • 作者:(美)丹·范德卡姆|責編:劉熾|譯者:侯璐璐//馬建勛//婁麒麟
  • 出版社:中國電力
  • ISBN:9787523904930
  • 出版日期:2025/11/01
  • 裝幀:平裝
  • 頁數:483
人民幣:RMB 148 元      售價:
放入購物車
加入收藏夾

內容大鋼
    TypeScript作為JavaScript的類型化超集,以其獨特稟賦化解了JavaScript諸多為人詬病的痼疾。然而,其學習門檻頗為陡峭,唯有經年累月的實踐方能洞悉個中奧妙。本書承襲《Effectiye C++》與《Effective Java》的經典範式,以務實風格呈現了83條精要準則,于進退取捨間勾勒出駕馭這門語言的智慧圖譜。
    本書作者通過詳盡的實例演示,讓每一條建議都蘊含著實戰的氣息。無論你是初窺門徑的新手,還是已有根基的中階開發人員,本書都將引領你突破TypeScript的認知邊界,蛻變為深諳其道的語言大師。
    新版內容特別針對TypeScript 5進行了重構,增補了類型級編程和TypeScript指南兩大篇章。
    解析TypeScript類型系統的運作機理,領會核心精髓。
    善用類型推斷,以最簡註解構築周全的類型防護壁壘。
    精研類型設計之道,鑄就安全性與可讀性兼具的代碼基底。
    活用泛型與類型級編程,建模複雜介面模型。
    解析依賴關係與聲明文件,駕馭模塊化工程的隱秘脈絡。
    制定JavaScript向TypeScript的漸進遷移方略,實現工程的平穩演進。

作者介紹
(美)丹·范德卡姆|責編:劉熾|譯者:侯璐璐//馬建勛//婁麒麟
    丹·范德卡姆,獨立軟體工程師,TypeScript領域深耕多年的實踐者、布道者與生態共建者。他歷任Sidewalk Labs首席軟體工程師、谷歌首席 軟體工程師,工作成果服務了全球數十億的搜索用戶。

目錄
前言
第一版前言
第1章 認識TypeScript
  條款1:TypeScript與JavaScript
  條款2:了解常用的編譯選項
  條款3:代碼生成獨立於類型
  條款4:結構類型的自由度
  條款5:使用any要慎重
第2章 TypeScript的類型系統
  條款6:借助編輯器探索類型世界
  條款7:值的集合即類型
  條款8:類型空間與值空間
  條款9:類型註解勝於類型斷言
  條款10:避免使用對象類型(String、Number、Boolean、Symbol、BigInt)
  條款11:多餘屬性檢查和類型檢查
  條款12:函數整體聲明類型更安全
  條款13:type別名與interface
  條款14:使用readonly守護不可變值
  條款15:類型操作配泛型,避免重複造輪子
  條款16:類型要精準,索引簽名請慎用
  條款17:慎用數字索引簽名
第3章 類型推斷與控制流分析
  條款18:避免類型冗余,保持代碼整潔
  條款19:類型專屬,變數分立
  條款20:類型能溯源,推斷全了解
  條款21:對象整裝,一次性構造
  條款22:認識類型收縮
  條款23:別名要使用,類型得一致
  條款24:以上下文為基礎,類型推導有根有據
  條款25:類型演變,時刻了解
  條款26:函數式構建引航,類型貫通流轉
  條款27:async取代回調,類型流轉更暢通
  條款28:類與柯里化並舉,新建類型推斷點
第4章 類型設計
  條款29:類型即契約,狀態需有效
  條款30:寬進嚴出,契約必守
  條款31:類型勿繁,註釋需簡
  條款32:類型別名切勿包含null或undefined
  條款33:空值需在類型之外
  條款34:介面組合勝過屬性組合
  條款35:類型精確優先,慎用字元串
  條款36:特殊值要有獨立類型
  條款37:慎用可選屬性
  條款38:同類型參數不傳兩次
  條款39:統一類型勝過細微差異建模
  條款40:不完全精確的類型勝過不準確的類型
  條款41:以專業領域語言來命名類型
  條款42:孤例不證
第5章 非健全性與any類型
  條款43:壓縮any的作用域

  條款44:更精確的any變體勝過any本身
  條款45:在簽名正確的函數內部隱藏不安全類型斷言
  條款46:類型未知,unknown勝過any
  條款47:類型安全的方法勝過猴子補丁
  條款48:規避健全性陷阱
  條款49:跟蹤類型覆蓋率,避免類型安全回退
第6章 泛型與類型級編程
  條款50:視泛型為類型間的函數
  條款51:避免非必要的類型參數
  條款52:條件類型勝過重載簽名
  條款53:控制條件類型在聯合類型上的分佈
  條款54:使用模板字面量類型建模DSL和字元串之間的關係
  條款55:類型也要測試
  條款56:優化類型的展示方式
  條款57:泛型也要尾遞歸
  條款58:自動代碼生成勝過手寫複雜類型
第7章 TypeScript指南
  條款59:使用Never類型進行類型窮舉檢查
  條款60:遍歷對象
  條款61:使用Record類型保持值的同步
  條款62:使用剩餘參數和元組類型來建模可變參數函數
  條款63:使用可選的never屬性來建模異或關係
  條款64:使用Brand構建名義類型
第8章 類型聲明和@types
  條款65:將TypeScript和@types放在devDependencies中
  條款66:理解類型聲明中的三個版本
  條款67:導出所有出現在公共API中的類型
  條款68:使用TSDoc註釋API
  條款69:如果this是API的一部分,請在回調中為其指定類型
  條款70:使用鏡像類型斷開依賴關係
  條款71:使用模塊增強來改善類型
第9章 編寫和運行代碼
  條款72:與Typescript相比,ECMAScript更勝一籌
  條款73:使用源碼映射調試TypeScript
  條款74:了解運行時類型的重組
  條款75:理解DOM的層級關係
  條款76:根據環境創建精確的模型
  條款77:理解類型檢查和單元測試之間的關係
  條款78:關注編譯器的性能
第10章 現代化與遷移
  條款79:編寫現代化的JavaScript
  條款80:使用@ts-check和JSDoc試驗TypeScript
  條款81:使用allowJs混合TypeScript和JavaScript
  條款82:按照依賴逐個進行模塊轉換
  條款83:在啟用noImplicitAny前,不要認為遷移已完成
附錄 第一版與第二版條款對照表

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032