라이브러리 : 폴더,파일명에 대한 규칙 X 더 자유
<aside> ⭐ 도구(가위)를 이용해서 내가 직접 컨트롤해서 종이를 자르기
</aside>
프레임워크 : 폴더,파일명에 대한 규칙 O 더 엄격
<aside> ⭐ 도구(비행기)를 타고 비행기의 컨트롤에 의해 이동하기
</aside>
의존성이 높아짐(모듈간의 결합이 강해짐) → 의존성 주입 (DI) 를 통해 결합을 조금 느슨하게 만들어 해결 가능
의존성 주입 : 내가 직접 만들어서 쓰는게 아니고, DI(의존성 주입자)가 내가 필요한 하위 모듈들을 만들어서 주입해주는 방식
<aside> ⭐ 상위모듈은 하위모듈에서 어떠한것도 가져오지않아야 한다. 둘 다 추상화에 의존해야 하며, 이때 추상화는 세부사항에 의존하지말아야한다.
</aside>
TDD 시 걸림돌이 된다