Clean Code學派的風格實踐:重構遺留Codebase,突破C#效能瓶頸
-
9折 621元
690元
-
預計最高可得金幣30點 ? 可100%折抵
活動加倍另計 -
HAPPY GO享100累1點 4點抵1元折抵無上限
-
分類:中文書>電腦資訊>APP開發/程式設計>C/C#追蹤? 追蹤分類後,您會在第一時間收到分類新品通知。
- 作者: Jason Alls 追蹤 ? 追蹤作者後,您會在第一時間收到作者新書通知。
- 譯者:江玠峰
- 出版社: 博碩文化 追蹤 ? 追蹤出版社後,您會在第一時間收到出版社新書通知。
- 出版日:2021/07/07
活動訊息
內容簡介
傳統上,C#與Windows桌面應用程式和遊戲的開發息息相關,如今C#被用於各種領域(如Web和雲端App),在行動裝置開發中亦越來越流行。雖然C#具有廣泛的程式功能,不良程式碼仍會讓專業人員面臨效率、可擴充性和可維護性等問題。本書將協助你識別這些問題,並編寫最佳實踐來解決它們。
本書首先比較好程式碼和壞程式碼,並描述程式碼撰寫標準、原理和方法的重要性。然後,你將掌握程式碼審查及其在改善程式碼中的作用,同時確保你遵守業界所認可的程式碼撰寫標準。本書將探索單元測試、深入研究TDD,並處理橫切關注點。你將了解C#程式設計中有關物件、資料結構、例外處理及其他方面的良好程式設計實作。在學習API設計並研究用於提升程式碼品質的工具之後,我們將一起看看壞程式碼的範例,並說明應該避免哪些程式碼撰寫方式。
讀完這本書,你將擁有所需的開發技能、應用業界認可的程式碼撰寫技巧,並編寫整潔、可讀、可擴展和可維護的C#程式碼!
在這本書中,你將學到:
・編寫與其它系統乾淨整合的程式碼,保持明確定義的軟體邊界
・使用C#控制台應用程式範例,實作「失敗-通過-重構」方法
・借助軟體設計模式來處理橫切關注點
・編寫有意義的自訂C#例外
・識別需要重構的劣質C#程式碼
・使用API金鑰保護API,並使用Azure Key Vault保護資料
・使用分析和重構工具來提升程式碼效能
讀者可以到博碩文化官網輸入書號或書名,下載「練習題參考解答」。
目錄
前言
Chapter 1 C#中的程式碼撰寫標準和原則
技術要求
好程式碼與壞程式碼
對程式碼撰寫標準、原則、方法的需求
小結
練習題
延伸閱讀
Chapter 2 程式碼審查:過程和重要性
程式碼審查過程
準備程式碼以供審查
主導程式碼審查
知道要審查什麼
知道何時發送程式碼以供審查
提供及回應審查回饋
小結
練習題
延伸閱讀
Chapter 3 類別、物件和資料結構
技術要求
組織類別
一個類別應該僅具單一職責
註解以生成文件
內聚和耦合
為變更做設計
Demeter定律
不可變的物件和資料結構
物件應該隱藏資料並公開方法
資料結構應該公開資料而且沒有方法
小結
練習題
延伸閱讀
Chapter 4 編寫整潔的函數
了解函數式程式設計
保持方法的輕巧
避免重複
避免多個參數
小結
練習題
延伸閱讀
Chapter 5 例外處理
已檢查和未檢查的例外
避免NullPointerException
業務規則例外
例外應提供有意義的資訊
建立你的自訂例外
小結
練習題
延伸閱讀
Chapter 6 單元測試
技術要求
了解進行良好測試的原因
了解測試工具
TDD方法論實務:失敗、通過和重構
刪除冗餘測試、註解和無效程式碼
小結
練習題
延伸閱讀
Chapter 7 端點到端點系統測試
E2E測試
工廠
依賴注入
模組化
小結
練習題
延伸閱讀
Chapter 8 執行緒與同步
了解執行緒生命週期
新增執行緒參數
使用執行緒池
使用mutex及同步執行緒
使用semaphore處理平行執行緒
限制執行緒池中的處理器和執行緒數量
預防死結
預防競爭條件
了解靜態建構函式和方法
可變性、不可變和執行緒安全性
同步方法的依賴性
使用Interlocked類別
一般性建議
小結
練習題
延伸閱讀
Chapter 9 設計及開發API
技術要求
API是什麼?
API proxy
API設計準則
使用RAML進行API設計
小結
練習題
延伸閱讀
Chapter 10 使用API金鑰和Azure Key Vault保護API
技術要求
動手做API專案:股息日曆
存取Morningstar API
在Azure中建立股息日曆ASP.NET Core Web應用程式
使用API 金鑰保護我們的股息日曆API
測試我們API金鑰的安全性
新增股息日曆程式碼
限制我們的API
小結
練習題
延伸閱讀
Chapter 11 處理橫切關注點
技術要求
裝飾器模式
代理模式
使用PostSharp的AOP
專案:橫切關注點的可重用函式庫
小結
練習題
延伸閱讀
Chapter 12 使用工具以提升程式碼品質
技術要求
定義高品質的程式碼
執行程式碼清理及計算程式碼指標
執行程式碼分析
使用快速操作
使用JetBrains dotTrace分析器
使用JetBrains ReSharper
使用Telerik JustDecompile
小結
練習題
延伸閱讀
Chapter 13 重構C#程式碼:識別程式碼臭味
技術要求
應用程式等級的程式碼臭味
類別等級的程式碼臭味
方法等級的臭味
小結
練習題
延伸閱讀
Chapter 14 重構C#程式碼:實作設計模式
技術要求
實作建立式設計模式
實作結構式設計模式
行為式設計模式的概觀
最後想法
小結
練習題
延伸閱讀
配送方式
-
台灣
- 國內宅配:本島、離島
-
到店取貨:
不限金額免運費
-
海外
- 國際快遞:全球
-
港澳店取:
詳細資料
詳細資料
-
- 語言
- 中文繁體
- 裝訂
- 紙本平裝
-
- ISBN
- 9789864347896
- 分級
- 普通級
-
- 頁數
- 480
- 商品規格
- 23*17
-
- 出版地
- 台灣
- 適讀年齡
- 全齡適讀
-
- 注音
- 級別
訂購/退換貨須知
退換貨須知:
**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**
-
依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
- 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
- 依消費者要求所為之客製化給付。(客製化商品)
- 報紙、期刊或雜誌。(含MOOK、外文雜誌)
- 經消費者拆封之影音商品或電腦軟體。
- 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
- 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
- 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
- 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
- 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
商品評價