C# 프로퍼티(property), 자바 getter setter보다 나을까?
C# property를 사용함으로써 얻을 수 있는 이점은 무엇인가? 이점이라고 하면 비교의 대상이 있어야 하는데, 멤버 변수를 public으로 선언했을 때에 비해서 얻을 수 있는 이점과 getter, setter 메서드를 작성할 때에 비해서 얻을 수 있는 이점으로 구분되어야겠다. 물론 대부분의 블로그에서 그냥 구분없이 막 싸질러놨다. 구분하자면 다음과 같을 것이다. 멤버 변수를 public으로 선언했을 때에 비해서, property를 사용함으로써 얻을 수 있는 이점 이건 getter, setter 메서드를 작성해도 충분히 얻을 수 있는 이점이다. 1. 정보 은닉 가능(메서드를 통해 숨길 수 있다) 2. set 시 값의 유효성 검증 가능 3. 데이터 무결성 보장 가능 4. setter가 무결성을 해칠 수 ..
2023.05.03