More Effective C# 中文版 | 寫出良好 C# 程式的 50個具體做法, 2/e (More Effective C# : 50 Specific Ways to Improve Your C#, 2/e)
Bill Wagner 陳開煇/孫天佑
- 出版商: 碁峰資訊 參展書2書75折
- 出版日期: 2018-05-17
- 定價: $450
- 售價: 7.9 折 $355
- 語言: 繁體中文
- 頁數: 292
- ISBN: 9864767895
- ISBN-13: 9789864767892
-
相關分類:
C#
- 此書翻譯自: More Effective C# : 50 Specific Ways to Improve Your C#, 2/e (Includes Content Update Program)
-
相關翻譯:
More Effective C#:改善C#代碼的50個有效方法(原書第2版) (簡中版)
立即出貨(限量)
買這商品的人也買了...
-
大話設計模式$620$527 -
無瑕的程式碼 - 敏捷軟體開發技巧守則 (Clean Code: A Handbook of Agile Software Craftsmanship)$580$435 -
$954精通 C#, 6/e (Pro C# 5.0 and the .NET 4.5 Framework, 6/e) -
無瑕的程式碼 番外篇-專業程式設計師的生存之道 (The Clean Coder: A Code of Conduct for Professional Programmers)
$360$280 -
物件導向設計模式-可再利用物件導向軟體之要素 (精裝典藏版) (Design Patterns: Elements of Reusable Object-Oriented Software)$550$550 -
C# 6.0 錦囊妙計, 4/e (C# 6.0 Cookbook, 4/e)$880$616 -
Effective Debugging 中文版 | 軟體與系統除錯的 66 個具體作法 (書況略舊,不介意再下單)$450$382 -
無瑕的程式碼-敏捷完整篇-物件導向原則、設計模式與 C# 實踐 (Agile principles, patterns, and practices in C#)$790$671 -
Effective C# 中文版 | 寫出良好 C# 程式的 50個具體做法, 3/e (Effective C# : 50 Specific Ways to Improve Your C#(Covers C# 6.0), 3/e)$450$355 -
Effective SQL 中文版 | 寫出良好 SQL 的 61個具體做法 (Effective SQL : 61 Specific Ways to Write Better SQL)$450$355 -
打造可維護軟體|編寫可維護程式碼的10項法則 (C#版) (Building Maintainable Software, C# Edition: Ten Guidelines for Future-Proof Code)$450$355 -
$312Web API 的設計與開發 (Web API : the Good Parts) -
單元測試的藝術, 2/e (The Art of Unit Testing: with examples in C#, 2/e)$650$507 -
演算法圖鑑:26種演算法 + 7種資料結構,人工智慧、數據分析、邏輯思考的原理和應用 step by step 全圖解$450$270 -
為你自己學 Git$500$390 -
資料結構 -- 使用 C#$540$459 -
Effective DevOps 中文版 (Effective DevOps: Building a Culture of Collaboration, Affinity, and Tooling at Scale)$720$568 -
無瑕的程式碼-整潔的軟體設計與架構篇 (Clean Architecture: A Craftsman's Guide to Software Structure and Design)$580$452 -
$768C# 函數式編程 編寫更優質的 C# 代碼 (Functional Programming in C# : How to Write Better C# Code) -
圖說演算法:使用 C#$490$382 -
重構|改善既有程式的設計, 2/e (繁中平裝版)(Refactoring: Improving The Design of Existing Code, 2/e)$800$632 -
Working Effectively with Legacy Code : 管理、修改、重構遺留程式碼的藝術 (中文版)$720$612 -
Essential C# 7.0 -- C# 必備指南 (中文版) (Essential C# 7.0, 6/e)$990$495 -
架構師的自我修煉:技術、架構和未來$534$507 -
Clean Code 學派的風格實踐:重構遺留 Codebase,突破 C# 效能瓶頸 (Clean Code in C#: Refactor your legacy C# code base and improve application performance by applying best practices)$690$538
碁峰書展|參展書2書75折 詳見活動內容 »
-
79折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$474 -
79折
內行人才知道的系統設計面試指南$580$458 -
79折
提升程式設計師的面試力|189道面試題目與解答, 6/e (修訂版) (Cracking the Coding Interview : 189 Programming Questions and Solutions, 6/e)$980$774 -
75折
Software Architecture in Practice, 4/e (繁體中文版)$780$585 -
79折
內行人才知道的系統設計面試指南 第二輯 (System Design Interview – An Insider's Guide: Volume 2)$820$647 -
79折
敏捷團隊目標設定指南|OKR 落地與成果導向實踐法$500$395 -
79折
內行人才知道的物件導向設計面試指南$690$545 -
79折
內行人才知道的生成式 AI 系統設計面試指南 (Generative AI System Design Interview)$750$592 -
75折
團隊自省指南|打造敏捷團隊$500$375 -
79折
Arduino 自走車最佳入門與應用 -- 打造輪型機器人輕鬆學, 2/e$600$474 -
79折
凡人也能懂的白話人工智慧演算法 (Grokking Artificial Intelligence Algorithms)$580$458 -
79折
戰勝 C語言, 3/e$600$474 -
79折
內行人才知道的程式設計模式面試指南 (Coding Interview Patterns: Nail Your Next Coding Interview)$780$616 -
79折
SQL Server 2025/2022 資料庫設計與開發實務$700$553 -
79折
AI 超神簡報術:NotebookLM × Gemini × Gamma 全解鎖 (附範例素材/提示詞/影音教學)$550$434 -
79折
Python 初學特訓班:從快速入門、主流應用到 AI 全面實戰, 6/e (附超過500分鐘影音教學/範例程式)$490$387 -
79折
重構|改善既有程式的設計, 2/e (繁中平裝版)(Refactoring: Improving The Design of Existing Code, 2/e)$800$632 -
79折
Python 自動化的樂趣|搞定重複瑣碎&單調無聊的工作, 3/e (Automate the Boring Stuff with Python, 3/e)$980$774 -
79折
Visual C# 2026 超級必修課:ChatGPT 與 Copilot 協作、Azure OpenAI 實戰開發$580$458 -
75折
ChatGPT 5 實戰應用:提問技巧、資料解析、圖像生成、語音助理、工作自動化、跨工具整合$500$375 -
75折
深入 Linux Kernel 程式設計:kernel 內部原理、模組開發與同步機制, 2/e (Linux Kernel Programming : A comprehensive and practical guide to kernel internals, writing modules, and kernel synchronization, 2/e)$980$735 -
79折
內行人才知道的機器學習系統設計面試指南 (Machine Learning System Design Interview)$680$537 -
5折
戰勝 C語言, 2/e (過版書特價)$580$290 -
79折
AI 提問 X 學習 X 應用:ChatGPT、NotebookLM、Gemini、GitHub Copilot,從零到 AI Agent 實戰$390$308 -
79折
Code That Fits in Your Head|軟體工程的啟發式方法$580$458
相關主題
商品描述
內容簡介:涵蓋C# 7.0
在《More Effective C# 中文版 第二版》中,世界知名的.NET專家Bill Wagner指出並解說50個特定強大與效能良好的C# 7.0中高級技巧。針對可能遇到的問題,提出強而有力的新解法,以因應越來越複雜的C#語言與日漸龐大的開發社群。
歷經三個版本的《Effective C#》,Wagner清楚的解釋、專業的建議與實際範例程式碼,已被證明對成千上百位開發者而言是無價的。《More Effective C#,第二版》以經過驗證的相同方式介紹C# 7.0新功能,協助你更有效率地執行熟悉工作。
基於卓越的C#經驗,以及在全球C#標準委員會的關鍵性角色,Wagner強調以物件導向、函數式及服務導向的方式,以C#處理資料、以更好的方式向使用者與其他程式設計師表達您的用意、以及運用強大的非同步與動態程式設計。
‧使用屬性取代可存取的資料成員(做法1)
‧區分實質與參考型別(做法4)
‧了解多種相等概念之間的關係(做法9)
‧在你的API中避免轉換運算子(做法11)
‧了解介面與virtual methods之間差異(做法15)
‧避免在基底類別中定義方法多載(做法19)
‧建立清楚的、最少的、以及完整的方法群(做法22)
‧在iterators 及async方法中使用區域函式啟動立即錯誤回報(做法26)
‧非同步工作中使用async方法(做法27)
‧避免執行緒配置與context switches(做法30)
‧建構有考慮例外情況的平行演算法(做法36)
‧使用執行緒區集取代建立執行緒(做法37)
‧使用BackgroundWorker做跨執行緒通訊(做法38)
‧了解動態程式設計的利弊(做法43)
‧了解如何運用expression API(做法46)
‧在公開的APIs中減少動態物件的使用(做法47)
你已經是一位成功的C#程式設計師,本書會使你更為出色。
目錄大綱
章節說明:前言
第 1 章 處理資料型別
作法 01 使用屬性取代可存取的資料成員
作法 02 可變動的資料優先使用隱藏屬性
作法 03 實值型別優先使其具不可變性
作法 04 區分實值與參考型別
作法 05 確保 0 是實值型別的有效狀態
作法 06 確保屬性運作如資料一般
作法 07 使用 Tuples 限制型別的範圍
作法 08 在匿名型別上定義區域函式
作法 09 了解多種相等概念之間的關係
作法 10 了解 GetHashCode() 的陷阱
第 2 章 API 設計
作法 11 在你的 API 中避免轉換運算子
作法 12 使用選擇性引數減少方法的多載
作法 13 限制型別的可見性
作法 14 優先定義並實作介面進行繼承
作法 15 了解介面與 Virtual Method 之間差異
作法 16 為通知實作事件模式
作法 17 避免傳回內部類別物件的參考
作法 18 優先使用 Override 替代 Event Handler
作法 19 避免在基底類別中定義方法多載
作法 20 了解事件如何增進物件之間執行期的耦合
作法 21 只宣告 Nonvirtual Event
作法 22 建立清楚的、最少的,以及完整的方法群
作法 23 部分類別的建構函式、更動子與 Event handler 使用部分方法
作法 24 避免使用 ICloneable,因為它限制你的設計選擇
作法 25 Array 引數限制只使用 params 陣列
作法 26 在 Iterators 與 Async 方法中使用區域函式啟動立即錯誤回報
第 3 章 以Task 為基礎的非同步程式設計
作法 27 非同步工作使用 Async 方法
作法 28 永遠不要寫 async void 方法
作法 29 避免結合同步與非同步方法
作法 30 避免執行緒配置及 Context Switches
作法 31 避免非必要的封送處理(Marshalling)Context
作法 32 使用 Task 物件合成非同步工作
作法 33 考慮實作 Task 取消協定(Task Cancellation Protocol)
作法 34 緩衝擴充的非同步回傳值
第 4 章 平行處理
作法 35 學習 PLINQ 如何實作平行演算法
作法 36 建構有考慮例外情況的平行演算法
作法 37 使用執行緒區集取代建立執行緒
作法 38 使用 BackgroundWorker 做跨執行緒通訊
作法 39 了解 XAML 環境中的跨執行緒呼叫
作法 40 使用 lock() 作為同步處理的首選
作法 41 鎖定 Handles 使用最小可能的範圍
作法 42 避免在鎖定的區段呼叫不明的程式碼
第 5 章 動態程式設計
作法 43 了解動態程式設計的利弊
作法 44 透過動態型別運用泛型引數執行期的型別
作法 45 資料驅動(Data-Driven)動態型別使用 DynamicObject 或
IDynamicMetaObjectProvider
作法 46 了解如何運用 Expression API
作法 47 在公開的 API 中減少動態物件的使用
第 6 章 參與全球C# 社群
作法 48 尋求最好的答案,而不是最受歡迎的答案
作法 49 參與規格及程式碼的訂定
作法 50 考慮用分析器自動化慣用法













