핵심
1) json String을 Dart 객체로 변환하거나
-이 과정에서 jsondecode 함수를 통해 디코딩은 총 2단계로 진행됨. 첫번째는 json String을 json 자료형으로 변환이며 두번째는
json 자료형을 객체로 변환임. json string을 분석하여 map<string, dynamic> 자료형으로 반환하는 것이 일반적
2) 반대로 Dart 객체를 json String으로 변환하는 과정
인코딩 또한 마찬가지로 2단계로 진행. 첫번째는 Dart 객체를 json 자료형으로 변환. 두번째는 json 자료형을 json String으로 변환