[Flutter] 상태(State)의 종류

2025. 2. 3. 00:59·Flutter/Dart 언어
728x90
💡 상태는 공유 여부에 따라 로컬 상태(Local State)와 공유 상태(Shared State)로 나눌 수 있다!
 

Differentiate between ephemeral state and app state

How to tell the difference between ephemeral and app state.

docs.flutter.dev

  • 로컬 상태(Local State) : 공유되지 않는 상태
    • BottomNavigationBar의 현재 선택한 탭
  • 공유 상태(Shared State) : 여러 위젯에서 공유되어 표현되는 상태
    • 로그인한 유저 정보
    • 특정 게시글의 좋아요 표시
    • 쇼핑 앱의 장바구니
💡  공유 상태는 상태가 변경될 경우, 동일한 상태를 보여주기 위해 동기화가 필요

 

※ 상태 관리 이해하기

💡 공유 상태가 변경될 때, 동기화하는 것을 상태 관리(State Management)라 한다.

 

 💡 상태 관리가 안되면 데이터 일관성을 잃게 된다.

  • 유저가 프로필을 변경해도 다른 화면에서 이전 프로필이 보이는 문제
  • 쇼핑 바구니에 표시된 상품의 개수와 실제 담긴 상품 개수가 다른 문제
  • 글을 작성했는데, 게시판에 반영되지 않는 문제(Create)
  • 글을 수정했는데, 게시판에 반영되지 않는 문제(Update)
  • 글을 삭제했는데, 게시판에 반영되지 않는 문제(Delete) 
 💡 동일한 데이터를 여러 곳에서 가지고 있기 때문에, 동기화가 필요하게 된다.


 

 

 

 

💡  데이터를 한 곳에서 관리하면 동기화 문제가 해결. 따라서 모든 상태 관리 방법들은 공유 상태를 한 곳에서 관리하도록 중앙 집중식으로 만들어 문제를 해결

'Flutter > Dart 언어' 카테고리의 다른 글

[Flutter] MVVM TodoList 만들기  (1) 2025.02.05
[Flutter] MVVM 패턴에 대해서 알아 보자  (0) 2025.02.05
[Flutter] 상태란 뭘까?  (2) 2025.01.20
Dio 패키지 사용해 보기  (1) 2025.01.14
Dart 비동기 프로그래밍  (3) 2025.01.14
'Flutter/Dart 언어' 카테고리의 다른 글
  • [Flutter] MVVM TodoList 만들기
  • [Flutter] MVVM 패턴에 대해서 알아 보자
  • [Flutter] 상태란 뭘까?
  • Dio 패키지 사용해 보기
공돌이 출신 개발자
공돌이 출신 개발자
공돌이 출신 개발자입니다
  • 공돌이 출신 개발자
    공돌이 출신 개발자
    공돌이 출신 개발자
  • 전체
    오늘
    어제
    • 분류 전체보기 (124)
      • Database (0)
        • SQL (0)
        • 1일 1쿼리 (9)
      • Flutter (40)
        • Dart 언어 (18)
        • App (22)
      • Git (0)
      • Http 기초 지식 (14)
      • HTML5 & CSS3 (0)
      • Java (33)
      • JSP (0)
      • JavaScript (0)
      • Linux (0)
      • MSA (0)
      • Project (0)
      • React (0)
      • Spring (19)
      • 설치 메뉴얼 (1)
      • [Flutter] 프로젝트 (눈길) (8)
        • 작업일지 (8)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    Java
    메서드
    1일1쿼리
    HTTP
    프로그래밍
    SQL
    개발
    데이터
    dart
    android studio
    SQLD
    spring boot
    플러터
    JAVA 기초
    블로그 만들기
    로그인
    객체지향
    앱개발
    객체
    회원가입
    Android
    앱 개발
    안드로이드
    안드로이드 앱 개발
    jsp
    flutter
    코딩
    프로젝트
    클래스
    공부
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
공돌이 출신 개발자
[Flutter] 상태(State)의 종류
상단으로

티스토리툴바