본문 바로가기
개발/Dart

Dart 기초 - 03. dynamic type 변수, 여러가지 타입을 가질 수 있는 변수 키워드

by 왼하루 2023. 1. 22.
반응형

Dart는 객체지향 프로그래밍 언어로, 객체의 타입을 명시적으로 정의하는 것이 그 특징입니다. 하지만 이러한 타입 체크를 무시하는 "Dynamic" 타입도 제공합니다.

 

 

Dynamic type

Dynamic 타입은 타입 체크를 하지 않고 런타임에 객체의 타입을 결정합니다. 이를 사용하면 타입 안정성을 보장하지 않지만, 동적으로 객체의 타입을 변경하는 경우에 유용합니다.

 

 

dynamic type 사용 방법

아래와 같이 dynamic 키워드를 사용하여 변수를 선언할 수 있습니다.

dynamic variableName = "Hello World";

 

변수를 선언한 후에는 다른 타입의 값도 할당할 수 있습니다.

dynamic variableName = "Hello World";
print(variableName); // "Hello World"
variableName = 20;
print(variableName); // 20

 

결과 입니다.

결과

 

Dynamic type 은 어떤 데이터를 받았는데 그 데이터의 type을 알 수 없는 경우 유용합니다.

void main() {
  dynamic name;
  // name 변수가 string인지 확인
  if(name is String){
  	print('string!')
  }
}

 

이처럼 dynamic type으로 선언된 변수는 조건문으로 타입을 확인할 수 있습니다.

 

 

dynamic type 주의사항

Dynamic 타입을 사용하면 타입 안정성을 보장하지 않습니다. 이를 사용하면 타입 오류를 일으키는 코드를 작성할 수 있으므로, 신중하게 사용하는 것이 좋습니다.

 

또한, Dynamic 타입을 사용하면 일부 라이브러리나 프레임워크에서 제공하는 타입 관련 기능을 사용할 수 없게 될 수 있습니다.

 

Dart의 Dynamic 타입은 타입 체크를 하지 않는 것으로, 동적으로 객체의 타입을 변경할 수 있는 유용한 기능이지만, 이를 사용하려면 신중하게 고려해야 합니다.

 

 

마무리

Dart의 Dynamic 타입은 타입 체크를 하지 않는 것으로, 동적으로 객체의 타입을 변경할 수 있는 유용한 기능이지만 이를 사용하려면 신중하게 고려해야 합니다.

 

오늘도 행복한 코딩생활 되시길 바라겠습니다.

 

감사합니다.

댓글