We will find a way, we always have.

-interstellar

우아한테크코스

[우테코 레벨 1]: 2주차 회고

Redddy 2024. 2. 25. 19:47

데일리 미팅

 

월요일 데일리 마스터로 선정이 되었다. 게임을 할까 산책을 할까 토론을 할까 고민을 했었는데, 게임은 금요일에 라이어 게임을 했고, 산책은 월요일에 날씨가 안좋을거라는 예보가 있어 토론을 하기로 정했다.

 

주제는 회복탄력성! 

 

 

1주차에 너무 휘몰아친 나머지 서로의 회복 방법이 궁금해졌다. 나는 프리코스 4주차의 소감문을 공유하였다.

 

1주차, 2주차 미션에 비해 3주차가 미션을 제출하고 난 후에 보이는 미흡한 접들이 더 많이 보였다.
긍정적으로 생각하면 “매의 눈”이 생겨 메타 인지가 높아진 것일 수도 있지만, 좀 다르게 생각하면 인정하기는 싫지만, 살짝 지쳤었던 것 같기도 하다.

그런데 이게 웬걸 3주차 미션 끝난 후 코수타에서 잘 회복하는 방법에 대해 이야기했는데 딱 현재 나에게 필요한 이야기였다.
내가 지쳤음을 인정하고 한숨 고르고 다시 달릴 수 있는 계기가 되었다. 맛있는 음식 먹기, 스스로 칭찬하기 그리고 달리기가 나만의 회복 방법이다.
코수타를 마치고 이 세 가지를 모두 하고 나니 이전 미션들에서의 실수를 통해 더 발전할 수 있을 것 같은 기대감과 4주차 미션도 씹어먹을 수 있을 듯한 자신감이 생겼다. 덕분에 극악무도한 난이도를 자랑한다는 이번 미션도 즐기면서 할 수 있었다.

레디의 프리코스 소감문

 

 

데일리 크루의 회복방법도 다양하고 재미있었다. 

 

연극

2주차의 빅 이벤트는 바로 연극이였다. 1주차에 연극조와 같이 연극을 준비하면서 아주 빠르게 친해졌다. 아 친해졌다기보다 돈독해졌달까?

엄청난 연기력을 요구한 것이 아니라 크루간의 팀웤을 기를 수 있는 단체 활동이라고 생각하고 참여하였다. 그래서 더 재밌게 즐길 수 있었다. 우리 16조 우돼코는 화목하게 잘 마무리 한 거 같다. 다른 조들의 연극도 재밌는 연극들이 많았다. (솔로 포비...) 

 

연극을 야무지게 마치고 데일리조끼리 같이 회식을 하였다!! 

 

 

 

 

장소

 

발리&발리맥주 방이점 : 네이버

방문자리뷰 339 · 블로그리뷰 161

m.place.naver.com

 

 

술마셔서 그런지 무슨 얘기했었는지는 기억이 잘 안나지만 즐거웠었다는 감정만 남아있다. 

 

 

TDD

사다리 타기 미션은 TDD 방식으로 진행하라는 요구 사항이 있었다. TDD를 이론적으로는 알고 있었는데 실제로 적용해본 것은 이번이 처음이었다. 

 

사다리 타기 미션의 페어는 안나였다. 미션 첫날은 안나가 안나와서 방황하고 있을 때, 구구가 와서 혼자서라도 해보면 어떻겠냐고 조언을 해주어 혼자 쓱싹 TDD로 해보았다. 한번 해보니까 켄트 벡씨가 왜그렇게 TDD를 강조했는지 깨달았다. 

 

내시내짠(내가 시간내서 내가 짠) TDD 장점

 

  • 요구사항에 핏한 코드를 짤 수 있음
  • 코드를 짜면서 딴길로 새지 않음
  • 메서드명 짓기가 수월해짐
  • 위 장점들은 모두 시간단축으로 이어짐

 

레벨 1 사다리 타기 step 1

 

안나가 깃헙을 활용하여 컴퓨터 두 대에서 페어 프로그래밍 하는 방법을 알고 있어서 신세계를 맛보며 페어 프로그래밍을 진행하였다. (컴퓨터 한대에서 페어 프로그래밍하던 낭만시대는 가라!)

 

미션 시작은 역시 요구 사항 분석으로 시작하였다. 안나는 요구 사항 목록이나 깃 커밋 메시지를 자세하게 적어서 배울 점이라고 생각하였다. 

 

