中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >
現代JavaScript庫開發:原理、技術與實戰

包郵 現代JavaScript庫開發:原理、技術與實戰

作者:顏海鏡
出版社:電子工業出版社出版時間:2022-11-01
開本: 16開 頁數: 364
中 圖 價:¥60.4(5.6折) 定價  ¥108.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

現代JavaScript庫開發:原理、技術與實戰 版權信息

現代JavaScript庫開發:原理、技術與實戰 本書特色

前端圈眾多大咖聯袂力薦,作者十年開源經驗沉淀輸出,內含前沿前端技術,精心挑選9個實戰示例,提供真實示例代碼。 1.作者顏海鏡、侯策均為前端技術領域知名專家,內容有保障。更有迷渡(justjavac)、羨轍等專家審閱,狼叔、張克軍傾情作序,月影、程劭非(winter)等眾多大咖聯袂支持。 2.作者擁有十余年開源經驗,沉淀輸出,大家可通過一本書學習作者的經驗和思考,跟著作者的思路,人人都可以開發打造屬于自己的現代JavaScript開源庫。 3.介紹現代JavaScript庫開發原理和實戰,系統介紹JavaScript庫開源和運營維護,從6500個Star真實開源庫中精心挑選9個實戰示例,提供真實示例代碼,隨書資源豐富。 每個前端工程師都想開發自己的框架或庫,然而大部分開發者在繁雜的業務代碼中都在使用別人的框架或庫。本書教你如何從零開始創建自己的庫,如何突破技術瓶頸。 Deno核心代碼貢獻者、vscode-deno作者 迷渡(justjavac)雖然這本書的主題是設計與實現庫,但讀完之后會發現,書中那些使代碼更加健壯可靠、使開發流程更加方便輕松的知識,無論是否用于開發一個庫,都會對我們很有幫助。 Apache Member、Apache ECharts項目管理委員會主席 羨轍 通過跟隨作者的思路由淺入深地進行實踐,你能切身體會到開源庫的創作精髓,這種臨摹和實踐無疑會幫你扎實基礎,讓你在不知不覺間有所收獲,得到提高。 稀土掘金社區負責人 月影 近年來,越來越多的企業開始有自研或修改庫的需求,非常高興看到具有實際經驗的工程師愿意抽出大量精力去完成一本系統介紹前端庫開發的書。 極客時間《重學前端》專欄作者 程劭非(winter) 非常幸運可以提前讀到這本書的樣稿。對每一位憧憬著擁有自己開源項目的開發者來說,本書是非常難得的閱讀材料,可以讓你快速上手,也可以消除你的種種疑慮。 《JavaScript高級程序設計》《JavaScript權威指南》譯者 李松峰 隨著前端技術的發展,開發一個JavaScript庫也面臨很多挑戰,作者從自己的從業經歷出發,對庫開發給出了自己的想法,希望能給讀者帶來一些啟發。 字節跳動工程師 李玉北

現代JavaScript庫開發:原理、技術與實戰 內容簡介

開發JavaScript庫是入門前端領域的重要一步。本書旨在幫助前端開發者掌握現代JavaScript庫的開發技術,讓每個人都可以開源自己的現代JavaScript庫。本書系統介紹了現代JavaScript庫開發涉及的技術、原理和*佳實踐,以及將庫開源后如何做好維護工作。在*佳實戰部分,本書選取了9個典型庫作為案例,展示開發流程,代碼清晰、完善。 本書既適合對現代JavaScript庫開發及開源感興趣的前端開發者閱讀,也適合想要學習前端項目開發技術的初學者閱讀。

現代JavaScript庫開發:原理、技術與實戰 目錄

