CS지식

코드 리펙토링

hminor 2023. 6. 3. 00:03

필요한 경우

  • 기능 구현이 우선이고, 정상 작동이 되는지 확인 후 진행
  • 한번에 하나의 작업에만 집중, 기능 구현과 동시에 하지 않는다

어떻게?

  • 개발 프로세스에서는 코드 리팩토링 할 시점을 결정하는 것이 매우 중요하다
  • 한 번에 한 가지 명확하고 구체적인 목표를 가지고 진행하는 것이 중요하다

리팩토링 유형

  • 신규 기능 추가를 대비한 `준비를 위한 리팩토링`
    • 현재 구조를 살펴보고 추가되는 코드가 기존 코드에 녹이기 어려운지 확인
    • 구조를 다듬어서 새 기능을 쉽게 적용할 수 있도록 변형
  • 동일한 코드가 반복된 경우 -> 별도의 함수로 분리하여 호출
  • 의미가 유사한 함수가 두 개 이상 존재 -> 매개변수를 이용하는 것으로 함수 통합
  • 모든 분기마다 동일한 로직을 구현 -> 분기 밖으로 해당 로직을 이동시켜 한 번만 작성
  • 높은 가독성을 고려한 `이해를 위한 리팩토링`
    • 모호한 변수명 -> 직관적인 변수명
    • 길어지는 표현식 -> 의도 파악이 가능한 개별 변수로 선언
    • 변수가 한 번만 변경 -> 변수 선언대신 inline해서 return 값으로 바로 처리

성능개선 vs 리팩토링

  • 성능을 높이는 작업 / 리팩토링 작업 패턴은 유사성능 개선 == 속도를 높이기 위한 목적코드 리팩토링 == 코드를 깨끗하게 만들기 위한 목적 (생산성 증가)

궁극적 목적

경제성

  • `적은 인력`으로 `짧은 시간``많은 기능`을 개발하기 위해...

'CS지식' 카테고리의 다른 글

디자인 패턴 - 싱글톤 패턴(Singleton Pattern)  (0) 2023.06.03
전처리는 왜 필요할까?  (0) 2023.06.02
게임 제작 방법 노하우  (0) 2023.06.02
AWS 보안 가이드  (0) 2023.06.02
BlockChain이란?  (0) 2023.06.02