《EffectiveC#中文版-改善C#程式的50種方法》是Bill Wagner寫的圍繞一些關於C#和。NET主題的書,包括C#語言元素、.NET資源管理、使用C#表達設計、創建二進制組件和使用框架等,講述了最常見的50個問題的解決方案,為程式設計師提供了改善C#和。NET程式的方法。本書通過將每個條款構建在之前的條款之上,併合理地利用之前的條款,來讓讀者最大限度地學習書中的內容,為其在不同情況下使用最佳構造提供指導。本書適合各層次的C#程式設計師閱讀,同時可以推薦給高校教師(尤其是軟體學院教授C#/.NET課程的老師),作為C#雙語教學的參考書。
基本介紹
- 書名:EffectiveC#中文版-改善C#程式的50種方法
- 作者:(美)Bill Wagner(華格納)
- 原版名稱:Effective C#: 50 Specific Ways to Improve Your C#
- 譯者:李建忠
- ISBN:7115158886或9787115158888
- 頁數:304頁
- 定價:¥49.00元
- 出版社:人民郵電出版社
- 出版時間:2007 年5月
- 開本:16開
- 原出版社:Addison-Wesley Professional
- 叢書名:圖靈程式設計叢書.NET系列
編輯推薦,作者簡介,目錄,
編輯推薦
業界專家經驗薈萃,講述從優秀到卓越的秘訣,涵蓋C#2.0。
“一直以來,讀者們總在不停地問我,什麼時候寫EffectiveC#?本書的出版使我如釋重負。令人高興的是,我本人已經從閱讀Bill的著作中獲益良多,相信讀者也會和我一樣。”
——ScottMeyers,EffectiveC++作者,世界級面向對象技術專家
C#與C++、Java等語言的相似性大大降低了學習難度。但是,C#所具有的大量獨特的特性和實現細節。有時又會使程式設計師適得其反:他們往往根據既有經驗,錯誤地選用了不恰當的技術。從而導致各種問題。與此同時,隨著數年來C#的廣泛套用,業界在充分利用C#的強大功能編寫快速、高效和可靠的程式方面也積累了豐富的最佳實踐。
本書秉承了ScottMeyers的EffectiveC++和JoshuaBloch的EffectiveJava所開創的偉大傳統.用真實的代碼示例,通過清晰、貼近實際和簡明的闡述,以條款格式為廣大程式設計師提供凝聚了業界經驗結晶的專家建議。
本書中,著名.NET專家BillWagner就如何高效地使用C#語言和.NET庫。圍繞C#語言元素、.NET資源管理、使用C#表達設計、創建二進制組件和使用框架等重要主題,講述了如何在不同情況下使用最佳的語言構造和慣用法,同時避免常見的性能和可靠性問題。其中許多建議讀者都可以舉一反三。立即套用到自己的日常編程工作中去。
作者簡介
Billwagner是世界知名的.NET專家,微軟C#領域的MVP,並榮獲微軟RegionalDirector稱號。他是著名軟體諮詢公司SRTSolutions的創始人,有20多年軟體開發經驗,曾經領導了眾多成功的Windows平台產品的開發。他是微軟開發社區的活躍人物,長期擔任MSDNMagazine、ASP.NETPro、VisualStudioMagazine等技術雜誌的專欄作者。
目錄
第1章C#語言元素
條款1:使用屬性代替可訪問的數據成員
條款2:運行時常量(readonly)優於編譯時常量(const)
條款3:操作符is或as優於強制轉型
條款4:使用Conditional特性代替#if條件編譯
條款5:總是提供ToString()方法
條款6:明辨值類型和引用類型的使用場合
條款7:將值類型儘可能實現為具有常量性和原子性的類型
條款8:確保0為值類型的有效狀態
條款9:理解幾個相等判斷之間的關係
條款10:理解GetHashCode()方法的缺陷
條款11:優先採用foreach循環語句
第2章.NET資源管理
條款12:變數初始化器優於賦值語句
條款13:使用靜態構造器初始化靜態類成員
條款14:利用構造器鏈
條款15:利用using和try/finally語句來清理資源
條款16:儘量減少記憶體垃圾
條款17:儘量減少裝箱與拆箱
條款18:實現標準Dispose模式
第3章使用C#表達設計
條款19:定義並實現接口優於繼承類型
條款20:明辨接口實現和虛方法重寫
條款21:使用委託表達回調
條款22:使用事件定義外發接口
條款23:避免返回內部類對象的引用
條款24:聲明式編程優於命令式編程
條款25:儘可能將類型實現為可序列化的類型
條款26:使用IComparable和IComparer接口實現排序關係
條款27:避免ICloneable接口
條款28:避免強制轉換操作符
條款29:只有當新版基類導致問題時才考慮使用new修飾符
第4章創建二進制組件
條款30:儘可能實現CLS兼容的程式集
條款31:儘可能實現短小簡潔的函式
條款32:儘可能實現小尺寸、高內聚的程式集
條款33:限制類型的可見性
條款34:創建大粒度的WebAPI
第5章使用框架
條款35:重寫優於事件處理器
條款36:合理使用.NET運行時診斷
條款37:使用標準配置機制
條款38:定製和支持數據綁定
條款39:使用.NET驗證
條款40:根據需要選用恰當的集合
條款41:DataSet優於自定義結構
條款42:利用特性簡化反射
條款43:避免過度使用反射
條款44:為應用程式創建特定的異常類
第6章雜項討論
條款45:優先選擇強異常安全保證
條款46:最小化互操作
條款47:優先選擇安全代碼
條款48:掌握相關工具與資源
條款49:為C#2.0做準備
條款50:了解ECMA標準
索引