目錄
第1章 從零開發一個JavaScript庫 1
1.1 如何開始 1
1.2 編寫代碼 2
1.3 本章小結 5
第2章 構建 6
2.1 模塊化解析 6
2.1.1 什么是模塊 7
2.1.2 原始模塊 7
2.1.3 AMD 8
2.1.4 CommonJS 9
2.1.5 UMD 9
2.1.6 ES Module 10
2.2 技術體系解析 11
2.2.1 傳統體系 12
2.2.2 Node.js體系 13
2.2.3 工具化體系 14
2.3 打包方案 17
2.3.1 選擇打包工具 18
2.3.2 打包步驟 19
2.3.3 添加banner 23
2.3.4 按需加載 24
2.4 兼容方案 26
2.4.1 確定兼容環境 26
2.4.2 ECMAScript 5兼容方案 28
2.4.3 ECMAScript 2015兼容方案 30
2.5 完整方案 33
2.6 本章小結 35
第3章 測試 36
3.1 **個單元測試 36
3.2 設計測試用例 39
3.2.1 設計思路 39
3.2.2 編寫代碼 40
3.3 驗證測試覆蓋率 42
3.3.1 代碼覆蓋率 42
3.3.2 源代碼覆蓋率 44
3.3.3 校驗覆蓋率 46
3.4 瀏覽器環境測試 48
3.4.1 模擬瀏覽器環境 48
3.4.2 真實瀏覽器測試 49
3.4.3 自動化測試 51
3.5 本章小結 53
第4章 開源 54
4.1 選擇開源協議 54
4.2 完善文檔 56
4.2.1 README 57
4.2.2 待辦清單 59
4.2.3 變更日志 59
4.2.4 API文檔 60
4.3 發布 61
4.3.1 發布到GitHub上 61
4.3.2 發布到npm上 62
4.3.3 下載安裝包 66
4.4 統計數據 66
4.4.1 GitHub數據 66
4.4.2 npm數據 67
4.4.3 自定義數據 69
4.5 本章小結 70
第5章 維護 71
5.1 社區協作 71
5.1.1 社區反饋 72
5.1.2 社區協作 76
5.1.3 社區運營 77
5.2 規范先行 79
5.2.1 編輯器 79
5.2.2 格式化 82
5.2.3 代碼Lint 88
5.2.4 提交信息 96
5.3 持續集成 102
5.3.1 GitHub Actions 103
5.3.2 CircleCI 111
5.3.3 Travis CI 114
5.4 分支模型 115
5.4.1 主分支 115
5.4.2 功能分支 116
5.4.3 故障分支 119
5.4.4 Pull request 120
5.4.5 標簽與歷史 121
5.5 本章小結 123
第6章 設計更好的JavaScript庫 124
6.1 設計更好的函數 124
6.1.1 函數命名 124
6.1.2 參數個數 125
6.1.3 可選參數 126
6.1.4 返回值 126
6.2 提高健壯性 127
6.2.1 參數防御 127
6.2.2 副作用處理 129
6.2.3 異常捕獲 130
6.3 解決瀏覽器兼容性問題 131
6.3.1 String 132
6.3.2 Array 132
6.3.3 Object 134
6.4 支持TypeScript 134
6.5 本章小結 137
第7章 安全防護 138
7.1 防護意外 138
7.1.1 *小功能設計 138
7.1.2 *小參數設計 140
7.1.3 凍結對象 141
7.2 避免原型入侵 142
7.2.1 面向對象基礎知識 142
7.2.2 原型之路 143
7.2.3 原型入侵 145
7.3 原型污染事件 147
7.3.1 漏洞原因 148
7.3.2 詳解原型污染 148
7.3.3 防范原型污染 151
7.3.4 JSON.parse補充 152
7.4 依賴的安全性問題 152
7.4.1 庫的選擇 153
7.4.2 正確區分依賴 154
7.4.3 版本問題 156
7.4.4 依賴過期 157
7.4.5 安全檢查 158
7.5 本章小結 160
第8章 抽象標準庫 161
8.1 類型判斷 161
8.1.1 背景知識 161
8.1.2 抽象庫 166
8.2 函數工具 169
8.2.1 once 170
8.2.2 curry 170
8.2.3 pipe 171
8.2.4 compose 172
8.3 數據拷貝 174
8.3.1 背景知識 174
8.3.2 *簡單的深拷貝 176
8.3.3 一行代碼的深拷貝 178
8.3.4 破解遞歸爆棧 178
8.3.5 破解循環引用 180
8.3.6 性能對比 183
8.4 相等性判斷 187
8.4.1 背景知識 187
8.4.2 抽象庫 195
8.5 參數擴展 200
8.5.1 背景知識 200
8.5.2 抽象庫 202
8.6 深層數據 205
8.6.1 背景知識 205
8.6.2 抽象庫 209
8.7 本章小結 214

