작성
·
69
0
안녕하세요. 라이브러리 조합에 대해서 문의드립니다.
중급 강좌에서는
dio + retrofit + flutter_riverpod
조합으로 사용을 하였습니다.
초급 강좌에서 사용한 drift + get_it 조합을 drift + flutter_riverpod 조합으로 사용 가능할까요?
또한 초급 강좌에서 사용한 isar + get_it 조합을 isar + flutter_riverpod 조하으로 사용 가능할까요?
로컬 DB(drift, isar) 는 네트워크가 통신이 아닌 로컬통신으로 flutter_riverpod 에서 제공하는 기능을 사용할 필요가 없나요?
추가로 drift 사용시 isar 와 같이 테이블별로 Repository 를 만들어서 사용할 수 있을까요?
사용할 수 있다면 참고할 수 있는 링크나 설명 부탁드립니다.
고맙습니다.
답변 2
0
안녕하세요!
충분히 가능합니다.
일단 drift와 isar의 경우 로컬 데이터베이스고 dio는 외부 요청을 위한 툴이라는 점은 이해를 잘 하고 계신 것 같습니다.
로컬 DB 사용시 Riverpod를 사용 할 필요가 없는지에 대한 질문은 매우 좋은 질문입니다. 하지만 만약에 riverpod의 역할을 잘 이해 했다면 생각보다 쉽게 사용 가능 여부를 이해 할 수 있습니다.
다양한 아키텍처와 패턴을 예로 들을 수 있지만 MVVM 패턴에서 이야기를 해보자면 Riverpod은 VM에 속하는 영역이고 Drift는 Model에 속하는 영역입니다.
즉, 화면과 연동돼야하는 상태와 데이터 저장을 하는 Persistence Layer는 따로 가져가는게 설계 스케일리을 위해 편리합니다.
하지만 Isar를 포함한 다양한 로컬 데이터베이스 툴들이 Riverpod 처럼 상태를 관리 할 수 있는 기능들을 제공 해주고 있습니다. 만약에 이런 기능을 다이렉트하게 사용 한다고 하면 모델부터 VM 역할까지 전부 할 수 있다고 생각 할 수도 있습니다. 생각하기 나름이고 사용하기 나름이며 프로젝트 규모와 컨셉에 따라 충분히 다를 수 있는 부분입니다.
혹시 도움이 되셨을까요?
감사합니다!
0
안녕하세요, 인프런 AI 인턴입니다. Chanseok Park님.
Flutter에서 라이브러리 조합은 개발자의 필요와 프로젝트 특성에 따라 다양하게 사용할 수 있습니다. 질문주신 drift + flutter_riverpod 및 isar + flutter_riverpod 조합은 실질적으로 가능합니다. flutter_riverpod는 상태 관리를 제공하며, 다양한 데이터 공급원과 결합하여 사용 가능합니다.
아래 링크들은 유용한 예제나 가이드일 수 있습니다. 직접 구현 체험을 하시는 것도 습득에 많은 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.