본문 바로가기
가치관 쌓기/개발 돌아보기

나쁜 냄새가 드는 한마디 "잠깐만요 코드좀 볼게요."

by simplify-len 2022. 3. 6.

Photo by Joshua Hoehne on Unsplash

"잠깐만요 코드좀 볼게요"

우리는 언제 이런말을 해봤을까요?

 개발 업무를 하며 한번쯤은 우리가 말해봤거나, 반대로 누군가에 의해 들었던 말인데요.

 

오늘은 이 말이 의미하는 바에 대해서 이야기해보려 합니다.

 

  근무하는 트레바리 테크유닛의 PE셀에서는 간단하면서도 도전적인 첼린지를 했습니다. 플랫폼 관련 업무만 하다 보니 프론트엔드 업무는 해본 적이 없었습니다. 그러다, 우연히 해볼 수 있는 기회가 생겨 약 3명의 개발자가 쿽하게 개발해볼 수 있는 기회가 생겼습니다.

 

next.js 프레임워크에서 간단히 UI Form 이 변경되는 것이 이번 프로젝트의 목적이였습니다.

단, UI Form 이 보여지게 될 때 변경 전/변경 후 UI 가 특정 비지니스 로직에 따라 다르게 보여야만 했습니다.

 

특정 비지니스 로직?

 

이번 프로젝트에서는 특정 비지니스라 말하는 부분이 의미하는 요소는 데이터베이스의 한 컬럼을 갖고 판단했습니다.

 

> 만약 A 라는 컬럼 값이 NULL 이라면, 이는 새로운 FORM 으로 보여주도록한다.

> 만약 A 라는 컬럼 값이 NULL 이 아니라면, 과거 FORM 으로 보여주도록 한다.

 

 이렇게 개발을 모두다 마치고, 상급자에게 데모를 시연하는 자리였습니다.

 

상급자에게 데모에서 보여진 비지니스 로직이 어떻게 동작되는지 설명하는 자리에서 저는 이런말을 했습니다.

"잠깐만요 코드좀 볼게요"

만약 A 라는 컬럼 값이 NULL 이라면 에 대해서 설명하려다 보니, 위와 같이 "잠깐만요. 코드좀 볼게요" 라는 말을 제가 하고 있더라구요.

 

이 말이 뜻하는 바가 무엇일까요?

 

1. 코드가 깨끗하지 않았다는 것을 증명합니다.

2. 전달하고자 하는 바가 비지니스와 무관하다는 것을 의미합니다.

 

 흔히, 깨끗한 코드라 함은 가독성 높은 코드를 의미합니다. 이 말은 다시 말해- 코드에서 말하고자 하는 바가 잘 반영되었다는 것을 뜻합니다. 그러나, "잠깐 코드를 볼게요" 라는 말은 자신이 작성한 코드가 정확히 무엇을 의미하는지, 그리고 어떤 비지니스를 전달하려고 했었는지 불안정하다는 것을 의미합니다.

 

 당연히 코드 또한  if(aColumn == null ) {xx} 이런 형태를 띄고 있었습니다. 만약 더 나은 코드 였다면, if(isOldFormUI()) {xx} 이렇게 보여졌을 것입니다.

 

 간단한 UI 변경 프로젝트라는 안일한 생각에 비지니스는 무시한 체, DB의 데이터 관점으로만 생각했습니다.

 

이 코드는 분명 시간이 지나 누군가 이 로직에 물어본다면, 저는 마찬가지로 만약 A 라는 컬럼 값이 NULL 이라면 라는 말을 할 수 있을까요?

 

다시 또 "잠깐 코드를 볼게요" 라고 했을 것입니다.

 

코드는 함축적으로 비지니스을 담고 있습니다.

코드는 읽는 이에게 의도를 전달해야 합니다.

코드는 그 자체만으로 의미가 있습니다.

댓글