第9章 命令行工具 215
9.1 系統設計 215
9.2 標準命令行工具 217
9.3 交互界面 225
9.4 初始化功能 234
9.4.1 代碼架構 236
9.4.2 公共邏輯 237
9.4.3 模塊設計 242
9.5 命令行顏色 249
9.6 進度條 251
9.7 發布 256
9.8 本章小結 257
第10章 工具庫實戰 258
10.1 問題背景 258
10.2 代碼實現 260
10.2.1 字符串操作 260
10.2.2 數組操作 262
10.2.3 對象操作 265
10.2.4 URL參數處理 268
10.3 搭建文檔 269
10.4 ESLint插件 274
10.4.1 type-typeof-limit 276
10.4.2 type-instanceof-limit 281
10.4.3 no-same-function 282
10.4.4 recommended 284
10.4.5 發布 285
10.5 數據統計 285
10.5.1 統計接入項目 285
10.5.2 下載量 286
10.5.3 包和函數被引用的次數 287
10.6 本章小結 292
第11章 前端模板庫實戰 293
11.1 系統搭建 293
11.1.1 背景知識 293
11.1.2 搭建項目 295
11.2 解析器 300
11.3 即時編譯器 305
11.4 預編譯器 309
11.5 webpack插件 317
11.6 VS Code插件 323
11.7 發布 329
11.8 本章小結 330
第12章 未來之路 331
12.1 全景圖 331
12.1.1 知識全景圖 331
12.1.2 技術全景圖 332
12.2 下一代技術 333
12.2.1 TypeScript 333
12.2.2 Deno 334
12.2.3 SWC 334
12.2.4 esbuild 335
12.2.5 Vite 335
12.3 本章小結 336
展開全部

現代JavaScript庫開發:原理、技術與實戰 作者簡介

