[TIL] 2020.05.18

Lee·2020년 5월 18일
0

TIL

목록 보기
41/51
post-thumbnail

오늘 한 일

  • 카페 출책 후 TDD로 Vending Machine 과제 하기
  • 백명석님의 TDD 강의 시청 후 내용 정리하기
  • 온라인 수업 듣기

배운 것

1. TDD를 할 때 제일먼저 nothing을 작성하자

  • 만들려는 Test Class에 테스트 코드인 nothing을 작성
@Test
public void nothing() {}
  • Run Test 한 후 녹색불 확인
  • 지금까지 만들어놓은 프로젝트 구조가 잘 작동하는지에 대해 검증하기 위한 과정이다.(라이브러리 설정 등등)

2. 항상 녹색불을 먼저 보고 시작하자

  • 위에서 만든 nothing 메소드의 결과가 녹색불인 것처럼 TDD를 시작할 땐 항상 녹색불을 먼저 보고 시작하자 😇
  • 별거 아니지만 녹색불을 지속적으로 보게 되면 동기부여가 되면서 기분++ 👍
  • 반대로 빨간불을 지속적으로 보게 되면 스트레스++ 😞

3. 메소드에 파라미터를 넘겨야 한다면 0 or null을 넘기자

  • 혹은 리턴 값을 받아야 한다면 0, null을 리턴 받자
  • 테스트하기 쉬운 코드를 작성해야 추후에 리펙토링 및 테스트 코드 추가 작업 시 쉽게 작성할 수 있다.

4. Production Code는 가장 적은 타이핑으로 쉽게 만들어야 한다

  • 우선 돌아가게끔 만드는 것이 더 중요함
  • Production code를 이쁘게 만드는 건 리펙토링의 과정이다.

5. 동일한 구조에서 다른 부분들은 변수로 따로 빼서 사용하자

  • extract Method, extract Variable 기능을 적극 활용해서 리펙토링 하자

느낀 점

  • 최근 Test Code를 작성함에 있어 많은 어려움을 느꼈다.
  • red - green - blue 사이클이지만 실질적으로 red - green 밖에 할 수 없었다.
  • 처음부터 뭔가 하려고 하지 말고, 남이 만든 것부터 똑같이 만들어보고 거기서 조금씩 바꿔서 나의 것으로 만들어보자는 생각이 들었다.

내일 할 일

  • 오늘 실습했던 bowling-game을 기준삼아 Vending Machine 프로젝트를 리펙토링 해보자
  • Vending Machine에 가이드라인을 다시 뽑아보자

0개의 댓글