全棧工程師Web開發指南( 簡體 字) | |
作者:[意]迪諾·埃斯波西托(Dino Esposito) | 類別:1. -> 程式設計 -> 網路編程 |
出版社:人民郵電出版社 | 3dWoo書號: 50756 詢問書籍請說出此書號! 有庫存 NT售價: 395 元 |
出版日:3/1/2019 | |
頁數:324 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115497451 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第 一部分 理解業務領域
第 1章 實施全面的領域分析 3 1.1 領域驅動設計前來解困 3 1.1.1 領域驅動設計 3 1.1.2 消除DDD的常見誤解 4 1.2 通用語言 5 1.2.1 創建領域特定術語的詞匯表 5 1.2.2 使業務和代碼保持同步 7 1.3 限界上下文 8 1.3.1 發現限界上下文 8 1.3.2 實現限界上下文 9 1.4 上下文映射 11 1.5 事件風暴 12 1.5.1 擁有無盡的建模空間 13 1.5.2 找出領域中的事件 13 1.5.3 引導討論 13 1.6 小結 13 第 2章 選擇支撐架構 15 2.1 關于業務邏輯的一切 15 2.1.1 研究應用程序邏輯 15 2.1.2 研究領域邏輯 16 2.1.3 探究業務邏輯的模式 17 2.2 使用單個模型 19 2.2.1 探究面向對象領域模型的元素 19 2.2.2 把業務規則放進去 20 2.2.3 發現聚合 22 2.2.4 探究領域服務的角色 23 2.3 實現命令查詢分離 25 2.3.1 應用命令查詢分離原則 26 2.3.2 實現CQRS 28 2.4 基于消息的方案 30 2.4.1 專屬基礎設施 30 2.4.2 介紹事件溯源 33 2.5 小結 35 第3章 用戶體驗驅動設計 36 3.1 為什么自上而下方案比自下而上方案更優 36 3.1.1 自下而上方案的基礎 37 3.1.2 規劃自上而下方案 39 3.2 從架構的角度來看用戶體驗 40 3.2.1 用戶體驗不是用戶界面 40 3.2.2 三步解釋用戶體驗驅動設計 42 3.3 為什么用戶體驗驅動設計幾乎有利于每個人 46 3.4 小結 47 第4章 Web解決方案的架構選項 49 4.1 評估可用的Web解決方案 49 4.1.1 決定最佳框架 49 4.1.2 規劃解決方案 50 4.2 研究ASP.NET Core 1.0的角色 51 4.2.1 把ASP.NET看作起點 51 4.2.2 研究ASP.NET Core 1.0里的架構依賴 52 4.2.3 探究選擇ASP.NET Core 1.0的原因 53 4.3 決定是否應該使用ASP.NET Web Forms 55 4.3.1 研究一個常見的場景 55 4.3.2 ASP.NET Web Forms初探 55 4.3.3 Web Forms仍有好的一面 56 4.3.4 為什么應該遠離Web Forms 56 4.4 決定是否應該使用ASP.NET MVC 57 4.4.1 ASP.NET MVC初探 58 4.4.2 ASP.NET MVC的優點 58 4.4.3 ASP.NET MVC的弱點 59 4.5 研究ASP.NET Web API的角色 59 4.5.1 WCF轉到Web API 60 4.5.2 比較ASP.NET Web API和ASP.NET MVC 60 4.5.3 聊聊REST 62 4.5.4 在ASP.NET Core 1.0里使用Web API 62 4.6 單頁應用程序 63 4.6.1 構建SPA 64 4.6.2 混合SPA 64 4.6.3 SPA的弱點 64 4.7 小結 65 第5章 分層架構 66 5.1 超越經典的三層系統 66 5.1.1 目前使用的三層架構 67 5.1.2 灰色地帶 67 5.2 表現層 68 5.2.1 用戶體驗 68 5.2.2 輸入模型 69 5.2.3 視圖模型 69 5.3 應用程序層 70 5.3.1 系統后端的入口點 70 5.3.2 業務流程的編排 71 5.4 領域層 71 5.4.1 神秘的領域模型 72 5.4.2 同樣神秘的領域服務概念 72 5.4.3 更務實的領域建模觀點 73 5.5 基礎設施層 73 5.5.1 當前狀態存儲 73 5.5.2 事件存儲 74 5.5.3 緩存層 75 5.5.4 外部服務 75 5.6 小結 75 第二部分 實現常見功能 第6章 ASP.NET的現狀 79 6.1 Web的風格 79 6.1.1 Web原本可以不同 79 6.1.2 經典Web是贏家 80 6.2 ASP.NET是功能完整的 80 6.2.1 不必添加更多功能 81 6.2.2 它的潛能得到充分挖掘,還是說這個軟件已遭廢棄 81 6.3 ASP.NET Core 1.0沒有新的功能 81 6.3.1 這是關于新的運行時 82 6.3.2 這是關于業務模型 82 6.3.3 這是關于開發模型 82 6.4 ASP.NET的現狀是什么 82 第7章 ASP.NET Core 1.0的來龍去脈及技術細節 84 7.1 ASP.NET Core的背景 84 7.1.1 大內存占用的代價 85 7.1.2 把云重新看作殺手锏 85 7.1.3 不同的編程模型的必要性 85 7.1.4 日常工作的影響 86 7.2 ASP.NET Core運行時概覽 86 7.2.1 DNX托管環境 87 7.2.2 在DNX中托管Web應用程序 88 7.2.3 ASP.NET Core HTTP通道 89 7.3 ASP.NET開發者的ASP.NET Core使用指南 90 7.3.1 創建一個新的項目 91 7.3.2 應用程序啟動 94 7.3.3 應用程序設置 96 7.3.4 驗證 98 7.3.5 Web編程的其他方面 99 7.4 小結 101 第8章 ASP.NET MVC的精髓 103 8.1 路由傳入請求 103 8.1.1 模擬ASP.NET MVC運行時 104 8.1.2 探索URL路由HTTP模塊 106 8.1.3 使用應用程序路由 107 8.2 探索控制器類 113 8.2.1 了解控制器的各個方面 113 8.2.2 編寫控制器類 115 8.3 處理輸入數據 119 8.3.1 手動參數綁定 119 8.3.2 模型綁定 120 8.4 產生操作結果 124 8.4.1 包裝結果 124 8.4.2 返回HTML標記內容 126 8.4.3 返回JSON內容 132 8.5 小結 133 第9章 Bootstrap的精髓 135 9.1 Bootstrap概覽 135 9.1.1 LESS和Bootstrap基礎 135 9.1.2 設置Bootstrap 138 9.1.3 透析Bootstrap 138 9.2 反應式布局 139 9.2.1 網格系統 139 9.2.2 基于屏幕大小的渲染 141 9.3 現今Web元素的分類體系 145 9.3.1 重塑基本HTML元素的樣式 145 9.3.2 重塑列表HTML元素的樣式 153 9.3.3 了解更高級的組件 155 9.4 Bootstrap擴展 161 9.4.1 自動完成 161 9.4.2 日期選擇 166 9.4.3 自定義組件 168 9.5 小結 172 第 10章 ASP.NET MVC項目的組織方式 173 10.1 規劃項目解決方案 173 10.1.1 把項目映射到分層架構模式 173 10.1.2 應用程序啟動 175 10.1.3 研究應用程序服務 179 10.1.4 加入其他資產 181 10.1.5 創建表現布局 182 10.2 更有效地提供資源 184 10.2.1 打包 185 10.2.2 使用簡化 189 10.3 研究其他方面 190 10.3.1 研究錯誤處理 190 10.3.2 配置用戶驗證 193 10.4 小結 197 第 11章 展示數據 198 11.1 組織HTML視圖 198 11.1.1 探索視圖模型 198 11.1.2 研究頁面布局 201 11.1.3 展示視圖元素 204 11.2 顯示一組數據項 207 11.2.1 創建網格視圖 208 11.2.2 添加頁面功能 212 11.2.3 向頁面元素添加滾動功能 216 11.3 添加詳細視圖 219 11.3.1 彈框視圖 220 11.3.2 向下追溯視圖 222 11.4 小結 224 第 12章 編輯數據 225 12.1 用于登錄頁面的通用表單 225 12.1.1 展示表單 225 12.1.2 處理提交數據 227 12.2 輸入表單 229 12.2.1 Post-Redirect-Get模式 229 12.2.2 表單驗證 231 12.2.3 模態輸入表單 239 12.3 改善用戶體驗的小竅門 247 12.3.1 使用日期選擇器是挺好的,但…… 247 12.3.2 使用自動完成而不是冗長的下拉列表 249 12.3.3 大型輸入表單的其他建議 251 12.4 小結 252 第 13章 持久化和建模 253 13.1 研究不同類型的模型 253 13.1.1 持久化模型 253 13.1.2 領域模型 254 13.1.3 輸入模型 256 13.1.4 視圖模型 256 13.2 設計持久層 257 13.2.1 使用隱式的遺留數據模型 258 13.2.2 使用Entity Framework 259 13.2.3 倉庫模式 262 13.3 多樣化持久化 264 13.3.1 多樣化持久化的例子 264 13.3.2 多樣化持久化的代價 265 13.4 小結 267 第三部分 分析用戶體驗 第 14章 創建更具交互性的視圖 271 14.1 暴露JSON內容 271 14.1.1 創建JSON端點 272 14.1.2 協商內容 274 14.1.3 解決跨源問題 275 14.2 設計Web API 279 14.2.1 ASP.NET Web API的目的 279 14.2.2 在ASP.NET MVC環境中的Web API 279 14.2.3 保護獨立的Web API 280 14.3 拉取內容 282 14.3.1 Ajax核心 282 14.3.2 jQuery工具 285 14.3.3 把數據綁到當前DOM 287 14.4 把內容推到客戶端 290 14.4.1 ASP.NET SignalR初探 290 14.4.2 監視遠程任務 291 14.4.3 ASP.NET SignalR的其他場景 294 14.5 小結 296 第 15章 反應式設計的優缺點 297 15.1 反應式Web設計的基礎 297 15.1.1 RWD簡史 297 15.1.2 CSS媒體查詢 298 15.1.3 RWD和設備獨立性 302 15.2 使RWD適配非桌面設備 303 15.2.1 處理圖像 304 15.2.2 處理字體 306 15.2.3 處理朝向 307 15.3 小結 308 第 16章 讓網站對移動友好 309 16.1 讓視圖適配實際設備 309 16.1.1 最適合移動場景的HTML5 309 16.1.2 特性檢測 312 16.1.3 客戶端設備檢測 313 16.1.4 展望未來 316 16.2 設備友好的圖像 316 16.2.1 ImageEngine平臺 316 16.2.2 自動調整圖像大小 317 16.3 提供設備友好的視圖 318 16.3.1 提供移動內容的最佳方式是什么 318 16.3.2 服務器端檢測 319 16.4 小結 324 本書通過介紹一種實用的、問題驅動的,關注用戶的方法,介紹了規劃、設計和構建動態的Web強有力的方法,給出了目前進行Web開發的一套有效解決方案。本書引導讀者選擇和實現特定的技術,闡釋了重要的用戶體驗主題,并探討了對移動友好的技術和反應式設計技術等內容。除此之外,本書還介紹了ASP.NET MVC、SignalR、Bootstrap、AJAX、JSON和JQuery等技術的相關內容。
通過閱讀本書,讀者將學到如何從DDD方法以及現代的UX設計方法中獲益,進而能夠快速構建出解決當前問題并且有出色用戶體驗的Web解決方案。 |