|
이 섹션은 당신에게 Replace
Temp with Query 리팩토링에 대해 포괄적인 overview와 how이 리팩토링이 IntelliJ IDEA에서 사용될 수 있는가를 제공합니다.
이 리팩토링은 당신에게 메소드로 변수의 이니셜라이저 표현식을 추출하고, 추출된 메소드에 콜과 함께 변수에 모든 참조를 교체하는 것을 허락합니다. 변수의 선언은 제거될 것입니다. 그리고 질의 메소드는 다른 메소드로 사용될 수 있습니다.
int 대신에 size = getActualSize()와 코드를 통해 사이즈를 사용하면, 우리는 getActualSize() 메소드를 운용합니다.
최종적인 코드가 더 많은 인보케이션을 가질 것이지만, 그것은 매우 더 깨끗하고 이해하기 더 쉽고, 코드의 병목 현상이 나타날 수 있는 곳과 정확히 동일시하는 것을 돕습니다.
1. temp를 질의로 교체하기 위해, 당신이 에디터의 리팩토 되기를 바라는 로컬 변수의 이름에 캐럿을 배치하십시오. 그 후, 메인 메뉴에서 또는 변수 이름에서 마우스의 오른쪽 버튼을 클릭하는 것에 의해 불려지는 팝업 메뉴에서 Refactor | Replace Temp
with Query 메뉴 항목을 선택하십시오.
2. 그 후에, 다음의 다이얼로그는 질의 메소드의 시그너쳐을 지정하기 위해 나타날 것입니다:

Name 텍스트 필드에서, 질의 메소드의 이름을 지정하십시오.
|

|
디폴트로, 질의 메소드는 리팩토 되는 로컬 변수의 이름을 따서 명명됩니다.
|
Parameters 패널은 질의 메소드의 인수로서 역할을 하게 될 체크된(디폴트로)변수의 목록을 포함합니다. 인수로서 나타나는 것 대신 체크되지 않은 변수는 당신이 나중에 지정해야만 하는 '...' 로 설정된 그 값과 함께 로컬 변수로서 질의 메소드로 포함될 것 입니다 .
매개 변수의 이름을 바꾸기 위해, 그것을 더블 클릭하고, 매개 변수의 이름을 편집하십시오.
당신은 또한 선택된 매개변수가 질의 메소드에서 Move up와 Move
down 버튼의 조작에 의해서 나타나는 순서를 설정할 수 있습니다.
당신은 Signature Preview 패널에서 질의 메소드의 미리 보기 시그너쳐을 볼 수 있습니다.
3. 리팩토링 프로세스를 완료하기 위해 OK를 클릭하십시오.
|

|
로컬 변수를 선택할 때, 그 값이 코드 이후에 변경되지 않는지를 확인하십시오. 그렇지 않으면 다음 메시지 박스가 나타날 것입니다:

|
|