dart는 객체지향 프로그래밍 언어로 객체의 타입을 명시적으로 정의한다.
하지만 이런 타입 체크를 무시하는 Dynamic
이라는 타입이 존재한다.
다이나믹 타입은 런타임에 객체의 타입을 결정한다. 타입 안정성에 대해 보장되진 않지만 동적으로 객체의 타입을 변경하는 경우에 유용하다. (kotlin에도 찾아보니 있었다. kotlin dynamic)
dynamic value = "string";
print(value) // "string"
value = 25;
print(value) // 25
flutter를 사용하다보면 jsonDecode
라는 메서드가 있는데, 이 메서드의 반환값은 dynamic
이다. 즉, response.body를 읽어와서 jsonDecode
한 결과값의 타입을 우리가 동적으로 지정해줄 수 있다. wow