[우테코 Level 2] 미션2. 방탈출 사용자 예약

별의개발자커비·2024년 5월 12일
1

우테코 6기

목록 보기
8/22
post-thumbnail
참고: 4F 회고

Fact : 무슨 일이 있었는지, 어떤 일을 했는지
Feeling : 어떤 감정을 느꼈는지
Finding : 어떤 지식과 인사이트를 얻게 됐는지
Future Action : 앞으로 무엇을 할 계획인지

Fact

: 무슨 일이 있었는지, 어떤 일을 했는지

페어의 코드를 어디까지 받아들여야할까?

선을 잡는 것이 여기에도 적용되는 것 같다.
예를 들어 mapper를 사용하는 것이나, dto에 save라는 이름이 들어가는 것 등을
시간이 없으니까, 한번 써봐야지 하고 넘겼는데
막상 헤어지기 하고 리팩토링 하려니 자꾸만 불편한거다. 내 방식으로 고치고 싶고 그랬다.

여기서 선택 할 수 있는 방법 2가지.

  1. 아무리 생각해도 내 방식의 장점이 더 큰 것 같다. 하고 내 방식으로 다시 돌려놓기
  2. 페어 방식으로 한 번 해보면서 공부해보기

1번으로 하려다가 2번으로 다시 순회했다. 왜냐면, lms의 이 문장이 다가왔다.
타인의 코드 기반에서 요구사항을 구현하는 경험을 할 수 있다.

현장에서는 이럴 일이 많을 거라 생각도 들고,
선을 잡자는 내 목표를 본다면 다른 사람의 방식으로 끝까지 해봐야 선을 잡을 수 있을 것이란 생각이 들어서.

페어 프로그래밍 과정 자체의 즐거움

안나의 추천으로 이번 페어 테니와 페어 회고라는 것을 처음으로 해보았다.

그러면서 난 페어 프로그래밍에서 뭘 중요시할까에 대한 이야기를 나눠보았는데 예상외의 결론이 나왔다.
기술적인 성장도 있었지만 페어 프로그래밍 과정 자체의 즐거움을 내가 중요시하고 있다는 걸 얘기하면서 스스로 깨달았다.

새로운 또는 사적으로 친하지 않았던 사람과 불편할 수도 있는 얘기를 해야하는 상황은 개발자로 살면서 계속 생길 것이다.
그렇다면 이런 처음 페어 프로그래밍을 즐겁게 할 수 있는 방법을 찾는다면
개발자로 평생 살면서도 보다 계속 즐거울 수 있지 않을까?라는 생각에 닿게 된 것 같다.

나쁜 코드인지는 써봐야 알 수 있다.

테스트 격리를 위해 fake 객체를 만들어서 service에서 dao의 기능을 테스트하지 않도록 해보고 싶었다.

Dao 인터페이스와 InMemoryDao 구현체를 만드는 방식이 지금 상황에서 간단하게 적용해볼 수 있는 방법이라고 생각해 적용해보았다.

그리고 알았다. 이 방식은 너무나 리소스가 크다!
하지만 시간 낭비였는가? NO!
직접 인메모리 구현체를 구현하는 것은 작성 당시도, 유지보수 측면에서도 좋지 않다는 것을
직접 써봤기에 느꼈고 다음에 선택의 근거로 제시할 수 있게 되었다고 생각한다!

쿠키와 토큰의 세계

HttpRequest와 HttpResponse에 담아서 보내고 받는 세계라!

어떻게 serverletResponse를 /admin/reservation에서 안해줘도 로그인이 유지가 되지? 
쿠키가 모든 헤더에 계속 살아있는 건가?

이런 궁금증들을 가졌던 이번 미션이었다.
쿠키와 토큰, 세션으로 관리되기 시작하는 정보들이 신기하다!
인증, 인가... 아직은 낯설고 어렵지만 적응해봐야겠다!

테스트를 다 작성해야할까?

내가 현재 테스트를 해야하는 이유

  1. 어떤 메서드에 대한 로직 수정이 있을 때, 잘 돌아가는지 확인하기 위해서
    • 현재, 요구사항 추가와 변경이 자주 일어나는 환경이다.
    • 더불어 그렇기애 특정 로직 변경이 다른 부분에 미치는 영향을 계속해서 확인해줘야한다.
  2. 전체 서비스가 잘 돌아가는지 직접 웹에서 입력하면서 확인하지 않기 위해서.

그에따른 테스트 생성 기준

  1. 1번 기준에 따라, (dao 제외) 서비스, 도메인, dto의 메서드들에 대한 테스트를 생성한다.
  2. 2번 기준에 따라, 각 컨트롤러 메서드별 통합 테스트 필요
  • 여기에는 happy case와 dao 예외에 따른 예외 케이스를 포함한다.

Feeling

: 어떤 감정을 느꼈는지

인증, 인가 뭐지 싶었지만 내맘대로 하니까 재밌음


Finding

: 어떤 지식과 인사이트를 얻게 됐는지

이번주에는 어떤 나만의 학습방법을 찾고 적용해보고 있을까?

내 코드 한줄 한줄에 이유를 대기

백지에 내가 배운 것들을 적어보는 공부법을 첫번째 미션에서는 진행을 해보다
하지만 나와 비슷한 공부법을 도입했던 안나의 구구와의 면담 얘기를 들으며 생각이 바뀌었다.

백지에 적어보는것, 스스로 키워드에 대해서 대답할 수 있기 바라는 것은 뭘 위해서인가? 를 생각해보라는 것이었다.
이 백지 답해보기가 어디에 도움이 될까? 바로 취업 면접때 밖에 없다는 결론이 났다.

하지만 지금 내가 목표로 하는 것은 더 나은 코드를 작성하는 방법을 학습하는 것인데 그렇다면 적절하지 않은 학습 방법을 적용하고 있던 것이다.

따라서 더 나은 코드를 작성하는 방법을 학습하는 것이라는 목표를 달성하기 위해서는 내 코드에 이유를 설명해보는 과정이 더 도움이 될 것 이라는 결론을 얻게되었다.

좋아. 학습 방법 수정 간다!

내 코드 한줄 한줄에 이유를 대기

0개의 댓글