About Me/회고(4)
-
TDD 스터디에서 배운 점: 가독성 높은 테스트 코드 작성법과 코드 리뷰의 중요성
안녕하세요, 저는 현재 TDD 스터디를 진행하고 있는 코랩입니다.이번 주 TDD 스터디를 하면서 배운 내용들을 여러분과 공유하고자 합니다.이번 주 작업 내용저희 팀은 이번 주에 6, 7장 강의를 수강하고,controller 테스트 코드를 작성하며, 서로의 코드를 리뷰하는 시간을 가졌습니다.이번 주에는 강의와 코드 리뷰를 통해 많은 것을 배울 수 있었습니다.강의에서 배운 내용1. 각 테스트 별 given, fixture를 @BeforeEach로 빼지 말자!각 테스트는 독립적으로 실행되어야 하므로, given과 fixture를 @BeforeEach로 분리하는 것은 좋지 않습니다.테스트 코드를 작성할 때, 특히 학습용으로 할 때는 비즈니스를 간단하게 가져가다 보니, given 절에서 반복이 자주 일어납니다. ..
2024.05.12 -
TDD 스터디 회고: 에러 핸들링의 책임과 TDD의 본질
안녕하세요, 저는 현재 TDD 스터디를 진행하고 있는 개발자입니다. 오늘은 이번 주 스터디를 하면서 고민했던 내용들을 여러분과 공유하고자 합니다.1. 에러 핸들링도 하나의 '책임' 이다이번 주에 저번처럼 기획을 기능 명세서로 만든 후,기능 명세서에서 명시한 Exception을 어느 계층에서 던져야 할지 고민이 되더라고요.이전까지는 Controller에서 DTO를 바인딩할 때 @Valid로 모든 검증을 처리했었거든요.필드가 유효하지 않은 값이 있다면, 서비스 로직까지 아얘 오면 안된다고 생각했기 때문입니다.서비스 계층은 비즈니스 로직을 책임지는 계층이지, 값의 유효성에 대한 검증의 책임은 컨트롤러에 있다고 생각하기 때문입니다.그래서 위 카테고리 수정 명세서를 예시로 들어보자면,'name'으로 빈 값이 들어..
2024.05.05 -
TDD 스터디 주간 회고 (4/22 ~ 4/28)
저희 팀은 이미 한 번 리뷰를 해본 적이 있지만,제대로 된 주간 리뷰는 이번이 처음이라 이렇게 글을 남기게 되었어요.스터디 진행 방식저희 팀의 스터디 진행 방식은 다음과 같습니다.1. 박우빈 님의 강의를 정해진 주차까지 듣습니다.2. 팀원들과 회의를 통해 기획명세서를 도출합니다. 이때 GPT에게 회사에서 주는 것처럼 해달라고 요청합니다.3. 기획명세서를 토대로 TDD를 진행합니다. 예전에 TDD를 할 때는 Red, Blue, Green 만 지키다 보니, 본질적인 것은 이게 아니라는 생각이 들었습니다.그래서 저희 팀은 스터디 내용 중에 명세서를 열어보는 것을 가장 중요하게 여기고 있습니다.TDD의 핵심은 명세서를 열어보고 해체하는 과정이라고 생각했어요.4. 서로의 코드와 테스트 코드를 화면에서 보고 리뷰합..
2024.05.01 -
[후기] 남궁성과 함께하는 2022 DevCamp (feat. 최우수팀)
2022.08.01 ~ 2022.09.02 짧지만 서도 정말 길었던 데브 캠프 1기가 드디어 끝났다. 지원 경로 및 사전 학습 이번 여름방학 동안 어떻게 시간을 알차게 보낼까 고민하던 와중에 남궁성 강사님 개인 유튜브 채널에 아래처럼 커뮤니티 글이 올라와 1 초의 고민도 하지 않고 바로 지원을 하게 되었다. 후에 화상 면접 후 다음과 같은 메일이 왔다 사실 위와 같은 메일을 받게 되면, 겁주려고 탈락시킨다는 말을 한다고 생각할 수도 있지만, 강사님의 네이버 카페 답글들을 많이 보신 분들은 알겠지만 정말로 성적이 안 좋으면 집으로 돌려 보내실 분이시다... (겪고 보니 더더욱 이렇다고 생각...) 데브 캠프 시작, 그리고 모델링 메일에서 말씀하신 것처럼 시험을 보고 난 후 팀이 짜여졌는 데, 초기에 우리 ..
2022.09.13