
🎉 오늘 한 일
☑️ 타입스크립트 스탠다드 복습
얼리 리얼 패턴(Early real pattern)
예시) 아래 예시는 if와 else 중첩문으로 각 조건에 맞는 메시지를 출력하고, 조건이 충족되지 않을 경우 다음 조건을 확인하는 구조로 되어 있습니다.
if (!userId || !password) {
alert("아이디와 비밀번호 모두 입력해주세요");
return;
} else {
if (userId !== user.userId) {
alert("아이디가 틀립니다");
return;
} else {
if (password !== user.password) {
alert("비밀번호가 틀립니다");
return;
} else {
alert("로그인 성공입니다.");
}
}
}
- Early return pattern으로 바꿔주면 ?
if (!userId || !password) { alert("아이디와 비밀번호 모두 입력해주세요"); return; } if (userId !== user.userId) { alert("아이디가 틀립니다"); return; } if (password !== user.password) { alert("비밀번호가 틀립니다") return; } alert("로그인 성공입니다."); };
이 패턴으로 바꿔주면 조건이 만족되지 않을 경우 함수나 메서드를 빠르게 종료시킨다.
이를 통해 코드의 가독성을 높이고, 불필요한 중첩을 줄일 수 있는 점 메모메모
- Early Return은 과연 좋은가?
1) Early Return의 장점
2) Early Return의 단점
- 결론
이 방법이 매번 적용될 수 있다는 부분은 아니다.
때때로 Early Return은 함수의 복잡도를 증가시키고 코드를 더 복잡하게 만들 수 있다. 그리고 간결한 코드에서는 오히려 if-else문이 더 명확할 수 있다.
읽기 쉬운 코드를 작성하기 위해서는 상황에 맞게 적절한 패턴을 선택하는 것이 중요하다. 무조건적인 Early Return보다는 맥락을 고려해야 한다.
리엑트에서도 Early Return 랜더링 제어할때 쓰며 자주 쓰는 부분이기에 나도 모르게 쓰는 경우가 있다하는데 !
어떤건지 알고 쓰게 되서 또 하나 알아가는 하루 (◦˙▿˙◦)
□ 콘솔단 스터디 개인과제 발표
□ 그동안 했던것 공부
🔗출처 : https://medium.com/swlh/return-early-pattern-3d18a41bba8