2008-10-15 2 views

답변

7

두 번째 예는 필드를 공개 (사용자의 질문이 아님)로 공개합니다. 이것은 간단한 속성을 만드는 간단한 방법을 제공합니다. 속성은 공개 필드가 아닌 기본값이어야합니다. 이유의 목록은 끝이지만, 시작 :

  • 캡슐화
  • 캡슐화
  • 바인딩 검증을
  • 캡슐화
  • 데이터 작업을 수행하는 통지
  • 캡슐화
  • 기능을 추가 할 수
  • 능력을
  • 보안 검사

오 - 캡슐화에 대해 언급 했습니까?

필드를 속성으로 변경하면 사실은 큰 변화입니다. 특히 "ref"코드 나 변경 가능한 구조체 (yeuch)를 많이 사용하는 경우 더욱 그렇습니다.

+1

캡슐화 또한 중요합니다. 나는 당신이 그렇게 훌륭한 목록에 포함시키지 않았다는 것에 놀랐습니다. –

+0

오, 내 잘못 - 다음 번에 그걸 기억하려고 노력할거야. –

1

사용자 값이 변경 될 때 수행해야 할 여러 가지 작업이있을 수 있습니다. 수업을 디자인 할 때 미리 알지 못하거나 출석하지 않은 것들. 예를 들어 사용자 값이 5 자 이상이어야한다는 것을 알게되었습니다. 보유하고있는 자산이 있다면 구현이 간단합니다. 공개 필드가있는 경우 해당 필드를 속성으로 변경하고 모든 종속 코드를 다시 컴파일해야합니다.

본질적으로 우리 유형의 공개/API 부분과 개인 구현 세부 사항을 명시 적으로 분리한다고 생각합니다.

누군가 캡슐화에 대해 언급 했습니까? ;)

관련 문제