728x90

다트는 웹 프론트엔드 개발을 목적으로 개발된 언어입니다. 현재는 서버나 웹, 앱 등을 만들 때 사용할 수 있습니다.

다트 언어의 특징

다트는 다음과 같은 특징을 갖고 있습니다.

  1. main() 함수를 시작점으로 가집니다.
  2. 모든 변수가 객체이며, 모든 객체는 Object 클래스를 상속 받습니다.
    • 변수 안에 저장되는 값은 모두 Object입니다.
    • Function, number, null 등이 모두 Object로 취급됩니다.
    • 따라서 변수에 저장되는 모든 값은 클래스의 인스턴스로 취급됩니다.
  3. 동적 타입(dynamic)을 지원하는 정적 타입 언어입니다.
    • var: type을 지정하지 않아도 dart에서 타입 추론을 합니다.
    • dynamic: 변수에 타입 제한을 두지 않습니다. 다른 타입을 다시 대입할 수 있습니다.
  4. 제너릭 타입을 이용할 수 있습니다.
    • List<int>, List<dynamic> 등과 같이 제너릭을 지원합니다.
  5. public, private 과 같은 키워드가 존재하지 않습니다.
    • private의 경우, 클래스 단위가 아닌 파일 단위로 접근이 가능합니다.
    • private 함수를 선언하기 위해서는 함수 명 앞에 언더바(_)를 붙여주면 됩니다.
  6. 변수 또는 함수의 시작은 언더바(_) 또는 문자열로 시작할 수 있습니다.
    • 변수의 이름을 숫자로 시작할 수 없습니다.

위와 같은 특징으로 다른 언어를 사용해본 경험이 있다면 보다 쉽게 다트에 적응할 수 있습니다.

다트의 특징 이해

다트로 만든 프로그램은 main() 함수를 시작점으로 가집니다.

printNumber(int num) {
  print('number: $num');
}

main() {
  printNumber(12);
}

위의 예시에서 main() 함수는 printNumber() 함수에 12를 인자로 전달하고 있습니다. printNumber() 함수는 int 타입을 전달받아 콘솔에 출력하는 함수입니다.

따라서, 위 코드는 main() -> printNumber() -> print() 순서로 함수가 실행되어서 콘솔에 12를 출력할 것입니다.

728x90
728x90