全面認識 C#(九):類型一致性 - 統一型別系統
前言 C# 透過結構與裝箱/拆箱機制,實現了基本型別與物件型別的統一,解決了 Java 基本型別/包裝類別分離、C++ 模板複雜度的問題。 問題背景 語言
全面認識 C#(七-八):集合與 foreach、結構值型別
七、集合與 foreach 陳述式 統一迭代語法 C# foreach 可迭代任何實作 IEnumerable/IEnumerable<T> 的型別
全面認識 C#(六):列舉 - 型別安全的具名常數
前言 列舉提供型別安全的具名常數群組,是 C# 區別於 Java (早期無 enum) 的重要特性。C# enum 底層為整數型別,支援位元運算、旗標屬性、除錯
全面認識 C#(五-補充):事件進階 - 封裝限制與作者觀點
event 封裝限制示例 public class Game { public event ScoreChangedEventHandler Scor
全面認識 C#(五):事件 - 內建發布/訂閱機制
前言 事件是 C# 內建的發布/訂閱模式實作,基於委派提供封裝、型別安全的通知機制。關鍵字 event 限制委派只能 +=/-= 訂閱/取消訂閱,防止外部任意呼
全面認識 C#(四):委派 - 型別安全的函式指標
前言 委派是 C# 實現回呼、事件、非同步程式設計的基石。它是型別安全、物件導向的函式指標,可參考多個方法 (多點廣播)。 核心概念 概念說明 委派型
全面認識 C#(三):索引器與集合存取語法
前言 索引器讓類別實例能像陣列一樣使用方括號 [] 存取元素,是建構集合類別、資料容器的核心語法。 基本語法 _stories[index] = value
全面認識 C#(一):C# 與 Java 核心特性比較
前言 本文節譯自 Ben Albahari 的《A Comparative Overview of C#》,系統比較 C#、Java 與 C++ 的核心語言特性
淺析 C# 套接字程式設計:基礎概念與聊天室實作
前言 C# 作為 .NET 平台的核心語言,提供了豐富的網路程式設計支援。本文介紹套接字基本概念、工作原理,並以聊天室為例展示 C# 同步 Socket 程式設
用設計模式固化你的 C# 程式(六-2):C++ State 實作細節與記憶體管理
C++ State 模式完整實作細節 本文補充 C++ 版本的完整類別定義與記憶體管理考量,作為跨語言設計模式實作的參考。 state.h - 完整類別宣告
用設計模式固化你的 C# 程式(六-1):結語與 C++ State 實作
C++ State 模式完整實作 (標頭檔 state.h) #ifndef STATE_H #define STATE_H class VendingMa
用設計模式固化你的 C# 程式(五-2):State 狀態模式完整實作
完整 C# 實作:自動販賣機狀態機 ChangeState(vm, TwentyState.Instance); public override vo
用設計模式固化你的 C# 程式(五-1):State 狀態模式簡介
前言 State 模式允許物件在內部狀態改變時改變其行為,物件彷彿變更了類別。本文介紹狀態模式核心概念,並以自動販賣機為例展示狀態轉換邏輯。 模式結構 Co
用設計模式固化你的 C# 程式(四):Composite 組合模式
前言 當需要以統一介面處理「部分-整體」階層結構時,Composite 模式讓客戶端程式碼無需區分單一物件與容器物件,大幅簡化遞迴結構的操作邏輯。 核心概念
用設計模式固化你的 C# 程式(三):Decorator 裝飾者模式
前言 當需要在不修改原有類別的前提下,動態為物件新增職責時,Decorator 模式是最佳選擇。它以組合取代繼承,提供比靜態繼承更彈性的功能擴展方式。 動機場
用設計模式固化你的 C# 程式(二):Strategy 模式完整實作與 C++ 對照
前言 承接上篇,本文提供 Strategy 模式的完整可執行 C# 範例,並附上 C++ 對照實作,幫助讀者理解跨語言的模式本質。 C# 完整實作:質數測試策
用設計模式固化你的 C# 程式(一):Singleton 與 Strategy 模式
前言 設計模式是軟體開發中經驗的結晶,為常見問題提供經驗證可行的解決方案。本系列文章將介紹幾個流行的設計模式,並以 C# 為語言展示其精髓,幫助你建立更具擴展性