《Effective C#》快速筆記(一)- C# 語言習慣 目錄 一、使用屬性而不是可訪問的數據成員 二、使用運行時常量(readonly)而不是編譯時常量(const) 三、推薦使用 is 或 as 操作符而不是強制類型轉換 四、使用 Conditional ...
Effective C 快速筆記 二 .NET 資源托管 簡介 續 Effective C 讀書筆記 一 C 語言習慣。 .NET 中,GC 會幫助我們管理內存,我們並不需要去擔心內存泄漏,資源分配和指針初始化等問題。不過,它也並非萬能,因為非托管資源需要我們自己進行清理,如文件句柄 數據庫連接 GDI 對象和COM 對象等。 目錄 十二 推薦使用成員初始化器而不是賦值語句 十三 正確地初始化靜 ...
2017-04-26 07:22 3 2447 推薦指數:
《Effective C#》快速筆記(一)- C# 語言習慣 目錄 一、使用屬性而不是可訪問的數據成員 二、使用運行時常量(readonly)而不是編譯時常量(const) 三、推薦使用 is 或 as 操作符而不是強制類型轉換 四、使用 Conditional ...
《Effective C#》快速筆記(四)- 使用框架 .NET 是一個類庫,你了解的越多,自己需要編寫的代碼就越少。 目錄 三十、使用重寫而不是事件處理函數 三十一、使用 IComparable<T> 和 IComparer<T> 實現 ...
我們知道C#是一門虛擬機語言,在C#編譯器首先將C#代碼編譯成IL代碼,運行程序時CLR(Common Language Runtime,公共語言運行時)通過調用JIT(just-in-time Compiler,即時編譯器)來將IL代動態即時編譯成可執行的機器碼。在CLR中有一個非常重要 ...
《Effective C#》快速筆記 - C# 中的動態編程 靜態類型和動態類型各有所長,靜態類型能夠讓編譯器幫你找出更多的錯誤,因為編譯器能夠在編譯時進行大部分的檢查工作。C# 是一種靜態類型的語言,不過它加入了動態類型的語言特性,可以更高效地解決問題。 一、目錄 ...
《Effective C#》快速筆記(三)- 使用 C# 表達設計 目錄 二十一、限制類型的可見性 二十二、通過定義並實現接口替代繼承 二十三、理解接口方法和虛方法的區別 二十四、用委托實現回調 二十五、用事件模式實現通知 二十六、避免返回對內部類對象 ...
《Effective C#》快速筆記 - C# 高效編程要點補充 目錄 四十五、盡量減少裝箱拆箱 四十六、為應用程序創建專門的異常類 四十七、使用強異常安全保證 四十八、盡量使用安全的代碼 四十九、實現與 CLS 兼容的程序集 五十、實現小 ...
如何為我們自己的包含非托管資源的類型編寫資源管理代碼呢?在 .NET 中為我們提供了一種標准的銷毀非托管資源的模式,這個標准的模式能夠使使用者通過調用IDisposable接口正常釋放掉非托管資源,也能夠保證使用者在忘記釋放資源時使用終結器釋放。這個標准模式可以和GC配合,保證僅在最糟 ...
在.NET環境中,非托管系統資源由開發人員來負責釋放,且非托管系統資源必須顯式的使用IDisposable接口的Dispose()來釋放(詳見:了解.NET內存管理機制)。所有封裝或使用了非托管資源的類型都實現了IDisposable接口。同時這些類也在終結器中調用Dispose(),保證 ...