04 # Consumer Stateful Widget in Flutter Riverpod — Flutter Riverpod State Management
- Flutter Riverpod의 Consumer Stateful Widget은 Flutter의 Stateful Widget과 유사하지만 Riverpod의 기능을 추가하여 위젯의 생명주기(initState, dispose)를 관리할 수 있게 해줍니다. 🔄
- Consumer Widget에서는 컨트롤러를 직접 생성하고 관리해야 하므로 메모리 누수 위험이 있지만, Consumer Stateful Widget에서는 initState와 dispose를 통해 컨트롤러 생명주기를 안전하게 관리할 수 있습니다. 🛡️
- Consumer Stateful Widget을 사용하면 위젯이 생성될 때 컨트롤러를 초기화하고, 위젯이 제거될 때 컨트롤러를 정리하여 메모리 누수를 방지할 수 있습니다. 🗑️
- 텍스트 필드의 내용이 변경될 때마다 Riverpod Provider를 업데이트하는 예제를 통해 Consumer Stateful Widget의 활용법을 설명합니다. ✍️
- 애니메이션 컨트롤러를 사용하여 화면에 보이는 동안에만 애니메이션이 실행되도록 하고, 화면이 닫힐 때 애니메이션 컨트롤러를 정리하여 성능을 최적화하는 방법을 보여줍니다. 🎬
- Consumer Widget은 생명주기가 없는 Stateless Widget인 반면, Consumer Stateful Widget은 위젯의 생명주기를 관리할 수 있는 기능을 제공합니다. 👶-> 👴
- 다음 튜토리얼에서는 Future Provider를 사용하여 비동기 데이터를 처리하고, 원격 데이터베이스나 API에서 데이터를 가져오는 방법을 배울 예정입니다. 📡
- Consumer Stateful Widget을 사용하면 UI 로직과 백엔드 로직을 분리하여 코드를 더 깔끔하게 유지할 수 있습니다. 🧩
- initState() 메서드에서 컨트롤러를 초기화하고, addListener()를 사용하여 컨트롤러의 변경 사항을 감지하여 Provider를 업데이트합니다. 👂
- dispose() 메서드에서 컨트롤러를 정리하여 메모리 누수를 방지하고, 위젯의 생명주기를 안전하게 관리합니다. ✅