리팩터링: 워크플로 간소화

이 에피소드에서는 네임스페이스 이름 변경 등의 리팩터링을 몇 번의 클릭만으로 쉽고 안전하게 수행할 수 있다는 것을 보여 드립니다. Refactor This(다음을 리팩터링) 메뉴를 호출하고, 변경 사항을 미리 보고, 적용하는 방법을 알아보세요. 이렇게 하면 시간이 많이 걸리고 실수가 잦은 작업이 크게 간소화됩니다.

강의 텍스트

PhpStorm은 매우 강력한 기능으로 많은 작업을 자동으로 처리해 줍니다. 리팩터링은 IDE 내에서 찾을 수 있는 많은 강력한 도구 중 하나로, 작업 시간을 말 그대로 수시간 줄여줍니다.

PhpStorm에서는 리팩터링이 빠르고 간단하며 안전합니다. 네임스페이스의 이름을 바꾸는 간단한 예로 시작해 보겠습니다. 이를 수작업으로 수행하려면 다음과 같은 여러 단계를 거쳐야 합니다.

  • 먼저, 네임스페이스 폴더의 이름을 바꿔야 합니다.
  • 그런 다음 이 폴더 내에서 각 클래스의 네임스페이스를 변경해야 합니다.
  • 마지막으로, 전체 코드베이스 내에서 이러한 클래스에 대한 모든 참조를 변경해야 합니다.

이런 작업을 일일이 수행하고 싶지는 않을 겁니다. 그렇죠?

그러면 이름을 바꾸려는 폴더를 선택하고 Control+T를 누르거나, Shift+Shift를 누르고 Refactor This(다음을 리팩터링)를 검색하세요.

클래스 이름, 변수, 값, 특정 코드 등 사실상 모든 부분에 대해 Refactor This 메뉴를 호출할 수 있습니다. 즉, 리팩터링이 가능한 항목에서 항상 Refactor This 메뉴를 사용할 수 있습니다.

PhpStorm에는 가장 일반적인 리팩터링을 바로 사용할 수 있는 인라인 툴바도 표시됩니다.

폴더의 경우 할 수 있는 작업은 얼마 없습니다. 이 경우에는 폴더의 이름을 바꾸려고 합니다. Rename(이름 변경)을 누르고 새 이름을 선택합니다. 이 특정 리팩터링은 문자열과 텍스트 내에서 참조를 검색할 수도 있지만 지금은 PHP 코드로 제한하겠습니다. 리팩터링의 범위를 지정할 수도 있지만 지금은 The Whole Project(전체 프로젝트)로 설정해 두면 됩니다.

리팩터링을 미리 볼 수 있어 PhpStorm이 변경하려는 내용을 확인할 수 있습니다. 변경 사항을 적용하려면 Refactor(리팩터링)를 누릅니다.

자...이제 끝났습니다! 예상치 못한 상황이 생기면 언제든지 Control+Z 또는 Command+Z를 눌러 리팩터링을 실행 취소할 수 있습니다.

리팩터링은 매우 강력합니다. 방금 간단한 이름 변경 작업을 함께 알아보았지만 그 밖에도 많은 작업이 가능합니다. 코드의 일부를 추출하여 메서드를 분리하고, 함수를 상위로 이동하고, 메서드를 정적으로 만들고, 값을 상수로 변환하는 등 다양한 작업을 수행할 수 있습니다.