ネタ元 → パーシャルクラスの使い道
んだね。ひとつのクラスを複数のソースで記述できる。
C++屋に言わせてもらえば「なにをいまさらー」なワケです ^^;
C++では クラスの実装 = クラスの宣言 + Σ各メソッドの実装 ですからね。
パーシャルクラス@C# と C++クラス の決定的な違いは、
C++ではクラスの宣言を分割できません。
なのでメソッドやフィールドを後付けでほいほい追加することはできず、
必ず宣言部(ヘッダ)をいぢくらにゃあきません。
επι的には、パーシャルクラスには一抹の不安を覚えます。
というのも、ソースコードひとつ眺めてもそのクラスの全貌を知ることはできません。
そのクラスを実装する全ソースをかき集めないと全体像が見えない。
つまりはコンパイル済みのアセンブリからリフレクション使ってメタデータを
引っこ抜かないと全貌はわからんてことです。
# 片やC++ではヘッダ一本眺めれば、そのクラスの全貌が掴めます。
ソースコードという、ヒトがコードを理解するのに最も単純でツブシの効く表現
だけでは全体像を掴めないってーとこに居心地の悪さみたいなものを感じますです。
プリントアウトをズラリと並べても”これで全部”という保証はどこにもないのですから。
# 同様の居心地の悪さを拡張メソッドにも感じるわけなんだが