콘텐츠로 건너뛰기

[self-review] 로직의 논리오류

사실 로직을 분석하고 구현할 때 단순한 문법오류는 굉장히 훌륭해진 IDE(이클립스를 위시한)들이 잡아준다.

다만, 교묘한 논리적인 오류들이 개발자의 머리를 복잡하게 만든다.

문제)

위 로직은… 어떤 리스트를 구성하는데, 갯수가 부족하면 베스트앱으로 채워넣는 로직이다.

위 로직에서 어떤 부분이 문제일까.

기존에 별 문제가 없던 로직이다.

그러다가 중복을 제거하는 구문인 if문이 추가되면서 논리적인 오류 상태가 되었다.

만약에 유저의 리스트가 count 보다 작으면서 베스트리스트의 부분집합이면

appList의 size는 원하는 count 수치에 도달하지 못하게 된다.

단순히 하나의 분기문도 이렇게 숨겨진 오류를 가지고 있는데…

수많은 분기문으로 만들어지는 로직들은 더할 나위가 없겠다.

if-less로 프로그래밍하는 버릇을 가지자.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다