질문

리팩토링 (refactoring)

콛 다이어리 2024. 10. 19. 21:04

강의에서 원장님이 '리팩토링' 이라는

단어를 사용하셨다.

리팩토링? re - factory  + ing..??

도저히 유추가 안 돼서 찾아봤다

 

리팩토링:

 '결과의 변경 없이 코드의 구조를 재조정함'을 뜻한다.

주로 가독성을 높이고 유지보수를 편하게 한다.

버그를 없애거나 새로운 기능을 추가하는 행위는 아니다.

사용자가 보는 외부 화면은 그대로 두면서

내부 논리나 구조를 바꾸고 개선하는 유지보수 행위이다.

 

추가로, 프로그램의 구조를 크게 뒤집으면

전과 똑같이 프로그램을 돌리기 어렵기 때문에

변경 전과 똑같이 돌아간다는 것을 확인하면서

개선해 나가야 한다.

또, 리팩토링의 주요 핵심은 '자주'이다.

모든 로직을 완성한 뒤 리팩토링을 하는 것이 아닌

한 로직을 완성한 후 리팩토링을 하는 것이 좋다.

 

켄트 벡이 제안하는 깔끔하고 단순한 소프트웨어 설계 규칙
1. 모든 테스트를 실행한다.
2. 중복을 없앤다.
3. 프로그래머의 의도를 표현한다.
4. 클래스와 매서드 수를 최소로 줄인다.

 

 

출처: https://velog.io/@serin13/%ED%81%B4%EB%A6%B0%EC%BD%94%EB%93%9C-JS-14.-%EB%A6%AC%ED%8C%A9%ED%86%A0%EB%A7%81-%ED%95%98%EA%B8%B0