🏕️상황
책에서 member.getOrder().getOrderItem()라는 코드가 객체 그래프를 탐색하는 코드라고 쓰여있는데 이게 무슨 말인지 이해가 되지 않았다.
member.getOrder().getOrderItem()이 자유롭게 객체 그래프를 탐색할 수 있는 코드인 이유는 자바에서 메서드 체인(Method Chaining)을 지원하기 때문이다.
메서드 체인은 한 객체의 메서드 호출 결과를 바로 다른 메서드의 호출 대상으로 사용하는 방식을 말합니다. 위의 코드에서 member.getOrder() 메서드는 member 객체에 속하는 Order 객체를 반환하고, 그 다음에 .getOrderItem() 메서드를 호출하여 해당 Order 객체에 속하는 OrderItem 객체를 반환한다.
이렇게 메서드 체인을 사용하면 객체 간의 관계를 손쉽게 탐색할 수 있다.
member 객체에서 Order 객체로 이동한 뒤, 다시 Order 객체에서 OrderItem 객체로 이동하는 과정을 하나의 코드 라인으로 표현할 수 있다. 이렇게 하나의 라인에 여러 메서드 호출을 연결하여 사용하므로 코드가 간결해지고 가독성이 향상된다.
'개발공부 > JPA 프로그래밍' 카테고리의 다른 글
[3장] "더 추상화 되어 사용된다"의 의미는? (0) | 2023.07.25 |
---|