Façade

    Facade 레이어를 도입해보자

    그동안 과제를 해오면서 다른 데브코스 일원들이 Facade 레이어를 도입하는 것을 보았었지만, 저는 그동안 필요성을 느끼지 못해서 미뤄왔었는데, 이번 프로젝트에서 처음으로 Facade 레이어를 도입해보았습니다. 뮤지컬을 등록하기 위해서 서비스에서 위와 같이 많은 Repository 에 의존성을 갖게 됩니다. 한 메서드 안에서 각 repository 를 사용하는 로직들을 다 수행해줘야 했기에 너무 많은 책임을 갖고 있고, 그에 따라 유지보수도 어렵고 응집성도 떨어지는 코드가 되었습니다. 테스트를 작성할 때도 하나의 메서드 테스트 안에서 너무 방대한 테스트가 될 것 같다는 생각에 구조를 수정해야한다는 필요성을 느끼게 되었습니다. 이렇게 각 Service 들은 각 Repository 하나의 의존성만 갖도록 해..