[우아한테크코스 4기] Level 1 9일차 회고

Jihoon Oh·2022년 2월 17일
1

어제는 바빴던데다가 피로가 몰려와서 회고를 못썼다. 확실히 요즘 코딩 + 글쓰기 + 개인공부 까지 하려니 수면이 부족하기는 한 듯 싶다. 효율적인 시간 관리가 더 필요해보인다.

자동차 경주 미션 - 2단계

자동차 경주 미션 2단계, 리팩토링에 들어갔다. 2단계의 주제가 MVC 패턴으로 리팩토링하라 였는데, 일단 (무늬만으로라도) MVC 패턴으로 코드를 짰기 때문에 코드 자체를 손볼 곳이 많은 것은 아닌 것 같았고, 개인적으로 이해가 가지 않는 부분에 대한 공부를 좀 하느라 코드를 치는 시간 보다는 생각하고 자료를 찾아보는 시간이 더 많았던 것 같다.

Controller와 멤버 변수

내가 짠 코드는 MVC라고 짜기는 했지만, Controller에서 멤버 변수를 가지고 있었다.

public RacingController {
    private final Cars cars;
    private final TryCount tryCount;
    
    ...
}

cars와 tryCount를 멤버 변수로 둔 것은 컨트롤러 메소드 전역에서 사용하고 관리하기 위한 것이었고, 코드를 짜면서 어느 부분이 문제가 되는지 전혀 생각하지 못했다. 내가 MVC 패턴에 대해 잘 이해하고 있지 않은 탓이랴. 그리고 1단계 마지막 리뷰에서 이 부분에 대한 피드백을 받았다.

솔직히 이 피드백을 받고 나서도 한참은 이해를 하지 못했다. 어차피 게임이 시작되면 반드시 자동차 이름들과 전체 라운드 수를 입력받아서 설정해야 하고, 이 값들이 게임 끝날 때 까지 사용되니까 전역으로 관리하는 것이 좋지 않을까? 하는 생각이 있었다. 이 의문점은 데일리 미팅 조원들과 이야기를 나누면서 해소하게 되었다.

  1. Controller라는 역할의 의미를 생각해 보면 정의에 부합하지 않는다.
  2. Controller에 책임을 부여한다.
  3. Controller에 멤버 변수를 넣는 것은 Controller가 객체의 상태를 가지고 있는 것이다. 이는 여러 사용자가 사용할 때의 동시성 이슈 가능성을 내포하고있다.

이렇게 정리가 가능할 것 같다. 저 세 가지 이야기의 세세한 내용은 MVC 패턴을 공부하는 김에 따로 게시글로 정리해봐야겠다.

어쨌든 이 부분에 중점을 두어서 MVC 패턴에 대해 이해하고, 컨트롤러가 최대한 본연의 역할만 할 수 있도록 리팩토링하고, 몇가지 네이밍이나 컨벤션에 대해서 리팩토링을 하고 2단계 첫 PR을 날렸다.

보이는 라디오

오후 두 시, 드디어 우테코 첫 번째 큰 산인 보이는 라디오 시간이 있었다. 어제 리허설을 했을 때 워낙 어마어마하게 준비한 팀들이 많아서 걱정이 많았다.. 심지어 오늘 아침에 노트북의 왼쪽 C 포트가 싹 뻗어버리는 바람에 충전도 안되고 허브 연결도 안돼서 이대로 망하는게 아닌가 싶었는데 어찌 어찌 고쳐서 사용하기는 했다. (학교 근로에서 컴퓨터 수리를 배웠기 망정이지...)

가짜사나이를 패러디한 "가짜우테코"를 기획한 우리조는 어제 리허설이 끝나고 다른 조의 어마어마한 준비성(?)에 놀라 새로 필터도 찾고 음악 세팅도 미리 준비해두었다. 연습도 엄청 했는데, 처음에는 다들 국어책 읽기였다가 점점 발전하는 연기력을 볼 수 있었다. 군필자도 아닌데 조교 역할 한 라라에게 박수를! 나도 오랜만에 군대때 기억을 살려서 연기하는게 재밌었다. (끝나고 게더타운 들어가니까 나 조교출신 아닌데 다들 조교출신이냐고 묻더라...)

중간에 더즈의 연결이 끊기는 불상사가 있었지만!! 잘 마무리하고 반응도 좋았다. 중간중간 웃참 하느라 힘들기도 했는데.. 크루들 모두 웃음 터지는 일 없이 계획한 시나리오대로 대사도 잘 치고 다른 조 크루들의 반응도 너무 좋았어서 만족스럽다. 유격에서 쓰는 악 대신 깃! 이라고 유행어(?)를 만들었는데 크루들이 많이 써줘서 기쁘기도 하다.

다른 조들의 보이는 라디오 무대도 너무 재밌었다. 온갖 패러디와 개그가 가득했고, 보이는 라디오 프로그램이 의도한대로 그 안에서 협업의 자세라든가, 자바 vs 자바스크립트라든가, 우테코에서 나올만한 여러 주제들을 잘 녹여낸 것 같았다. 아직도 기억에 남는 크루들이나 유행어가 많다. 정말 요 근래 제일 원없이 웃어본 경험이었다.

처음 보이는 라디오 한다고 할 때는 이걸 어떻게 하나 걱정도 되고, 이걸 왜 하나 하는 생각도 들었었는데, 하다보니까 재밌고 무엇보다 크루들과 친해지는 기회가 된 것 같다. 백엔드에만 사람이 70명이 넘어서 일일이 친해지기가 힘든데 데일리 미팅도 그렇고, 보이는 라디오도 그렇고 이런 식으로 팀 활동을 하면서 가까워지고 가까워지고 나면 서로간에 좋은 영향을 끼칠 수 있어서 굉장히 긍정적인 활동이라고 생각한다. 일요일에 회식도 하기로 했는데 기대된다.

이제 보이는 라디오라는 큰 산도 넘었고, 이번 주 남은 일은 2단계 PR한 것에 코드 리뷰가 오면 마저 리팩토링을 진행하는 것과, 이전부터 계획을 세웠던 이펙티브 자바 스터디를 구성하는것, 음.. 그리고 나의 졸업식! 금요일 하루는 졸업식으로 자리를 비우게 되었는데 맘 편하게 놀다가 와야겠다.

profile
Backend Developeer

0개의 댓글