
1. 얼리 리턴 패턴이란?
얼리 리턴 패턴(Early Return Pattern)은 함수나 메서드에서 불필요한 코드 실행을 줄이고, 조건을 만족하지 않을 경우 즉시 반환(return)하여 코드의 가독성과 유지보수성을 높이는 기법이다.
일반적으로 if-else 블록을 중첩하여 처리하는 방식보다 조건을 먼저 검사하고 빠르게 반환하는 방식이 더 직관적이고 오류를 줄이는 데 도움이 된다.
2. 얼리 리턴 패턴의 장점
가독성 향상
- 불필요한 중첩을 줄여 코드가 더 간결하고 읽기 쉬워진다.
유지보수 용이
- 조건별로 빠르게 리턴하여 코드 흐름을 단순화할 수 있다.
불필요한 연산 방지
- 특정 조건이 만족되지 않으면 즉시 종료하여 불필요한 연산을 방지할 수 있다.
3. 일반적인 코드 vs 얼리 리턴 패턴 적용 코드
❌ 중첩된 if-else 방식
public String getUserRole(User user) {
if (user != null) {
if (user.isActive()) {
if (user.getRole() != null) {
return user.getRole();
} else {
return "UNKNOWN";
}
} else {
return "INACTIVE";
}
} else {
return "NO_USER";
}
}
위 코드의 문제점은 if 블록이 계속해서 중첩되면서 코드가 길어지고 가독성이 떨어진다는 점이다.
✅ 얼리 리턴 패턴 적용
public String getUserRole(User user) {
if (user == null) return "NO_USER";
if (!user.isActive()) return "INACTIVE";
if (user.getRole() == null) return "UNKNOWN";
return user.getRole();
}
얼리 리턴을 적용하면 중첩 없이 조건을 빠르게 확인하고 반환하므로 코드가 훨씬 간결해진다.
4. 얼리 리턴 패턴의 실제 활용 예시
Spring Boot에서 유효성 검사 시 활용
public ResponseEntity<String> processOrder(Order order) {
if (order == null) return ResponseEntity.badRequest().body("Invalid order");
if (order.getItems().isEmpty()) return ResponseEntity.badRequest().body("No items in order");
if (!order.isPaymentCompleted()) return ResponseEntity.badRequest().body("Payment not completed");
orderService.process(order);
return ResponseEntity.ok("Order processed successfully");
}
위 코드에서는 order 객체의 유효성을 검사한 후 문제가 있으면 즉시 반환하여 이후 로직이 실행되지 않도록 한다.
반복문에서 얼리 리턴 적용
public boolean containsNegative(List<Integer> numbers) {
for (int num : numbers) {
if (num < 0) return true;
}
return false;
}
위 코드에서는 음수가 발견되면 즉시 true를 반환하여 불필요한 반복을 방지한다.

조건문이 많아지는 경우 얼리 리턴을 적극 활용하면 중첩을 줄여 더 직관적인 코드 작성을 할 수 있다. 하지만 남용하면 코드의 흐름을 파악하기 어려워질 수도 있으므로, 적절한 균형을 유지하는 것이 중요하다.
'Back_End > Java' 카테고리의 다른 글
자바(JAVA) Synchronized (0) | 2025.02.24 |
---|---|
자바(Java) Optional 이란? (0) | 2025.02.14 |
Java의 Comparator vs Comparable (1) | 2025.02.14 |
자바(Java) 스트림(Stream) 이란? (1) | 2025.02.13 |
자바의 람다식(Lambda Expression) (0) | 2025.02.12 |