設計模式六大原則速覽:開閉、里氏、依賴倒置、接口隔離、合成復用、迪米特法則
前言 轉載自「請叫我頭頭哥」博客《設計模式六大原則》,整理為速查卡片,建議配合具體模式學習。 六大原則一覽表 原則核心定義關鍵詞指導意義 開閉原則 (OCP
C# 控件 Name 與 Text 屬性區別:代碼訪問 vs 界面顯示
核心區別 屬性用途可見性代碼中角色 Name程式碼識別符僅設計時/代碼中可見訪問控件實例的「變量名」 Text用戶界面顯示文本運行時用戶可見控件呈現的「內容值
ADO.NET 參數化查詢輔助方法:告別字符串拼接,防注入又高效
痛點:手寫參數繁瑣且易錯 @Age; var cmd = new SqlCommand(sql, conn); cmd.Parameters.AddWithV
Unity3D Android 端 JSON 讀寫實戰:LitJson + 持久化路徑 + 打包發布全流程
準備工作 下載 LitJson.dll(NuGet: `Install-Package LitJson` 或官網) 放入 Unity 專案 `Assets/P
C# 實現 Excel 導入導出:XML 映射生成與 OLEDB 讀取實戰
導出方案:構建 Excel XML (SpreadsheetML) 手動拼裝符合 Excel 2003 XML 格式的字符串,再由瀏覽器/Excel 打開。
C# Interactive Shell:C# Pad 瀏覽器即時運行、變量保持與腳本化體驗
什麼是 C# Pad? 線上 C# REPL 環境(csharppad.com),類似 Visual Studio **即時運算視窗**,但運行在瀏覽器中,支援
NPOI 導入導出 Excel 終極封裝:匿名類支援、樣式配置、XML 映射與流式傳輸
設計目標 單 Sheet 導入導出 支援 `List`、`DataTable` 雙模式 匿名類導出(`new { Name=A, Age=18 }`) XML
Task-based Asynchronous Pattern (TAP) 實戰:await、取消、進度、組合子與自定義數據結構
await 深度解析 語法要求:只能在 `async` 方法中使用,返回 `void`、`Task`、`Task` 編譯器轉換:生成狀態機,在 `await`
C# 面向對象入門:私有字段、屬性封裝、this 指針與值/引用傳遞詳解
一、訪問修飾符:保護數據的第一道防線 public:任意代碼可訪問 private:僅本類內部可訪問(默認) protected:本類與衍生類可訪問 inte
.NET 線程池實戰:ThreadPool、Task、異步委派與配置最佳實踐
ThreadPool 基礎用法 { // 執行緒池工作項 DoBackgroundWork(); }); 缺點:無返回值、無異常傳播、無完成通
.NET 多線程核心概念:線程、上下文切換、前後台線程與線程池必要性
為何需要多線程? 響應性:耗時運算(計算、I/O)移至後台,UI 執行緒保持流暢 資源利用:等待 I/O(網路、磁碟、用戶輸入)時釋放 CPU,避免空轉
命令行打包 NuGet 套件:從 nuspec 到自動化版本號的完整流程
為何選擇命令行而非 GUI? `NuGet Package Explorer` 適合偶爾打包,但 CI/CD、版本號自動同步、批量發布需命令行自動化。 核心工
從零構建 Fluent 風格對象驗證庫:規則鏈、條件驗證與錯誤訊息客製化
架構設計:解耦驗證規則構建與執行 核心介面: `IValidatorBuilder`:Fluent 建構器,定義規則鏈 `IRuleBuilder`:單條規則
案例研究:手寫高效能 CopyToAsync 實現流異步拷貝與進度/取消控制
背景:.NET 4 缺少 Stream.CopyToAsync 同步 `Stream.CopyTo` 簡單易用,但阻塞線程。為實現真正的非阻塞 I/O,需自行實
IronPython 賦能 .NET:動態腳本熱更新、業務規則外部化與 DSL 構建實戰
為何引入 IronPython? 面對策劃頻繁變動的業務邏輯(遊戲數值、優惠規則、工作流條件),重編譯部署 .NET DLL 成本過高。IronPython 提
HttpWebClient:支援 Cookie、自動重導向控制與預處理委派的增強型 WebClient
為何要擴展 WebClient? 原生 `WebClient` 雖簡單但缺乏靈活性:無 Cookie 容器、無法控制自動重導向、無法存取原始 `WebRespo
OpenXML 實現 Excel 欄位寬度自適應內容完整方案
痛點:OpenXML 無內建 AutoFit 使用 OpenXML SDK 生成 Excel 時,發現 `Column` 類只有 `Width` 屬性需指定具體
C# 閉包陷阱:foreach 與 for 循環中變量捕獲的差異與解決方案
引言:看似簡單的輸出題 請預測下列代碼輸出: public static void Main() { Console.WriteLine(Startin