ルルのゲーム開発備忘録

主にUnityやC#に関する情報を気まぐれに投稿していきま~す

tips:フィールドのpublicとプロパティの違い

C#では、フィールドは必ずprivateにした方が良い。  
フィールドとプロパティではその背景にある思想が全く異なる。  
フィールドは内部のデータでプロパティは外部とのインターフェイスである。  

また以下の二つのコードには実質的な違いもいくつかある。  
public int hp;  
public int HP{get; set;}   
  
**違い **   
1. バイナリ互換性がない  
2. .NET Frameworkにはプロパティでないと使えない機能がある。  
3. データの互換性がなくなる場合がある。  

またそれ以外にも、C#ではプロパティは大文字(Pascal形式)、フィールド名は小文字(Camel形式)で始めるのがお約束であるので  
意思疎通がうまくいかなくなったりもするかもしれない。