Programming/Computer Science

[리팩토링 개정판] 01. 리팩터링: 첫 번째 예시

리버김 2023. 5. 9.
  • 프로그램이 새로운 기능을 추가하기에 편한 구조가 아니라면, 먼저 기능을 추가하기쉬운 형태로 리팩터링하고 나서 원하는 기능을 추가한다. -p.27
  • 리팩터링하기 전에 제대로 된 테스트부터 마련한다. 테스트는 반드시 자가진단하도록 만든다. -p.28
  • 아무리 간단한 수정이라도 리팩터링 후에는 항상 테스트하는 습관을 들이는 것이 바람직하다. -p.32
  • 나는 함수의 반환 값에는 항상 result라는 이름을 쓴다. 그러면 그 변수의 역할을 쉽게 알 수 있다. -p.34
  • 자바스크립트와 같은 동적 타입 언어를 사용할 때는 타입이 드러나게 작성하면 도움된다. 그래서 나는 매개변수 이름에 접두어로 타입 이름을 적는데, 지금처럼 매개변수의 역할이 뚜렷하지 않을 때는 부정 관사(a/an)를 붙인다.
  • 변수 인라인(외부에 두지 않고 필요한 곳에 곧바로 사용하는 것) -p.40
  • 무엇보다도 반복문을 쪼개서 성능이 느려지지 않을까 걱정할 수 있다...그런 경우라도 나는 개의치 않고 리팩터링한다. 잘 다듬어진 코드라야 성능 개선 작업도 훨씬 수월하기 때문이다. 리팩터링 과정에서 성능이 크게 떨어졌다면 리팩터링 후 시간을 내어 성능을 개선한다. -p.47
  • '컴파일-테스트-커밋'이란 말을 자꾸 하면 지긋지긋해할 것 같아서 이제부터는 되도록 생략하겠다. 말만 생략할 뿐, 여전히 기회가 될 때마다 실행해야 함을 잊지 말자. -p.68
  • 좋은 코드를 가늠하는 확실한 방법은 '얼마나 수정하기 쉬운가'다 -p.76

 

댓글