임시변수 내용 직접 삽입 (Inline Temp)

임시변수 내용 직접 삽입 (Inline Temp)은 임시변수를 사용하지 않고 그 값을 직접 참조하여 코드를 간결하게 만드는 리팩토링 기법입니다. 이 기법을 적용하면 임시변수를 사용하지 않으므로 코드 중복과 가독성 문제를 해결할 수 있습니다.

예를 들어, 다음과 같은 코드가 있다고 가정해보겠습니다.

func calculateTotalPrice(price: Double, count: Int) -> Double {
    let totalPrice = price * Double(count)
    let isDiscountable = count > 10
    var finalPrice = totalPrice
    if isDiscountable {
        finalPrice *= 0.9
    }
    return finalPrice
}

위 코드에서는 totalPrice와 isDiscountable이라는 두 개의 임시변수를 사용하여 finalPrice를 계산합니다. 

이를 임시변수를 사용하지 않도록 다음과 같이 변경할 수 있습니다.

func calculateTotalPrice(price: Double, count: Int) -> Double {
    var finalPrice = price * Double(count)
    if count > 10 {
        finalPrice *= 0.9
    }
    return finalPrice
}

위 예시에서는 totalPrice와 isDiscountable 임시변수를 사용하지 않고, finalPrice를 직접 계산하여 코드를 간결하게 만들었습니다.

단, 이 기법을 적용할 때는 임시변수가 코드의 가독성을 높일 때에는 적용하지 않는 것이 좋습니다. 

또한, 계산식이 복잡한 경우에는 코드의 가독성을 해치지 않도록 주의해야 합니다.

 

감사합니다.