2026.01.09 (금)

JSON은 데이터를 주고받기 위한 도구로 객체로 변환해서 사용한다
toJson)fromJson)모델 클래스 만들기: 데이터 담을 틀을 만들기
class User {
final String name;
final int age;
User({required this.name,
required this.age,});
// JSON 데이터를 Dart 객체로 변환하는 생성자
User.fromJson(Map<String, dynamic> json)
: name = json['name'],
age = json['age'];
// Dart 객체를 JSON으로 변환하는 메서드
Map<String, dynamic> toJson() => {
'name' : name,
'age' : age,
};
}
MVVM은 앱의 코드를 나누어 앱의 흐름과 설계를 쉽게 만들어주는 설계 도면 같은 존재
상태관리 도구
// 1. 전역 변수로 프로바이더 선언
final nameProvider = StateProvider<String>((ref) => "개발자에게");
// 2. ConsumerWidget을 상속받아서 사용
class HomeView extends ConsumerWidget {
@override
Widget build (BuildContext context, WidgetRef ref) {
// 3. ref.watch를 통해 데이터 감시 및 UI 변경
final name = ref.watch(nameProvider);
return Scaffold (
body: Center(child: Text(name)),
floatingActionButton: FloatingActionButton(
onPressed: () => ref.read(nameProvider.notifier).state = "Flutter 개발자",
),
),
}
}
ref.watch : 값이 바뀌면 화면을 다시 그려줘 (build 함수 안에서 사용)ref.read : 값을 한번만 읽어줘 (주로 버튼 클릭 같은 이벤트 함수에서 사용)이렇게 또 한주가 지나갔다
매주 그렇게 느끼 듯.. 이번주는 정말 많은 것들이 머리에 들어왔다.
특히 MVVM 얘는 정말 해줄 일이 많아서 파일 정리도 잘 해야하고 복잡한 것 같지만,, 정말 코드를 많이 써보는 연습을 해봐야겠다 화이팅
지금 이상태 이 컨디션으로 과제를 하러 gogo...🍭