顏海鏡,知名技術博主,微信公眾號“顏海鏡”作者。擁有十年以上開源經驗,在GitHub上擁有關注者(followers)5100余名,維護了jsmini、jslib-base、template.js、zepto.fullpage等多個開源項目,獲得了6500個以上的GitHub Star。具有多年一線大廠從業經驗,曾先后就職于金山、百度、美團等知名企業,負責前端開發工作。著有《React狀態管理與同構實戰》。侯策,就職于某內容社區類互聯網上市公司,具有多年海內外工作經驗,曾先后就職于法國ENGIE集團、Google、百度等知名企業。擅長前端工程化體系搭建及基礎建設架構設計。著有《React狀態管理與同構實踐》《前端開發核心知識進階:從夯實基礎到突破瓶頸》《前端架構師:基礎建設與架構設計思想》等多部技術圖書。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 硅PU球场、篮球场地面施工「水性、环保、弹性」硅PU材料生产厂家-广东中星体育公司 | 威廉希尔WilliamHill·足球(中国)体育官方网站 | COD分析仪|氨氮分析仪|总磷分析仪|总氮分析仪-圣湖Greatlake | 云杂志网-学术期刊-首页 | 美名宝起名网-在线宝宝、公司、起名平台 | ERP企业管理系统永久免费版_在线ERP系统_OA办公_云版软件官网 | 斗式提升机_链式斗提机_带式斗提机厂家无锡市鸿诚输送机械有限公司 | 水质监测站_水质在线分析仪_水质自动监测系统_多参数水质在线监测仪_水质传感器-山东万象环境科技有限公司 | 纸布|钩编布|钩针布|纸草布-莱州佳源工艺纸布厂 | 石家庄救护车出租_重症转院_跨省跨境医疗转送_活动赛事医疗保障_康复出院_放弃治疗_腾康26年医疗护送转诊团队 | 创绿家招商加盟网-除甲醛加盟-甲醛治理加盟-室内除甲醛加盟-创绿家招商官网 | BAUER减速机|ROSSI-MERSEN熔断器-APTECH调压阀-上海爱泽工业设备有限公司 | 压接机|高精度压接机|手动压接机|昆明可耐特科技有限公司[官网] 胶泥瓷砖胶,轻质粉刷石膏,嵌缝石膏厂家,腻子粉批发,永康家德兴,永康市家德兴建材厂 | 在线PH计-氧化锆分析仪-在线浊度仪-在线溶氧仪- 无锡朝达 | PC阳光板-PC耐力板-阳光板雨棚-耐力板雨棚,厂家定制[优尼科板材] | 冷库安装厂家_杭州冷库_保鲜库建设-浙江克冷制冷设备有限公司 | 电动垃圾车,垃圾清运车-江苏速利达机车有限公司 | 集菌仪厂家_全封闭_封闭式_智能智能集菌仪厂家-上海郓曹 | 振动筛,震动筛,圆形振动筛,振动筛价格,振动筛厂家-新乡巨宝机电 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | TPU薄膜_TPU薄膜生产厂家_TPU热熔胶膜厂家定制_鑫亘环保科技(深圳)有限公司 | 【灵硕展览集团】展台展会设计_展览会展台搭建_展览展示设计一站式服务公司 | 聚合氯化铝厂家-聚合氯化铝铁价格-河南洁康环保科技 | 深圳南财多媒体有限公司介绍 | 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 宝鸡市人民医院| 铸铁平台,大理石平台专业生产厂家_河北-北重机械 | 西门子伺服电机维修,西门子电源模块维修,西门子驱动模块维修-上海渠利 | 骨密度仪-骨密度测定仪-超声骨密度仪-骨龄测定仪-天津开发区圣鸿医疗器械有限公司 | 转子泵_凸轮泵_凸轮转子泵厂家-青岛罗德通用机械设备有限公司 | 自动部分收集器,进口无油隔膜真空泵,SPME固相微萃取头-上海楚定分析仪器有限公司 | uv机-uv灯-uvled光固化机-生产厂家-蓝盾机电| 深圳标识制作公司-标识标牌厂家-深圳广告标识制作-玟璟广告-深圳市玟璟广告有限公司 | 安驭邦官网-双向万能直角铣头,加工中心侧铣头,角度头[厂家直销] 闸阀_截止阀_止回阀「生产厂家」-上海卡比阀门有限公司 | 干粉砂浆设备-干粉砂浆生产线-干混-石膏-保温砂浆设备生产线-腻子粉设备厂家-国恒机械 | 水平筛厂家-三轴椭圆水平振动筛-泥沙震动筛设备_山东奥凯诺矿机 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 冷水机-工业冷水机-冷水机组-欧科隆品牌保障 | 制氮设备_PSA制氮机_激光切割制氮机_氮气机生产厂家-苏州西斯气体设备有限公司 | 气弹簧定制-气动杆-可控气弹簧-不锈钢阻尼器-工业气弹簧-可调节气弹簧厂家-常州巨腾气弹簧供应商 | 深圳市人通智能科技有限公司| 广州网站建设_小程序开发_番禺网站建设_佛山网站建设_粤联网络 | 乐泰胶水_loctite_乐泰胶_汉高乐泰授权(中国)总代理-鑫华良供应链 |