🔥딱 8일간! 인프런x토스x허먼밀러 역대급 혜택

[워밍업 클럽 3기 Backend 클린코드 & 테스트코드] 네 발자국 👣

[워밍업 클럽 3기 Backend 클린코드 & 테스트코드] 네 발자국 👣

이 글은 박우빈 강사님의 Readable Code: 읽기 좋은 코드를 작성하는 사고법 강의를 기반으로 인프런에서 진행하는 [워밍업 클럽 3기] Backend 클린 코드 & 테스트 코드 스터디 회고록입니다.

아래 학습 내용은 박우빈 강사님의 Readable Code: 읽기 좋은 코드를 작성하는 사고법 강의를 듣고 학습한 내용입니다.
저작권 보호를 위해 강의 내용보다는 학습하면서 느낀 점 위주로 정리하였습니다.

 

벌써 한 달이 지나 워밍업 클럽이 끝났다. 항상 관심은 있었지만 "나중에 해야지" 하고 기약 없이 미뤄왔던 클린 코드와 테스트 코드 공부를 한 달 동안 몰입해서 할 수 있어서 정말 좋은 경험이었다.

혼자서 강의만 들었다면 이렇게 집중할 수 있는 환경이 절대 만들어지지 않았을 것 같다. 그리고 단순히 강의로 끝나는 게 아니라, 여러 미션을 통해 직접 적용해보고 고민해볼 수 있었던 점도 정말 좋았다.

아직은 낯설고 어렵지만 앞으로 이전에 했던 여러 프로젝트에 적용해보면서 다양한 방식으로 고민도 해보고 더 익숙해질 수 있으면 좋겠다.

워밍업 클럽 하느라 수고했다, 나 자신!!! 춘식이도!!! 그리고 함께 공부한 모든 분들도!!! 💪🔥
한 달간 몰입할 수 있는 최고의 환경을 제공해주셔서 감사합니다!

 

4주차 학습 내용

4주차에 학습한 내용은 크게 세 부분으로 나눌 수 있을 것 같다.

1⃣ Mocking

항상 테스트 코드를 작성하려다 포기했던 지점이 Mock 때문이었다.

  • Mocking을 사용해야 할 것 같긴 한데, 어떻게 해야 할지 막막했고, 복잡해 보였다.

  • 결국 “나중에 공부해야지” 하며 계속 미뤄왔었다.

하지만 이번 강의를 통해 Mocking이 생각보다 어렵지 않다는 것을 알게 되었다.

  • Mock을 활용하면 테스트가 쉽고 빠르게 실행될 수 있다는 장점이 있다.

  • 특히 Mockist vs Classicist 개념을 배우면서, 모든 것을 Mock으로 처리할 필요는 없다는 점도 이해할 수 있었다.

  • BDDMockito를 사용하면 가독성을 높이며 명확하게 Mock을 설정할 수 있다.

👉괜히 어렵다고 피하지 말고, 직접 해보는 것이 중요하다는 걸 깨달았다!

2⃣ 더 나은 테스트 코드 작성

이전까지는 테스트 코드를 단순히 "기능이 정상적으로 동작하는지 확인하는 용도"라고만 생각했다.

하지만 이번 학습을 통해 테스트 코드도 하나의 중요한 문서이며, 유지보수 가능한 형태로 작성해야 한다는 것을 깨달았다.

💡 테스트 코드도 프로덕션 코드처럼 신경 써야 하는 이유

  • 가독성이 떨어지는 테스트 코드는 오히려 디버깅을 어렵게 만든다.

  • @ParameterizedTest를 활용하면 불필요한 if문 없이 다양한 테스트 케이스를 깔끔하게 작성할 수 있다.

  • 테스트 실행 속도도 중요한 요소이므로, 환경 설정을 최적화하여 불필요한 서버 기동을 줄이는 것이 중요하다.

👉이제부터는 테스트 코드도 프로덕션 코드처럼 고민하며 작성해야겠다!

3⃣ Appendix

API 자동화 도구라고 하면 항상 Swagger만 알고 있었고, 그마저도 실제 사용 경험은 없었다.

하지만 이번 강의를 통해 Spring REST Docs라는 새로운 도구를 배우게 되었다.

  • Spring REST Docs는 테스트 코드 기반으로 문서를 생성하므로 API 문서의 신뢰도가 높다.

  • 반면 Swagger는 프로덕션 코드에 직접 의존하기 때문에 침투적이라는 단점이 있다.

  • 직접 실습하면서 적용해볼 수 있어서 API 문서화의 중요성도 체감할 수 있었다.

👉이전 프로젝트에서 Swagger를 써볼까 고민했었는데, 이제는 Spring REST Docs도 적극적으로 고려해볼 수 있을 것 같다!

📜 미션

이번 주는 Day 16와 Day 18에 총 2개의 미션을 수행했다. 미션에 관련한 내용은 아래 링크에서 확인할 수 있다.

Mission 5 | Day 16

MISSION 5

Mission 6 | Day 18

MISSION 6

 


👍Keep: 잘한 점

먼저 지난 주에 시도하기로 마음먹었던 코드 리뷰를 받았다는 점을 칭찬하고 싶다. 또한 한 달간 열심히 워밍업클럽을 완주한 나 자신도 꼭 칭찬해주고 싶다. 고생 많았다!

👎Problem: 개선이 필요한 점

리뷰 신청을 했다는 점은 큰 용기를 냈다는 면에서 잘한 일이라고 생각하지만, 아쉬운 점도 많다. 사실 테스트 코드를 작성하면서 고민했던 부분이 꽤 많았고, 궁금한 점도 많았는데 너무 사소해 보일까 봐 질문을 미루거나 까먹기도 했다. 그래서 결국 너무 단순한 질문만 했다는 점이 아쉽다. 다른 사람들의 질문을 보면서 그들의 고민의 깊이가 정말 깊다는 생각을 했고, 그에 비해 내 질문은 초라하게 느껴지기도 했다. 앞으로는 공부하면서 모르는 부분이나 궁금한 점이 생기면 그때그때 기록하는 습관을 들여야겠다고 생각했다.

🤙Try: 더 나은 결과를 위해 시도할 점

한 달간의 워밍업클럽은 마무리되었지만 여기서 멈추지 않고 복습하는 시간, 직접 적용해보는 시간을 가지려고 한다. 지금은 정보처리기사 실기 준비 때문에 힘들지만(그래서 관심있는 소모임이 있음에도 불구하고 참여의사를 밝히지 못했다 ㅜㅜ), 시험을 마친 후에는 꼭 복습을 다시 하며 시간을 가지려 한다.


워밍업 클럽 흔적들

📆 노션

사실 후반부 갈수록 완료 체크를 잘 안해주긴 했다.... ㅎ

https://inf.run/ZENhG

📒 강의 노트

강의 저작권 보호를 위해 블러처리했습니다!

1⃣Readable Code: 읽기 좋은 코드를 작성하는 사고법

image

 

2⃣Practical Testing: 실용적인 테스트 가이드

image

댓글을 작성해보세요.

채널톡 아이콘