본문 바로가기
플러터(flutter)

Dart 언어란 무엇인가? with Dart 언어의 특징

by 기계공학 주인장 2023. 4. 2.
반응형

Dart 언어란 & Dart 언어의 특징

  • 구글에서 만든 프로그래밍 언어
  • Dart를 사용해서 Flutter를 개발할 수 있음
  • 다른 언어들과 매우 유사한 방법으로 구현, 사용할 수 있음
  • 객체지향 언어이다.
  • 멀티 플랫폼에 사용 가능
    • 안드로이드, IOS, web, IoT 등등
  • Just in Time과 Ahead of Time 방식으로 컴파일한다.
    • 개발을 할 때는 JIT 방식으로 컴파일한다.
    • 그렇기 때문에 개발 중에는 매우 빠른 속도로 컴파일 하고 변경한 결과를 볼 수 있다.
    • 배포를 할 때는 AOT 방식으로 컴파일 한다.
  • null safety를 지원한다.

 

 

위와 같은 특징으로 인해 Dart가 Flutter를 개발할 할 수 있는 언어로 선택되었다.


Dart 시작하기

사실 Dart는 웹 IDE를 사용해서 간단하게 테스트할 수 있으며 기록한 코드는 자동으로 저장됩니다!

 

 

DartPad

 

dartpad.dev

 

Dart 언어만 공부한다면 위 사이트만 사용하더라도 충분할 것이다.

 

그리고 화면을 보면 다음과 같이 되어있다.

 

// 다른 언어와 마찬가지로 main 메서드가 필요하다
// 프로그램을 실행하기 위해 필요한 메서드
void main() {
  for (int i = 0; i < 5; i++) {
  	// 각 프로그램 라인마다 세미콜론(;)이 필요하다
    print('hello ${i + 1}');
  }
}

 

위 코드를 보면 Dart에선 세미콜론을 사용하는데

 

새미콜론이 필요한 다른 프로그래밍 언어들 처럼 자동으로 세미콜론을 넣어주지 않는다.

 

그 이유는 필요하지 않을 때도 있기 때문이다.

 

참고로 Dart에서 세미콜론의 역할은 해당 코드의 끝을 의미한다.


Drat에서 변수 선언하기

기본적인 방법으로는 다음과 같은 방법이 있다.

  • var
  • 다이내믹 변수
void main() {
  // 구체적인 타입 명시
  String name = "abc";
    
  // var을 사용한 변수 지정
  var number = 1;
  
  // var을 사용한 다이내믹 변수 지정
  var anything;
  
  anything = "abc";
  anything = 123;
}

 

var로 선언한 동시에 초기화를 했을 경우 

 

자동으로 변수 타입이 설정된다.

 

하지만, 초기화를 하지 않을 경우 다이내믹 변수가 되는데

 

해당 변수에는 어떠한 형태의 변수이던 마음대로 넣을 수 있다.

 

Nullable 변수

nullSafety가 없는 언어의 경우 null이 들어가 있는 변수로 무언가를 하려고 하면 에러가 발생한다.

 

그렇기 때문에 컴파일 하기 전에 이를 알아차리는 것이 제일 좋다.

 

Dart는 nullSafety를 지원하기 때문에 null을 넣었을 때 컴파일이 되는지 확인해보자.

 

// without null safety
bool isEmpty(String string) => string.length == 0;

void main() {
  isEmpty(null);
}

 

위 코드에서 보면 String을 받는 함수에 null을 넣고 실행하니 에러가 발생한다.

 

Dart에서는 기본적으로 해당 변수가 null이 될 수 있음을 명시할 수 있다.

 

 변수형에 ? 을 붙이면null이 가능한 변수를 의미한다.

 

bool isEmpty(String? string) => string.length == 0;

 

nullable 변수는 다음과 같이 null 체크를 할 수도 있다.

 

String? name = "Lee";

void main() {
  if (name?.isEmpty == true) {
    
  };
}

 

코틀린과 마찬가지로 ?.을 사용하여 null check를 할 수 있다.


 

 

Dart 기초 - 변수 선언하기

Dart로 변수 선언하기 Final 변수 선언 Late 변수 선언 Constant 변수 선언 Recap 변수 선언 기본적인 변수 선언 방법은 이전 포스팅에서 이야기 했으니 생략하겠습니다! Dart 언어란 무엇인가? with Dart 언

android-developer.tistory.com

 

반응형

'플러터(flutter)' 카테고리의 다른 글

플러터 기초 - UI 구성  (0) 2023.04.15
Dart 기초 - 클래스  (0) 2023.04.09
Dart 기초 - 함수  (0) 2023.04.05
Dart 기초 - 컬렉션(Collections)  (0) 2023.04.04
Dart 기초 - 변수 선언하기  (0) 2023.04.02


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."


댓글