Eclipse를 사용한 코드 재구성 - Replace Temp with Query
국부 변수는 코드를 추출하기 어려울 수 있으므로 가능한 한 그들을 조회식으로 바꿔야 한다.
또한 ReplaceTemp with Query도 Extract Method의 필수 단계입니다.
Mechanics
1 임시 변수가 여러 번 지정되면 Split Temporary Variable를 적용하여 새 변수마다 한 번만 지정되도록 여러 변수로 분할합니다.
2 모든 임시 변수에 대해 검색 함수를 추출한 다음에 대체한다.(쿼리 함수에 부작용이 있으면 Separate Query from Modifler를 다시 적용해야 함)
Eclipse refactor 메뉴에는 직접 해당되는 항목이 없습니다.
그러나 여전히 간단한 조합 [ExtractMethod] + [Inline]로 대응하는 재구성을 완성할 수 있다
// , basePrice discountFactor ReplaceTemp with Query
double getPrice() {
final int basePrice = _quantity * _itemPrice;
final double discountFactor;
if (basePrice > 1000)discountFactor = 0.95;
else discountFactor = 0.98;
return basePrice *discountFactor;
}
//선택quantity * _itemPrice, [Extract Method] 적용
double getPrice() {
final int basePrice = basePrice();
final double discountFactor;
if (basePrice > 1000)discountFactor = 0.95;
else discountFactor = 0.98;
return basePrice *discountFactor;
}
private int basePrice() {
return _quantity * _itemPrice;
}
//basePrice를 선택하고 [Inline] 적용
double getPrice() {
final int basePrice = basePrice();
final double discountFactor;
if (basePrice() > 1000) discountFactor = 0.95;
else discountFactor = 0.98;
return basePrice() * discountFactor;
}
private int basePrice() {
return _quantity * _itemPrice;
}
유사한 것은discountFactor에 계속 위의 방법을 적용할 수 있는데, 여전히 마우스 오른쪽 + 왼쪽 키의 문제일 뿐이다.
관련 코드 패키지는 Here에서 얻을 수 있습니다. (업로드된 자원이 아직 갱신되지 않았습니다. 갱신 후 주소를 업데이트합니다.)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
m1 이클립스에 oracle cloud (오라클 클라우드)연결하기m1에는 oracle이 설치되지 않는다.... 큰맘먹고 지른 m1인데 oracle이 설치되지 않는다니... 하지만 이뻐서 용서가 된다. 이거 때문에 웹 개발 국비수업을 듣는 도중에 몇번 좌절하고 스트레스를 크게 받았...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.