[Flutter] Riverpod - DI
·
Flutter/Basic Knowledge
DI 란?의존성 주입(Dependency Injection, DI)은 한 객체가 다른 객체의 의존성을 제공하는 디자인 패턴입니다.의존성이 있다는 건 무슨 의미 일까요?: A를 구현함에 있어 B를 사용해서 B가 정상 동작 하지 않으면 A도 결함이 발생할 때, A가 B에 의존성이 있다고 표현을 합니다.당연히 의존성은 최소화하는게 좋습니다. 예를 들어, A가 B에 의존하고 B가 C에 의존하고 C가 D에 의존하는 구조라면, D가 변경되는 경우 A까지 실행이 안될 수 있거든요. 이렇게 복잡하게 얽혀있는 경우에 문제가 발생하면, 문제의 시작점이 어디인지 찾기가 매우 어려울 수 있습니다. -> 이런 경우 코드의 결합도가 높다고 표현합니다. 그렇기 때문에 DI라는 개념이 생긴 것입니다. 의존성을 외부에서 주입받도록..
[Flutter] Riverpod - 상태 관리
·
Flutter/Basic Knowledge
TL;DRRiverpod은 Flutter의 강력한 상태 관리 프레임워크로, Provider의 여러 한계를 극복한 프레임워크입니다.Provider에서 글자 배열만 바꿔서 Riverpod이라고 만들었을 정도로 같은 사람이 만든 티가 나죠?이 글에서는 Riverpod의 기본 상태 관리 방식과 MVVM 아키텍처에서 View, ViewModel, Provider를 효과적으로 연결하는 방법을 실제 코드 예제와 함께 알아봅니다.목차Riverpod 소개기본적인 상태 관리 방식MVVM 패턴과 Riverpod 통합실제 예제 구현성능 최적화 팁결론1. Riverpod 소개Flutter 애플리케이션을 개발하다 보면 상태 관리는 피할 수 없는 과제입니다. Provider 패키지가 인기를 얻었지만, 타입 안전성과 컴파일 타임 검..