2025-11-24
사용자는 개발자의 의도대로 사용하지않는다.
쓰로틀링
사용자가 통신을 필요로 하는작업을 연타하는 경우 중복 호출을 방지해 주어야 한다.
- 특정 시간 간격내의 이벤트가 여러번 발생하더라도, 그 중 한번만 실행하도록 한다.
- 보통 버튼에 적용한다.
쓰로틀링은 UI단의 안전조치이다.
데이터 단에서 안전초지도 해두면 좋다. 예를들어 bool값 상태를 하나 만들고, 서버 통신 로직 시작할 때 false, 끝나면 true 하는식으로 안전조치 할 수 있다.
디바운싱
- 이벤트가 여러번 발생시 마지막 이벤트만 처리하도록 한다.
- 예를 들어 TextField에서 onchange 를 사용한 검색 기능 구현시 사용한다.
적용
쓰로틀링과 디바운싱 위젯을 직접 구현해도 되지만 어렵다 싶으면 디바운싱 패키지, 쓰로틀링 패키지를 써도된다.
고민
쓰로틀링, 디바운싱 시간을 충분히 고민 해봐야한다.