1. 의존하다 기능 구현을 위해 다른 구성 요소를 사용하는 것. ex) 객체 생성, 메소드 호출, 데이터 사용 등 의존은 변경이 전파될 가능성이 있음을 의미 내가 의존하는 대상이 변경되면 나도 바뀔 가능성이 존재 == 의존하는 대상이 변경되면 의존받는 대상도 바뀔 가능성이 존재 ex) 호출하는 메소드의 파라미터 변경 ex) 호출하는 메소드가 발생할 수 있는 exception 타입 추가 (예외 처리) 2. 순환 의존 A->B->C->A의 형태로 의존하는 관계. # 문제점 변경 연쇄 전파 가능성 존재. => 왠만하면 클래스, 패키지, 모듈 등의 모든 수준에서 순환의존이 없도록 구현하도록 하자. Q. 의존하는 대상이 많다면? A,B,C,D,E,F를 의존하는 X가 존재한다고 할때 X는 의존하는 애들이 바뀔 때 ..