
Flutter에서 전역 상태를 관리하거나 위젯간에 상태를 공유하기위하 사용함. widget간 데이터 공유가 가능하기는 하지만 한가지 상태 변화로 인해 트리 구조에서 state가 전달되기 때문에 불필요한 위젯들이 Rebuild 되면서 성능이슈가 나타나고 이를 provider가 해결해준다. 1. Provider 특징 코드 역할별(UI, API 요청, 모델 관리 등)로 클래스를 나눌 수 있음 데이터 공유 eg. 인증정보, 장바구니정도 등 앱 전반에서 사용 될 데이터 공유 좀 더 간단한 코드(bloc과 비교했을 때,,) 2. Provider 사용하기 기본적인 Provider 사용법 - 데이터의 생산과 소비 Provider.value( // int 타입 데이터 생산 value: 5, child: Container..

플루터는 Animation을 값의 변화와 시간을 통해 표현함. ex) opacity 1.0->0.0으로 변할때 2초가 걸린다 하면, 2초라는 정해진 시간 값(duration)동안 duration 변화(animation)을 구현하는 것. 1. package 추가 import package:flutter/animation.dart 2. Animation class Flutter의 Animation 시스템은 Animation 클래스를 기반으로 구성되어있음. value: animation의 현재 값, Animation라고 선언하는데 이 value의 타입이 T이다. status: AnimationStatus(animation의 상태를 나타내는 enum 타입) 타입으로 진행 방향(forward, reverse)과 ..
1.Json Serialization(직렬화) 웹서버와 통신하여 데이터를 주고받을 때 사용 수동 직렬화 dart의 jsonDeode()를 사용해서 디코드 할 수 있음. 모델 클래스 내에서 JSON 직렬화 class User { final String name; final String email; User(this.name, this.email); User.fromJson(Map json) : name = json['name'], email = json['email']; Map toJson() => { 'name': name, 'email': email, }; } // 사용 할 때 디코딩 Map userMap = jsonDecode(jsonString); var user = User.fromJson(use..