어플리케이션이 사용하는 원천 데이터를 가져오는 통로이다
ex) 마치 요리를 할 때 재료를 준비하는 과정과 같다.
⇒ 즉, 데이터를 “가져오고", “정리해서", “보여주기 좋게 만드는" 역할
class Todo {
int id;
String title;
bool isCompleted;
Todo(this.id, this.title, this.isCompleted);
Todo.fromJson(Map<String, dynamic> json)
: id = json['id'], title = json['title'], isCompleted = json['isCompleted'];
}
class Todo {
int id;
String title;
bool isCompleted;
Todo(this.id, this.title, this.isCompleted);
factory Todo.fromJson(Map<String, dynamic> json) {
return Todo(id: json['id'], title: json['title'], isCompleted: json['isCompleted'])
}
}
값 대입 외에 추가적인 코드 실행이 가능하다
인터페이스 구현체임을 명확히 표시하기 위해 인터페이스 이름 뒤에 Impl을 붙여서 만든다