Effective C# 做法 22-23 讀書心得,涵蓋:泛型共變數(Covariance)與反變數(Contravariance)的 out/in 關鍵字差異與應用場景、LINQ 和事件處理中的實際運用,以及使用 delegate 定義型別參數方法約束以提升泛型 API 彈性的技巧。
Effective C# 做法 20-21 讀書心得,涵蓋:以 IComparable<T> 實作預設排序、以 IComparer<T> 提供多種排序策略並搭配 LINQ 使用,以及建構支援 IDisposable 型別參數的泛型類別時的防衛性寫法與 Lazy<T> 應用。
Effective C# 做法 18-19 讀書心得,涵蓋:正確使用泛型與最少足夠約束的設計原則、JIT 對參考型別與值型別泛型的不同處理方式、T? 的正確使用、避免 new()/struct/class 約束的理由,以及利用執行期型別檢查(runtime type checking)特化泛型演算法的實作。
Effective C# 做法 16-17 讀書心得,涵蓋:絕不在建構子中��叫虛擬函式的原因與 Static Code Analyzer 工具(JetBrains Rider、ReSharper)、標準 Dispose 模式的實作方式、Unmanaged 資源判斷準則,以及哪些類別才需要繼承 IDisposable。
Effective C# 做法 14-15 讀書心得,涵蓋:使用建構子初始化程序(constructor chaining)減少重複邏輯、預設參數與多載建構子的取捨、readonly 欄位繼承限制,以及避免在高頻呼叫路徑中建構不必要物件的最佳實踐。
Effective C# 做法 11-13 讀書心得,涵蓋:.NET 垃圾回收(GC)的層代(Generation)機制、使用 IDisposable 與 Dispose 正確釋放資源、偏好成員初始化程序而非建構子賦值,以及靜態類別成員(包含 Singleton)的正確初始化方式。
Effective C# 做法 07-10 讀書心得,涵蓋:以 delegate 表示 callback 降低耦合、使用空條件運算子安全觸發事件、減少 Boxing 與 Unboxing 對效能的影響,以及 new 修飾詞在基底類別更新時的正確使用時機。
Effective C# 做法 04-06 讀書心得,涵蓋:以字串插值(interpolated string)取代 string.Format、使用 FormattableString 處理文化特定字串格式差異、透過 nameof 運算子避免字串型別 API 的潛在問題。
Effective C# 做法 01-03 讀書心得,涵蓋:偏好使用 var 隱含型別宣告的時機、const 與 readonly 的選擇準則(編譯期 vs 執行期常數),以及使用 is/as 運算子進行安全型別轉換的最佳實踐。
C# 淺複製(Shallow Copy)與深複製(Deep Copy)的差異與實作方式。透過 MemberwiseClone 示範淺複製對 Reference Type 的共享問題,以及如何手動實作深複製讓每個物件獨立,附完整程式碼範例。