디미터 법칙

    [클린 코드] 객체와 자료구조(3)

    디미터 법칙 디미터 법칙은 모듈은 자신이 조작하는 객체의 속내용을 몰라야 한다는 법칙이다. 앞의 포스팅에서 봤듯이, 객체는 자료를 숨기고 함수를 공개한다. 즉, 객체는 조회 함수로 내부 구조를 공개하면 안 된다는 의미이다. 좀 더 정확히 표현하면 디미터 법칙은 클래스 C의 메소드메서드 f는 다음과 같은 객체의 메소드만 호출해야 한다. 다음 코드는 디미터 법칙을 어기는 듯이 보인다. getOptions() 함수가 반환하는 객체의 getScratchDir() 함수를 호출한 후 getScratchDir() 함수가 반환하는 객체의 getAbsolutePath() 함수를 호출하기 때문이다. final String outputDir = ctxt.getOptions().getScratchDir().getAbsolut..