효과적인 리팩토링 , TDD 연습방법.
의식적으로 연습해라 이것에 대한 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
문서
'개발 > java' 카테고리의 다른 글
공변 불변 반공변 (0) | 2021.04.26 |
---|---|
JVM 구조 복습 - 1 (0) | 2020.08.03 |
enum 사용시 주의할점 (0) | 2020.05.13 |
멤버변수의 초기화 시기와 순서 (0) | 2020.04.15 |