注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計TypeScript框架開發(fā)實踐(微課視頻版)

TypeScript框架開發(fā)實踐(微課視頻版)

TypeScript框架開發(fā)實踐(微課視頻版)

定 價:¥79.00

作 者: 曾振中
出版社: 清華大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787302668831 出版時間: 2024-08-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書講述了一個開源Web框架從無到有,直至發(fā)布上線的開發(fā)歷程,逐步實現(xiàn)Web框架的核心對象管理、Web路由及數(shù)據(jù)庫支持等三大組成部分并集成多個常用服務(wù),完成框架中三十多個TypeScript裝飾器的設(shè)計與開發(fā)。通過本書,讀者能夠從最基礎(chǔ)的代碼開始,輕松掌握Web框架的開發(fā)技能,為深入探索高級Web技術(shù)奠定堅實基礎(chǔ)。本書分為三大模塊。Web框架基礎(chǔ)模塊(第1章)從編寫最簡單的HTTP服務(wù)開始,介紹Web框架的基礎(chǔ)知識;框架開發(fā)模塊(第2~5章)詳細(xì)闡述框架核心對象管理的實現(xiàn)、集成ExpressJS服務(wù)及相關(guān)中間件的應(yīng)用整合,展示了兩類Web框架常見的數(shù)據(jù)庫功能的開發(fā)過程,以及RabbitMQ、Redis、SocketIO多種常用服務(wù)的集成開發(fā);測試與發(fā)布模塊(第6章)講述Web框架的測試和開源項目的發(fā)布過程,深入探討制作開源項目涉及的各種關(guān)鍵知識點。本書適合初學(xué)者入門,書中項目以真實線上開源項目為主線,深入探討了Web框架的實現(xiàn)細(xì)節(jié),對于有經(jīng)驗的開發(fā)者同樣有參考價值,尤其適合對開源項目有濃厚興趣的開發(fā)者。

作者簡介

  曾振中,資深計算機工程師,十多年IT從業(yè)經(jīng)驗,曾任虎牙直播研發(fā)效能平臺、虎牙視頻、YY游戲盒子、多玩網(wǎng)等多個大型項目的技術(shù)負(fù)責(zé)人,PMP證書持有者,專注于架構(gòu)設(shè)計、全棧開發(fā)、技術(shù)管理及云原生等領(lǐng)域,長期開發(fā)和維護SpeedPHP、k、TypeSpeed等開源框架。

圖書目錄

