일반
[객체지향] 비슷한것 같으면서도 다른 Attribute와 Property의 차이점
뚱2
2011. 5. 19. 10:50
객체지향 언어를 공부하면서 제일 헷갈렸던 부분입니다.
객체지향 책을들 보면은 Attribute와 Property를 혼용해서 같은 의미로 사용하는 책을 종종 볼수가 있습니다.
같은듯 하면서 다른 조금 미묘한 차이입니다.
Attribute : 클래스 인터페이스, 함수등이 속성을 설정하는데 사용
Property : 클래스 내부의 특정 멤버 변수를 외부로 노출 시키는 함수를 정의 하는 방법
결국 C++을 예로 들면
Attribute는 멤버 변수이고 Property는 멤버 변수의 안전하게 캡슐화 해서 접근할수 있게 하는 get, set 함수(method)를
말한다고 할 수 있습니다.
그런데 Property는 외형상으로 public 멤버 변수(Attribute)와 같이 보이기 때문에 구별이 힘듭니다.
(구별이 힘든언어 Objective-C, Visual Basic, Javascript)
사소한 것이지만 정확히 알고 사용하는것이 중요한것 같습니다.