1. 다른 컴포넌트에서 발생한 오류

오류(서드파티 or API or 마이크로 서비스)

조건문을 추가하거나 error boundary 추가 (UI코드 복잡성 증가)

error boundary: 자식 컴포넌트의 JS 오류를 잡아서 로그를 기록하고 애플리케이션 전체가 crash 하지 않도록 fallback UI를 표시. 렌더링 과정, 생명주기 메서드, 하위 트리 컴포넌트 생성자에서 발생하는 에러 포착

2. 예측하지 못한 사용자 행동

text 필드에 특수문자 입력, 양식을 너무 빨리 제출, 사이트 탐색을 방해하는 브라우저 확장 프로그램 사용 등

위 엣지 케이스에 대비

유효성 검사 안전 장치 추가 (UI코드 복잡성 증가)