데브허브 | DEVHUB | 다트 기초 문법 - 19일차 / Completer다트 기초 문법 - 19일차 / Completer
- Completer는 다트에서 원하는 시점에 비동기 이벤트와 데이터를 전달하는 데 사용되는 도구입니다. 📬
- Completer 실습을 위해서는 DartPad가 아닌 Android Studio와 Flutter SDK 환경 설정이 필요합니다. 🛠️
- Completer는
complete()로 성공, completeError()로 실패 이벤트를 발생시키며, 결과는 await 또는 .then()으로 처리합니다. ✅
- 콜백 기반 함수를 Completer를 통해 Future 기반으로 변환하여
async/await 패턴과 통합할 수 있습니다. 🔄
- 여러 비동기 콜백 작업을 동시에 처리하고 모든 완료 시점을 한 번에 감지하는 데 Completer를 활용할 수 있습니다. 🚀
- Completer는 한 번만 완료될 수 있으며,
isCompleted 속성으로 완료 여부를 확인하여 중복 호출을 방지합니다. ☝️
- Flutter UI 컴포넌트(예: Scaffold, MaterialBanner) 내부에서도 비동기 작업 완료 관리를 위해 Completer가 활용됩니다. 🏗️
async/await와 콜백 방식 모두를 이해하고 상황에 맞게 유연하게 사용하는 것이 중요합니다. 🧠