2021.01.04

Jin·2022년 1월 4일

심야 TDD 스터디

Fact

  • TDDBE 10장 스터디를 진행했다.
  • 이번장의 체크리스트를 확인하고 나름대로 구현을 먼저 했다.
  • 뭐부터 해야할지 잘모르겠어서, 생각나는 것을 있는그대로 모두 적기로했다.
  • 그 중 좋은 생각이 있어서, 이번 장의 목표를 달성하도록 구현해나갔다.
  • 구현 중에 서로 위화감을 느꼈던 공통된 부분이 있었다.
  • times 라는 메서드를 수정하다 테스트가 깨졌는데, 본질적인 원인이 equals 메서드에 있었다. times 수정 중 빨간막대인 상태에서 바로 equals 를 구현했던 부분에서 큰 위화감이 들었다.
  • 켄트벡은 equals 가 왜 문제인지 분석한뒤에, times 를 녹색으로 되돌리고, equals 에만 초점을 맞췄다. equals 구현 목적을 담은 테스트를 작성한 이후에 equals 의 구현을 했다. times 를 다시 수정했다. (애초에 times 를 고친 의도가 이렇게 하면 기존테스트에서 어떻게 되나 하는 실험의 의도였다)

Finding & Feeling

관찰한점과 깨달은 점이 있으나, 이것을 어떻게 좋게 소화해야할지 잘 모르겠다.
확실하게 알게된 것은 더 작고 명시적으로 작업을 나눠서 할 수 있다는 사실이다.

다 되는 상태에서 시작하라는 조언을 많이 들었었는데, 이 말도 적용이 되는 것 같다. times 를 실험하다가 피드백을 받아서 equals 에 문제가 있다는 것을 알았으면, times 를 다시 되돌려서 equals 에 집중된 피드백을 받도록 하는 상태가 더 편하다.

나름대로 구현을 하다가 공통적으로 위화감을 느끼고 이야기 한 부분이 재미있었다.

Action

  • 다 되는 상태에서 작고 분명한 테스트를 추가해나가며 보수적으로 개발해보기? 추상적이다.

0개의 댓글