개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
테스트를 잊지 마라.
가능한 순간 리팩터링 하라.
명명은 명확하게 하라.
TIL (Today I Learned) 날짜
2022. 04. 02
오늘 읽은 범위
7장. 코딩하는 동안
책에서 기억하고 싶은 내용을 써보세요.
코딩할 때는 매 순간 결정을 내려야 하는데, 프로그램이 정확하게 생산적으로 작동하면서 천수를 누리도록 하려면 사려 깊은 생각과 판단으로 결정을 내려야 한다. (p. 273)
테스트는 버그를 찾는 작업이 아니다. 여러분의 코드에 대한 피드백을 받는 작업이다. (p. 274)
다음과 같이 하라.
1. 포스트잇에 "프로토타이핑 중"이라고 써서 모니터 옆에 붙여라.
2. 프로토타이핑은 원래 실패한다고 자신에게 상기시켜라. 실패하지 않더라도 프로토타입은 버리는 것이라는 점도 함께 상기시켜야 한다. 프로토타입으로 손해 볼 일은 없다.
3. 텅 빈 에디터 화면에 여러분이 배우고 싶은 것 혹은 하고 싶은 것을 한 문장의 주석으로 표현해 보라.
4. 코딩을 시작하라. (p. 280)
정말로 제대로 돌아가는 게 아닐지도 모른다. 그저 돌아가는 듯이 보이는 것일 수도 있다. (p. 284)
다른 루틴을 호출할 때도 문서화된 동작에만 의존하라. 어떤 이유로든 그럴 수 없다면 추측을 문서로 상세히 남겨라. (p. 285)
가정하지 말라. 증명하라. (p. 286)
주저하지 말고 변경하라. 언제나 바로 지금이 최적기다. (p. 302)
리팩터링과 기능 추가를 동시에 하지 말라. (p. 305)
Tip 68 상향식이나 하향식이 아니라 끝에서 끝까지end-to-end 만들어라. (p. 313)
여러분이 만든 테스트를 그냥 버리지 말고 기존의 단위 테스트 군단에 합류시켜라. (p. 318)
이름을 지을 때는 여러분이 표현하고 싶은 것을 더 명확하게 다듬기 위해 끊임없이 노력해야 한다. 이렇게 명확하게 다듬는 작업이 여러분이 코드를 작성할 때 코드를 더 잘 이해할 수 있도록 도울 것이다. (p. 344)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
TDD에 대해 조금 공부하다 말았던 기억이 있다. 다시 한 번 살펴보며 적용해보는 게 좋을 것 같다.
그동안의 경험 중 오류 대부분은 테스트를 소홀히 해서 발생했다. 테스트는 중요하다. 왜 매번 회사에서 단위 테스트를 진행했는지 이해했다.
리팩터링은 따로 시간을 들여 하는 것으로 생각했었다. 그게 아니었다. 코드가 돌아가게 만든 직후, 곧장 다듬고 정리해야 한다. 그렇지 않으면 리팩터링은 영원히 미래에 시간을 투자해야 하는 번거로운 작업이 된다.