6관문. Runtime Error Guard
관문 6 / 7
Provider 없이 useContext를 호출했을 때 의미 있는 에러를 던지는 안전한 훅 래퍼를 만들어라.
📖 이론 비급
Runtime Error Guard: 명확한 실패
useContext(ThemeContext)가 undefined를 반환하면
실제 오류는 한참 뒤 다른 곳에서 발생하여 디버깅이 어렵다.
패턴: Context 소비 훅에서 반환값을 체크하고 명확한 에러를 던진다.
if (!value) throw new Error('useTheme은 ThemeProvider 내에서 사용해야 합니다');
실수를 즉시 발견할 수 있어 개발 속도가 빨라진다.