本書源代碼
第1章了解Web框架(51min)
1.1Web框架
1.1.1Web框架的應(yīng)用領(lǐng)域
1.1.2主流編程語言的Web框架
1.1.3需要了解的相關(guān)知識
1.2TypeSpeed 
1.2.1TypeSpeed框架的特性
1.2.2學(xué)習(xí)TypeSpeed的開發(fā)過程
1.3準(zhǔn)備源代碼
1.3.1安裝環(huán)境
1.3.2安裝編碼工具
1.3.3獲取源代碼
1.4從零實現(xiàn)最簡Web框架
1.4.1顯示Hello World頁面
1.4.2增加頁面
1.4.3用面向?qū)ο蠓椒ńM織頁面代碼
1.4.4增加數(shù)據(jù)庫查詢
1.4.5單例模式實現(xiàn)數(shù)據(jù)庫鏈接
1.4.6Web框架的主要組成部分 
第2章構(gòu)建框架核心(92min)
2.1TypeScript裝飾器
2.1.1裝飾器的用途
2.1.2如何設(shè)計裝飾器
2.1.3裝飾器執(zhí)行原理
2.1.4定時任務(wù)裝飾器開發(fā)
2.1.5小結(jié)
2.2構(gòu)建對象管理機制
2.2.1對象管理
2.2.2設(shè)計對象管理機制
2.2.3依賴注入
2.2.4對象工廠
2.2.5項目初始結(jié)構(gòu)
2.2.6實現(xiàn)日志功能
2.2.7入口文件機制
2.2.8小結(jié)
 
 
2.3系統(tǒng)配置管理
2.3.1約定優(yōu)于配置
2.3.2設(shè)計程序配置規(guī)范
2.3.3配置的集成
2.3.4開發(fā)配置裝飾器
2.3.5小結(jié)
第3章Web服務(wù)系統(tǒng)(184min)
3.1集成Web服務(wù)框架
3.1.1ExpressJS
3.1.2中間件機制
3.1.3應(yīng)用程序入口
3.1.4集成ExpressJS
3.1.5小結(jié)
3.2路由裝飾器
3.2.1簡單的路由實現(xiàn)
3.2.2路徑功能詳解
3.2.3開發(fā)路由裝飾器
3.2.4測試路由裝飾器
3.2.5優(yōu)化路由裝飾器
3.2.6小結(jié)
3.3路由切面功能
3.3.1面向切面編程
3.3.2設(shè)計切面程序功能
3.3.3@before切面裝飾器
3.3.4@after切面裝飾器
3.3.5小結(jié)
3.4請求參數(shù)裝飾器
3.4.1設(shè)計請求參數(shù)裝飾器
3.4.2請求參數(shù)裝飾器的實現(xiàn)
3.4.3用toString()優(yōu)化裝飾器
3.4.4小結(jié)
3.5響應(yīng)處理與模板引擎
3.5.1MVC設(shè)計模式
3.5.2JSON格式輸出
3.5.3模板引擎是什么
3.5.4ExpressJS的模板引擎
3.5.5模板引擎的選型
3.5.6集成多模板引擎庫
3.5.7小結(jié)
3.6使用中間件增強框架功能
3.6.1靜態(tài)資源服務(wù)
3.6.2站點圖標(biāo)功能
3.6.3傳輸壓縮實現(xiàn)
3.6.4Cookie
3.6.5Session
3.6.6小結(jié)
3.7文件上傳
3.7.1文件上傳原理
3.7.2使用文件上傳庫
3.7.3實現(xiàn)文件上傳裝飾器
3.7.4小結(jié)
3.8Web服務(wù)鑒權(quán)
3.8.1實現(xiàn)基本訪問認(rèn)證
3.8.2實現(xiàn)驗證裝飾器
3.8.3攔截器
3.8.4開發(fā)全局?jǐn)r截器機制
3.8.5實現(xiàn)JWT全局?jǐn)r截器
3.8.6小結(jié)
3.9服務(wù)器端錯誤輸出
3.9.1捕捉常見錯誤
3.9.2錯誤日志輸出
3.9.3美化內(nèi)置錯誤頁面
3.9.4小結(jié)
第4章數(shù)據(jù)庫開發(fā)(184min)
4.1數(shù)據(jù)庫開發(fā)準(zhǔn)備
4.1.1安裝Docker Desktop
4.1.2安裝MySQL
4.1.3連接MySQL
4.1.4創(chuàng)建測試數(shù)據(jù)庫
4.1.5創(chuàng)建測試表
4.2裝飾器風(fēng)格的SQL方法
4.2.1SQL裝飾器的設(shè)計
4.2.2初步實現(xiàn)@Insert裝飾器
4.2.3初步實現(xiàn)@Update和@Delete
4.2.4@Select查詢實現(xiàn)
4.2.5小結(jié)
4.3參數(shù)綁定
4.3.1SQL注入攻擊示例
4.3.2SQL參數(shù)裝飾器
4.3.3優(yōu)化查詢裝飾器
4.3.4小結(jié)
4.4查詢結(jié)果的處理
4.4.1數(shù)據(jù)類
4.4.2查詢結(jié)果裝飾器
4.4.3裝飾器配合使用
4.4.4小結(jié)
4.5內(nèi)置查詢緩存
4.5.1緩存的作用
4.5.2內(nèi)置緩存功能
4.5.3緩存裝飾器
4.5.4優(yōu)化緩存更新
4.5.5小結(jié)
4.6模型風(fēng)格的數(shù)據(jù)操作
4.6.1統(tǒng)一底層數(shù)據(jù)庫執(zhí)行機制
4.6.2設(shè)計Model類型
4.6.3開發(fā)模型查詢方法
4.6.4小結(jié)
4.7自定義查詢語法
4.7.1設(shè)計自定義查詢語法
4.7.2開發(fā)比較條件語法
4.7.3開發(fā)模糊查詢和 OR 語法
4.7.4優(yōu)化查詢方法
4.7.5便捷查詢方法
4.7.6小結(jié)
4.8增、刪、改的優(yōu)化
4.8.1增、刪、改方法
4.8.2簡化查詢方法
4.8.3簡化修改方法
4.8.4小結(jié)
4.9內(nèi)置分頁
4.9.1頁碼計算
4.9.2實現(xiàn)查詢內(nèi)置分頁
4.9.3小結(jié)
4.10數(shù)據(jù)源讀寫分離
4.10.1數(shù)據(jù)源
4.10.2主從數(shù)據(jù)庫架構(gòu)
4.10.3設(shè)計多數(shù)據(jù)源機制
4.10.4內(nèi)置多數(shù)據(jù)源實現(xiàn)
4.10.5測試多數(shù)據(jù)源
4.10.6小結(jié)
第5章常用服務(wù)(198min)
5.1消息隊列功能
5.1.1RabbitMQ
5.1.2安裝RabbitMQ
5.1.3創(chuàng)建交換機和隊列
5.1.4使用amqplib庫
5.1.5監(jiān)聽消息裝飾器
5.1.6注入發(fā)送消息方法
5.1.7小結(jié)
5.2Socket.IO 即時通信
5.2.1Socket.IO
5.2.2即時通信
5.2.3使用Socket.IO
5.2.4與Web服務(wù)共用端口
5.2.5開發(fā)Socket.IO裝飾器
5.2.6測試即時通信功能
5.2.7小結(jié)
5.3Redis 數(shù)據(jù)庫
5.3.1安裝Redis服務(wù)
5.3.2集成Redis 
5.3.3發(fā)布訂閱功能
5.3.4優(yōu)化排行榜邏輯
5.3.5Session支持Redis 存儲
5.3.6小結(jié)
5.4命令行腳手架功能
5.4.1腳手架是什么
5.4.2開發(fā)命令行程序
5.4.3發(fā)布命令
5.4.4小結(jié)
5.5支持Swagger平臺
5.5.1Swagger接口交互平臺
5.5.2外部項目
5.5.3設(shè)計TypeSpeedSwagger
5.5.4實現(xiàn)集成Swagger中間件
5.5.5替換裝飾器收集接口信息
5.5.6小結(jié)
5.6自動化文檔
5.6.1JSDoc文檔和工具
5.6.2Reflect Metadata運行原理
5.6.3進階反射庫
5.6.4實現(xiàn)中間件配置
5.6.5獲取對象詳細(xì)信息
5.6.6小結(jié)
第6章項目測試與發(fā)布(63min)
6.1開源項目的測試
6.1.1單元測試
6.1.2Mocha測試框架
6.1.3調(diào)整框架配合測試
6.1.4編寫測試集
6.1.5測試結(jié)果
6.1.6小結(jié)
6.2測試覆蓋率
6.2.1測試覆蓋率
6.2.2持續(xù)集成
6.2.3GitHub Action
6.2.4測試覆蓋率報告
6.2.5小結(jié)
6.3NPM發(fā)布
6.3.1框架目錄結(jié)構(gòu)
6.3.2導(dǎo)出類型定義
6.3.3框架配置
6.3.4發(fā)布項目
 

本目錄推薦

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