DEV ℧ Developer Diary

[Refactoring] 냄새 6. 가변 데이터 (2)

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

냄새 6. 가변 데이터 (2)

리팩토링 21. 파생 변수를 질의 함수로 바꾸기

  • 변경할 수 있는 데이터를 최대한 줄이도록 노력해야 한다.
  • 계산해서 알아낼 수 있는 변수는 제거할 수 있다.
    • 계산 자체가...

[Refactoring] 냄새 6. 가변 데이터 (1)

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

냄새 6. 가변 데이터 (1)

  • 데이터를 변경하다보면 예상치 못했던 경과나 해결하기 어려운 버그가 발생하기도 한다. 코드를 변경하다 보면 의도치 않게 다른 코드에 영향이 가는 “사이드 이펙트”를 주의 해야 한다.
  • 함수형 프로그래밍 언어는...

[Refactoring] 냄새 5. 전역 데이터

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

냄새 5. 전역 데이터

  • 전역 데이터 (예, 자바의 public static 변수)
  • 전역 데이터는 아무곳에서나 변경될 수 있다는 문제가 있다.
  • 어떤 코드로 인해 값이 바뀐 것인지 파악하기 어렵다.
  • 클래스 변수 (필드)도 비슷한 문제를...

[Refactoring] 냄새 4. 긴 매개변수 목록

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

냄새 4. 긴 매개변수 목록

  • 어떤 함수에 매개변수가 많을수록 함수의 역할을 이해하기 어려워진다.
    • 과연 그 함수는 한가지 일을 하고 있는게 맞는가?
    • 불필요한 매개변수는 없는가?
    • 하나의 레코드로 뭉칠 수 있는 매개변수 목록은...

[Refactoring] 냄새 3. 긴 함수 (3)

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

냄새 3. 긴 함수 (Long Function) (3)

리팩토링 12. 반복문 쪼개기

  • 하나의 반복문에서 여러 다른 작업을 하는 코드를 쉽게 찾아볼 수 있다.
  • 해당 반복문을 수정할 때 내부 로직이 복잡하다면 여러 작업을...