[Refactoring] 플래그 인수 제거하기


[Refactoring] 플래그 인수 제거하기

플래그는 보통 함수에 매개변수로 전달해서, 함수 내부의 로직을 분기하는 데 사용한다. 플래그를 사용한 함수는 차이를 파악하기 어렵다. bookConcert(customer, false), bookConcert(customer, true) bookConcert(customer), premiumBookConcert(customer) 과연 여기서 Boolean 값이 하는 게 무엇일까! 조건문 분해하기를 활용할 수 있다. 함수 추출이 주를 이룬다. 플래그 인수 제거하기 package me.whiteship.refactoring._04_long_parameter_list._15_remove_flag_argument; import java.time.LocalDate; public class Shipment { public LocalDate deliveryDate(Order order, boolean isRush) { if (isRush) { int deliveryTime = switch (or...


#리팩토링 #백기선 #인프런

원문링크 : [Refactoring] 플래그 인수 제거하기