DEV ℧ Developer Diary

[Refactoring] 냄새 16. 임시 필드

해당 포스트는 inflearn의 백기선님의 강의인 리팩토링 을 듣고 정리한 글입니다.

냄새 16. 임시 필드

  • 클래스에 있는 어떤 필드가 특정한 경우에만 값을 갖는 경우
  • 어떤 객체의 필드가 “특정한 경우에만” 값을 가진다는 것을 이해하는 것은 일반적으로 예상하지 못하기 때문에 이해하기 어렵다.
  • 관련 리팩토링
      ...

[Refactoring] 냄새 15. 추측성 일반화

해당 포스트는 inflearn의 백기선님의 강의인 리팩토링 을 듣고 정리한 글입니다.

냄새 15. 추측성 일반화

  • 나중에 이러 저러한 기능이 생길 것으로 예상하여, 여러 경우에 필요로 할만한 기능을 만들어 놨지만 “그런 일은 없었고..” 결국에 쓰이지 않는 코드가 발생한 경우
  • XP의 YAGNI(You aren’t gonna need...

[Refactoring] 냄새 14. 성의없는 요소

해당 포스트는 inflearn의 백기선님의 강의인 리팩토링 을 듣고 정리한 글입니다.

냄새 14. 성의없는 요소

  • 여러 프로그래밍적인 요소(변수, 메소드, 클래스 등)를 만드는 이유
    • 나중에 발생할 변화를 대비해서
    • 해당 함수 또는 클래스를 재사용하려고
    • 의미있는 이름을 지어주려고
  • 가끔 그렇게 예상하고 만들어 놓은...

[Refactoring] 냄새 13. 반복문

해당 포스트는 inflearn의 백기선님의 강의인 리팩토링 을 듣고 정리한 글입니다.

냄새 13. 반복문

  • 프로그래밍 언어 초기부터 있었던 반복문은 처음엔 별다른 대안이 없어서 간과했지만 최근 Java와 같은 언어에서 함수형 프로그래밍을 지원하면서 반복문에 비해 더 나은 대안책이 생겼다.
  • “반복문을 파이프라인으로 바꾸는 (Replace Loop with...

[Refactoring] 냄새 12. 반복되는 switch 문

해당 포스트는 inflearn의 백기선님의 강의인 리팩토링 을 듣고 정리한 글입니다.

냄새 12. 반복되는 switch 문

  • 예전에는 switch 문이 한번만 등장해도 코드 냄새로 생각하고 다형성 적용을 권장했다.
  • 하지만 최근에는 다형성이 꽤 널리 사용되고 있으며, 여러 프로그래밍 언어에서 보다 세련된 형태의 switch 문을 지원하고...