작성
·
573
답변 1
8
안녕하세요. gjdbs2597님
추상화 비용이 발생한다는 것은 여러가지 의미가 있습니다. 그 중에 가장 어려운 것은 코드가 복잡해진다는 것입니다. 추상화가 없다면 그냥 코드를 따라가면 되는데, 추상화가 있으면 추상 인터페이스를 보고 어떤 구현체가 실제 동작할지 또 추가로 찾아야 하는 과정을 거쳐야 합니다. 쉽게 이야기해서 코드를 계속 따라가기가 어렵습니다.
이 부분은 성능에 대한 부분이라기 보다는 복잡도에 대한 부분입니다.
추상화를 하면 구현체를 갈아끼울 수 있어서 확장성이 늘어나기 때문에 유지보수하기 더 좋아지는 부분도 있지만, 반대로 추상화가 꼭 필요하지 않은 곳 까지 추상화하게 되면 코드를 유지보수하기 더 어려워 질 수 있습니다.
경험 많은 좋은 개발자라면 이런 부분을 적절히 잘 선택할 수 있어야 합니다.
감사합니다.