Q. 코딩에서 조건문은 어떠한 역할을 할까?
조건문은 모든 프로그래밍 언어를 막론하고 절대 빼놓을 수 없는 간단하지만 매우 중요한 뼈.대.요소라고 생각한다.
단순히 A의 조건에는 B의 로직이 수행되고, A가 아닌 조건에는 C의 로직이 수행된다는 개념을 떠나 새로운 조건이 계속 계속 생겨나면 그 조건 전체가 서비스의 복잡도를 결정할 만큼 중요한 요소라고 생각한다.
좋은 조건문은 이러한 요소를 좋게 만든다는 것을 말한다.
if (A) {
B();
} else {
C();
}
Q. 그렇다면 좋은 조건문은 어떤 조건문을 말할까?
우리 팀의 유지보수를 위한 가.독.성이 높은 조건문을 말한다.
여기서 단순히 가독성 높음에 집중하면 보기에만 좋은 떡?이 될 가능성이 높다.
유지보수하기 좋게 가독성 높은 조건문을 작성한다면, 맛도 좋고 보기에도 좋은 떡?이 될 수 있다.
'유지보수를 위한 높은 가독성' 이라는 말 자체는 어렵지만,
결국 서비스를 함께 만드는 개발 팀원끼리 서로의 조건 로직을 잘 이해해서 잘 디벨롭하는 것이라고 생각한다.
온전히 한 사람이 평생 신규 개발부터 유지보수까지 맡는 서비스가 아닌 이상,
좋은 조건문을 판단하는 기준은 본인의 지식과 경험보다는 함께 개발하는 팀원들에게 더욱 비중이 있다.
좋은 조건문은
1. 함께 일하는 동료들
2. 가까운 미래에 새로 합류할 동료들
3. (내가 짠 코드를 3개월 뒤 잊어버릴) 나 자신
모두를 향해야한다.
정리하면, 왜 좋은 조건문(IF) 을 작성해야할까? 라는 질문에 나는
'서로의 조건 로직을 잘 이해해 서비스를 잘 디벨롭하기 위해서'라고 답하고 싶다.
앞으로 제시할 몇가지 방법들은 대부분 사람들이 이해하기 쉽다고 생각하는 대중적인 방법이라 제시해본다.
혼자 좋다고 주장하는 방법은 독이 될 수 있으니 이 글을 통해 여러가지 방법을 만나보고, 좋은 조건문을 만들기 위해 개발 팀원들과 충분히 고민해보는 계기가 되면 좋겠다.
'Deep Dive Series > Good Condition' 카테고리의 다른 글
[좋은 조건문 작성하기 4] JSON 객체를 활용한 조건문 형태 (0) | 2022.02.20 |
---|---|
[좋은 조건문 작성하기 3] 애매한 조건문은 팀원들과 생각 나누기 (0) | 2022.01.08 |
[좋은 조건문 작성하기 2] Switch/Case 톺아보기 (4) | 2021.12.17 |
[좋은 조건문 작성하기 1] Early Return은 깊이가 얕아서 좋다! (0) | 2021.12.05 |