이번 미션에서의 고민 거리는 출력을 위한 형태로 객체를 포장할 때 이 역할을 어디서 누가 해야 하나였다. 이름을 출력할 때 사이사이 공백을 추가해야하는 일, 사다리를 출력할 때 사다리 형태를 만드는 일 등 조금 복잡한 로직이 필요하였다. DTO를 만들어보기도 하였지만 뭔가 뜻대로 안되었다. 그래서 최종적으로는 view 레이어에 Fomatter 라는 util 클래스를 만들어 객체를 요구사항에 맞는 출력 형식으로 변환해주었다. 

 

뭔가 딱 마음에 들지는 않았지만 현재로써 최선의 선택이라고 생각했다. 물론 view에 관련한 로직이라 생각하여 TDD로 진행하지 않았던 점은 아쉬웠다. 

 

사다리 타기 1단계 PR

 

[1단계 - 사다리 생성] 레디(최동근) 미션 제출합니다 by reddevilmidzy · Pull Request #281 · woowacourse/java-

안녕하세요 아서!! 👋 레디라고 합니다:) 이번 미션은 최대한 요구 사항만을 지키며 코딩하자는 목표로 구현을 하였습니다. 몇가지 질문이 생겨 남겨봅니다! UI 로직과 TDD 초반에 TDD 방식으로 코

github.com

 

 

이번 리뷰어는 아서였다! 아서는 슬랙에 언제까지 리뷰 남겨주겠다는 메시지를 남겨주어 좋았다. 리뷰도 콕콕 찔어준 부분들이 있어 재미있게 코드를 수정해나갔다. 

 

왜 재입력 기능을 구현하지 않았냐는 질문이 있었는데, 요구사항에 없는 기능에 대해 많은 고민을 하기 보다 주어진 요구사항(TDD, 리팩터링)에 더 신경써보자고 안나와 합의보고 그렇게 진행하였다. 그렇다고 이 기능에 대해 완전 배제한 것은 아니었다. 자동차 경주 미션에선 이 기능에 대해 꽤 많은 고민을 했고 최종적으로는 Optional 을 사용하여 재귀 없이 인덴트 1로 해당 기능을 구현하였다. 하지만 리뷰어 범블비가 남겨준 코멘트를 보니 이런 방식이 100% 만족할만한 방식은 아닌 거 같았다. 그래서 범블비는 어떤 식으로 구현했을지 스을쩍 구경했는데 완전 까리한 방식으로 구현하였다. 2단계에서 도전해보기로 마음 먹었다. (어떻게 구현했는지는 비밀🤫)

 

util성 클래스인 Fomatter 도 뜯어내어 각 객체에서 값을 포장하는 책임을 가지게 하였고, 테스트 코드도 추가하였다. util 클래스라기엔 특정 객체에 존속이라는 말이 와닿았다.

 

커피챗

금요일에 브라운과 1:5 커피챗을 진행하였다.

 

인생첫 커피챗

 

제일 기억에 남았던 질문과 답변은 우리 모두 합격한 이유를 궁금해하였는데, 답변으로 주위 크루를 보면 알 수 있을 거라 하였다. 보이는 주변 크루의 장점들중 하나를 가지고 있을거라고,,,

 

 

애매하지만 확실한 답변이었다.

 

 

딴짓

토요일에도 루터회관에 출첵하며 미션을 하고 있는데 로키가 와서 아침마다 출석체크 폼 제출하는 거 너무 귀찮다며 QR 코드로 만들어 앞에 붙이는 건 어떨지 제안하였다. (악덕기획자로키..)

 

폼으로 바로 연결되는 URL을 넘어서 캠퍼스는 자동을 잠실을 선택하도록 쿼리 파라미터를 설정한 URL을 찾았다. 

 

 

월요일이 기대된다

 

KPT

 

  • Keep
    • 지각하지 않기
    • 끈질기게 고민하기
    • 명확하게 내 의견전달하기

 

  • Problem
    • (이전주차에 생겼던 문제들이 해결되었다.)
    • 커피를 좀 줄였더니 밤에 잘 자긴하지만 지하철에서 존다.
    • 미션 이외 공부를 하지 못한다라는 고민은 미션에 집중하자로 결론 지어졌다.

 

  • Try
    • 운동하기
    • 지하철에서 보내는 시간을 효율적으로 사용하기