효과적인 리팩토링 , TDD 연습방법.

의식적으로 연습해라 이것에 대한 7가지 원칙

  1. 효과적인 훈련 기법이 수립되어 있는 기술을 연마
  2. 개인의 컴포트 존을 벗어난 지점에서 진행, 자신의 현재 능력을 살짝 넘어가는 작업을 지속적으로 시도
  3. 명확하고 구체적인 목표를 가지고 진행
  4. 신중하고 계획적이다. 즉 개인이 온전히 집중하고 의식적으로 행동할것을 요구
  5. 피드백과 피드백에 따른 행동 변경을 수반해야 한다.
  6. 효과적인 심적 표상을 만들어내는 한편으로 심적 표상에 의존
  7. 기존에 습득한 기술의 특정 부분을 집중적으로 개선함으로써 발전시키고 수정하는 과정을 수반

1단계 - 단위테스트 연습

내가 사용하고 있는 api들을 이용하여 테스트

  • java String class의 다양한 메소드 사용법
  • java ArrayList에 데이터를 추가 수정 삭제하는 방법

효과

  • 단위테스트 방법을 학습할 수 있다.
  • 단위테스트 도구의 사용법을 익힐수 있다.
  • 사용하는 API에 대한 학습효과가 있다.

2단계 - tdd 연습

  • 실제 프로젝트 말고 토이프로젝트에서 연습하자.

  • 웹 모바일 ui나 db에 의존관계를 가지지않는 요구사항으로 연습한다.

  • 리팩토링 시 메소드를 분리를 잘해야 한다.

  • 메소드는 한가지 일만 하게 만든다.

    • 들여쓰기를 1단계만 허용한다.
    • 2단계부터는 메소드로 분리해서 리팩토링
    • else를 쓰지않는다.
  • 로컬 변수가 필요한지도 고민해본다.

  • Compose method 패턴 적용

    • 메소드의 의도가 잘 드러나도록 동등한 수준의 작업을 하는 여러단계로 나눈다.
  • Compose method 패턴으로 동등한 수준의 기능들을 각각의 메소드로 만들어서

  • 한눈에 무슨기능을 하는지 알수있게 하고 그 기능들이 어떻게 구현되는지 보려면

  • 메소드를 보는 방식으로 하고 메소드의 기능을 알려면 모든 코드를

  • 확인할 필요가 없는 장점이 있다.

  • 3개이상의 인스턴스 변수를 사용하지 않는다.

  • 인자의 갯수를 최소한으로 조절

  • 클래스도 가능한 작게 만들어라

영상

https://www.youtube.com/watch?v=cVxqrGHxutU&ab_channel=OKKY

문서

https://www.slideshare.net/OKJSP/okkycon-tdd

'개발 > java' 카테고리의 다른 글

공변 불변 반공변  (0) 2021.04.26
JVM 구조 복습 - 1  (0) 2020.08.03
enum 사용시 주의할점  (0) 2020.05.13
멤버변수의 초기화 시기와 순서  (0) 2020.04.15

+ Recent posts