C# 언어에서 Property를 한글로 '프로파티'라고 적으면 주의 사람들은 이상해 하거나, 웃는다. 나도 '프로퍼티'라고 적고 싶긴 하지만, MSDN에 당당히 '프로파티'라고 써 놓을 걸 어떻게 하란 것인가?
어쨌든, 일전에 본인 클래스 설계 스타일 중, 클래스 내부에서 프로파티를 되도록이면 안쓸려고 한다고 설명을 했던 적이 있다. 물론 지금도 그런 스타일이긴 하다.
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
즉 클래스 내부에서는 _name 변수로 접근을 하지만, Name 프로파티로 접근을 하지 않는다는 말인데, 이유인 즉슨 _name 변수 즉 메모리상의 주소 공간에 대한 접근 경로를 일원화하는데 그 목적이 있기때문이다.
아 그런데, C# 3.0에서 변수를 코드상에서 직접 선언하지 않고 프로파티를 선언할 수 있다보니 나의 스타일이 마구마구 깨지고 있는 것이 사실이다.
public string Name { get; set; } // 컴파일하면 문자열 변수가 생긴다.
접근 경로의 일원화라는 부분에는 영향을 미치지 않지만, 뭔가 싫다~ 위처럼 선언하면 내부에서도 Name 프로파티로 접근할 수 밖에 없다.
결론. 그냥 관대하게 살려고 한다.
