Else 쓰지 마세요
velog.io
다음 내용이 궁금하다면?
이미 회원이신가요?
2023년 8월 6일 오전 12:26
early return 패턴이죠
@은 공간합니다. 얼리리턴을 지향하는 내용에 가까울것 같아요.
일반적인 경우에서 if else를 if if로 바꿔서 쓰자는 얘기는 아닌거 같습니다. 그래서도 안되고요 "예외case에 대해서 독립된 if문으로 분리해서 처리하자" 라는게 더 내용을 잘 설명할 것 같습니다. 현업에서도 보통 이렇게 예외 case처리하는 if문을 앞쪽에 쭉 작성하고 정상동작 code는 그 밑에다가 쓰죠. 이렇게 해야 nested if문이 되는걸 막아서 가독성이 좋아지더라고요
삭제된 사용자
2023년 08월 08일
@Jimmy 동감입니다. 무조건 else 가 바람직하지 않다라는 얘기가 아닐것 같은데..
@Jimmy 저도 이 얘기를 남기려고 댓글쓰기를 눌렀는데 이미 쓰신 분이 있네요:) “else 를 쓰지 않는다” 라는 규칙이 가독성이 좋은 코드에서 가장 대표적인 방법으로 알려지면서 더 짧게 요약하기 위해 마치 “else를 쓰지마라” 로 귀결되는 경향이 있는데, 극단적이지 말아야합니다. 특히 신입 또는 주니어 레벨에서 무조건 안쓰려는 생각을 가지시는 분들이 많아지는 것 같아 주의가 필요해 보여요! 그저 방법 중 하나일 뿐입니다~!
@Jimmy 쓰지마라 쓰지않는다인데 그 원리를 아는 게 중요합니다. 무지성 안쓰기 말고
else보단 guard 문 지향
아키에게 무조건 이라는 말은 무조건 틀린 말이죠
댓글로 많은 의견을 남겨주셔서 감사합니다. 블로그 제목 "Else쓰지 마세요"에 따른, 요약 과정에서 내용이 극단적으로 전달된것 같습니다. nested if문을 최소화 하기 위한 early return의 중요성과, else대신 Guard 문을 우선시하는 접근법을 지향하는 내용에 더 가까운 내용으로 보시면 될 것 같습니다.
'if-else 보다는 if-if 코드 가독성의 중요성'은 오해하기 쉬운 제목인것 같습니다. 어떤 코드를 보면 if-else를 사용하는게 더 가독성이 좋은데 억지로 if-if 를 사용한코드도 보게됩니다. 수백명이 기여하는 라이브러리에 기여하면서 if-else로 된 코드를 굉장히 많이 접하게됩니다. 따라서 상황에따라 if-else가 좋은지 if-if가 좋은지에 또는 guard문 지향하기 등 오해할 요소가 적은 제목으로 글을쓰는게 더 좋을 것 같습니다. 글의 초점이 if-if에만 맞춰져 있는것 같습니다.
@dom2 맞습니다. 제목이 조금 극단적이라서 오해의 소지가 있었던 것 같습니다. 좋은 지적 감사합니다.
If 1==1: Return If 2=2: Return Else가 있는이유는 논리적일대 return을 사용안한다겠죠 If가 switch보다는 가독성이 더 좋죠 대신 저는 switch를 안써요
nested if 줄일 수 있는데 않고 어질어질한 코드 작성하는 것을 피하라는 거지, else를 무조건 쓰면 안된다 무조건 가독성이 떨어진다고 하면 말이 안되는 얘기죠.
추
... 더 보기더불어민주당에선 대통령실 비서실장으로 지명된 강훈식 의원이 '경영권과 무관하게 상장사 지분 25% 이상을 확보할 경우 잔여 주식을 모두 공개매수해야 한다'는 내용의 자본시장법 개정안을 지난해 6월 발의했다. 대통령령으로 예외를 두겠다는 단서 조항을 달았지만 사실상 100% 의무공개매수를 도입을 추진하고 있다. 지난 정부가 추진한 '50%+1주 의무공개매수' 대비 한발 더 나간 제도라는 평가가 나온다.
... 더 보기한
... 더 보기