본문 바로가기

clean code

[클린코드] CHAP 14 점진적인 개선

728x90
반응형

CHAPTER 14 점진적인 개선

명령형 인수 구문 해석기

코드 초안

  • 모든 로직이 하나의 클래스에 들어가 있다.코드 완성본
  • Args 클래스에서 코드 중복을 최소화하고 ArgsException 클래스를 분리했다.
  • ArgumentMarshaller 클래스를 통해 여러 인수에 대한 추후 확장성을 만들어 놓는다.
  • 코드만 분리해도 설계가 좋아진다. 관심사를 분리하면 코드를 이해하고 보수하기 쉬워진다.

점진적으로 개선하기

프로그램을 망치는 가장 좋은 방법 중 하나는 개선이라는 이름 아래, 구조를 크게 뒤집는 행위이다.

  1. 코드가 나빠짐을 느낄때 기능을 추가하지 않고 개선을 시작한다.
  2. 테스트 코드를 작성한다.
  3. 책임에 따라 클래스를 나누고 코드를 옮긴다. 테스트가 깨지지 않도록 확인하며 자잘한 변경을 조금씩 진행한다.

IDE 를 활용하여 점진적으로 개선하기

Extract Method : 메서드 추출하기

코드 블럭을 메서드로 추출할 수 있다.

Change Signature : 메서드 파라미터 추가, 삭제 및 변경

메서드의 파라미터를 추가하거나 변경할 수 있다.

Rename

Extract Variable

Extract Field : 멤버변수 추출하기

Extract Constant

Pull Members Up & Pull Members Down

하위 클래스의 메서드를 상위로 올리거나 상위 클래스의 메서드를 하위로 내릴 수 있다.

728x90
반응형