본문 바로가기
잡담/웹개발(SI) 일지

코드리뷰란 이런 것

by flatsun 2021. 1. 16.
반응형

처음 취직하는 사람들은

코드 리뷰를 엄청 기대하는 경향이 있는데

 

내가 만든 코드를 여러명이서 쭉 보면서

더 효율적인 방법으로 코드를 짜는 방법도 배우고 

 

개발자로서의 스펙도 파팍 올리는 엄청난 그런!!

느낌이 있긴 하지만 느낌은 느낌일 뿐이고

 

일반적으로 코드 리뷰는 변경 시

후폭풍이 큰 서비스에서 주로 수행하게 되는데

 

적은 사람이 이용하거나 중요도가 떨어지고

돈이 되지 않는 서비스는 코드리뷰를 하지 않고

그냥 올려.. 이러고 올리는 경우도 수두룩하지만

 

한번 잘못 올렸다가 에러나면 금전적으로 큰 손실을 입는다거나

혹은 퍼포먼스가 너무 느리면 안되는 경우가 있는데

그런 상황에서는 코드 리뷰를 할 확률이 높아진다

 

제대로 검증을 안해보고 올렸다가는 큰 손실을 입기 때문에

그런 쪽을 변경할 경우에는 몇번에 거쳐 검증을 하는데

그 과정에서 코드리뷰도 하게 되는거다

 

그냥 한다기 보다는 돈이 많이 걸렸을 경우에

코드리뷰를 할 확률이 높아진다고 보면 된다

 

근데 여기서 알아둬야 할 사실이

코드리뷰 하면 뭔가 그럴싸하고 부담도 엄청 되지만

대부분은 내가 짠 코드에 별로 관심이 없어서

크게 느리지 않고 작동만 잘 되면 일단 OK다

 

그렇게 코드리뷰를 시작해서

처음 10~20줄 볼 때만 해도 다들 초롱초롱한 눈빛으로 보지만

100줄 넘어가기 시작하면

다음과 같은 형태로 분화되기 시작하는데

 

아니 코드를 이렇게 짜면 어떻게 해!!! - 갈구는 유형

멋대로 떠들어라... 돌아가면 된거지.. - 무관심적인 유형

아휴 시발 지겨워.. - 죽어가는 유형

 

무관심적인 유형과 죽어가는 유형은

코드 자체에 관심이 없기 때문에

갈구는 유형이 대부분의 지분을 차지하게 된다

 

우리 회사는 안 갈구고 친절하게 알려줍니다

이러지만 그런 사람은 2,3번 유형인 것 뿐이지

결국 갈구는 유형의 사람은 꼭 하나씩 있기 때문에

정신을 잘 차리고 리뷰를 시작해야 한다

 

다양한 방법의 코드 리뷰가 있지만

사람들의 반응을 가장 보기 쉬운건

회의실 하나 잡아놓고 대형 모니터에 노트북 연결한 뒤

 

수정한 프로그램 어떻게 바꿨는지

프로그램 한번 수행해 주면서 진행과정 중

어떻게 바꿨는지 보여주는 형식의 코드 리뷰인데

 

이게 분명히 준비는 했다고는 해도

막상 가서 하다보면

어.. 이러다가 꼬이는 경우가 생긴다

이러면 바로 갈구는 사람이

 

아니 준비 안했어? 왜 안돼? 뭐야?

이러면서 슬슬 갈구기 시작하고

무관심적인 사람이나 죽어가는 사람도 

뭐 어떻게 안되는거에요? 이러면서 물어보기 시작하고

 

리뷰하는 신입은 머리가 타기 시작하는거다

하지만 일단 머리를 식힌 뒤

다시 시도하면 분명히 되기는 된다

애초에 되던 코드였으니까

 

하지만 당황해서 정신을 못차리면

계속 털리다가 뇌는 타버리고 시간만 날리면서

다음에 다시 합시다 이러면서 리뷰가 망해가게 되는데

처음에야 물론 어렵겠지만 코드리뷰를 잘 하는법은

누가 갈궈도 정신을 유지하는게 중요하고

 

망할 때를 대비해서 메모장 같은거에

체크리스트라도 만들어서

어떻게 테스트를 할 건지 순서대로 다 써놔야

어 뭐지.. 해도 메모장 신공으로 하나씩 따라가면서

수습이 가능해지게 된다

 

결국 우리는 코드리뷰를 하는 문화가 있고

갈구지 않습니다 이러겠지만

막상 가보면 갈구는 사람은 꼭 하나씩 있다

하지만 그렇다고 해서 안할 수도 없지 않은가

 

망할 경우를 대비해 순서를 다 작성해 놓고

에러가 발생하면 뭐 때문에 발생하는지 알려주고

원인은 아는데 어떻게 해결해야 하는지를 모르겠다

이러면서 도움받으며 진행하다 보면

안정적으로 리뷰가 끝나게 된다

반응형

댓글