동적 프록시 SRP
나중에 강사님이나 더 잘하시는 분이 답변다시겠지만, 제가 이해한 바로는 이렇습니다. 동적 프록시를 적용하기 전에는, 어떤 클래스의 메소드에 시간 측정 기능을 프록시로 구현하기 위해서 해당 클래스의 프록시 클래스를 만들고 프록시 클래스에다가 시간 측정 로직을 추가했습니다 하지만 이렇게 직접 프록시 클래스를 만들면, 시간 측정 기능을 추가해야 되는 클래스가 100개 이면 해당 100개의 프록시 클래스를 직접 만들고 시간 측정 기능을 100개의 프록시 클래스에다가 중복으로 추가해야 됩니다 하지만 동적 프록시 기술을 사용하면 강사님이 말씀하셨다시피, 프록시 클래스를 수 없이 만들어야 하는 문제도 해결하고, JDK 동적 프록시의 경우 invocationHandler 구현체에다가 프록시 클래스에 적용할 로직을 구현하면 됩니다 그러면 동적 프록시를 사용하기 전에 있던 100개의 프록시 클래스에 있던 시간 측정 로직이 한 개의 invocationHandler 구현체에 들어가서 향후 변경이 있을 때 간편하게 변경 가능합니다