기준 확인
public API로 충분히 표현할 수 있으면 friend를 추가하지 않는다.
우선 API 검토friend는 private을 무너뜨리는 우회로가 아니라 특정 함수나 클래스에만 내부 접근을 허용하는 선언이다. 연산자, 직렬화, 테스트 편의를 구분해야 설계가 흐려지지 않는다.
public API로 충분히 표현할 수 있으면 friend를 추가하지 않는다.
우선 API 검토전체 클래스보다 필요한 함수 하나에만 friend를 주는 쪽을 우선한다.
최소 권한friend가 내부 멤버 이름과 레이아웃에 강하게 묶이는지 본다.
변경 비용테스트만을 위해 friend가 필요하다면 관찰 가능한 계약이 부족한지 다시 본다.
설계 신호