Christmas Pikachu Dart란
개발일지/Dart

Dart란

ZI_CO 2022. 11. 3.

Dart(다트)란

구글이 JavaScript를 대체하기 위해 개발한 웹프로그래밍 언어이다.

모바일 앱, 웹 앱, 명령어 스크립트, 서버 프로그래밍 등 어떤 것이든 다트를 사용해 만들 수 있다.

웹앱이 아닌 네이티브 코드로 안드로이드나 iOS용 앱을 동시에 기발 할 수 있다.

java랑 유사한 문법으로 몇가지 특징만 숙지하면 쉽게 개발 할 수 있다.

 

 

1.모든 것들이 전부 Object로 취급한다.

- Variable안에 넣을 수 있는 것은 전부 Object

- Function, number, null 전부 Object로 취급

- 변수에 넣을 수 있는 모든 것은 객체이며, 모든 객체는 클래스의 인스턴스로 취급

 

 

 

 

 

Dart의 주요 기능

💡 두 가지 컴파일 방법 지원 (JIT + AOT)
💡 핫 리로드-> 빠른 개발 가능
💡 초당 60 프레임의 훌륭한 애니메이션
💡 선제적 스케줄링, 타임 슬라이싱 및 공유 리소스
💡 Lock 없이 객체 할당 가비지 수집 가능
💡 선언적인 방식의 레이아웃

 

 

 

 

 

 

 

두 가지 컴파일 방법 지원 (JIT + AOT)

Dart는 JITAOT컴파일러를 둘 다 사용한다.

 

⏱JIT(Just-In-Time) 컴파일러는 프로그램 실행 중에 즉시 컴파일이 가능하다

      ✔ 빠른 개발 주기로 개발이 가능하다
      ✔ 실행 속도가 느려집니다.(프로그램 실행이 시작될 때 코드를 실행하기 전에 분석 및 컴파일을 수행해야 하기 때문에...)

 

⏲AOT(Ahead-of-time) 컴파일러는 프로그램 작성 중(런타임 이전에) 컴파일을 실행한다.

    ✔ 개발 중에 AOT컴파일을 수행하면 개발 주기가 느려진다. (프로그램을 변경 후 실행하여 결과를 봐야 해서)
      ✔ 런타임에 분석 및 컴파일을 위해 일시 ​​중지하지 않고, 보다 예측 가능하게 실행할 수 있는 프로그램을 만든다.
      ✔ 실행 속도가 더 빠르다.

 

 

Dart는 이 두 가지 컴파일러를 모두 사용하는 데 적합한 적은 언어 중에 하나이다.

개발 중에는 JIT 컴파일러를 사용하여 빠른 개발을

출시할 때는 AOT로 컴파일한다.

 

 

 

 

 

결과적으로 Dart는 매우 빠른 개발 주기와 빠른 실행 및 시작 시간이라는 두 가지 이점을 모두 제공할 수 있다

 

 

 

 

 

 

 

 

 

핫 리로드

Flutter의 가장 인기 있는 기능 중 하나는 바로 Hot Reload이다.

Flutter는 개발 중에는 JIT 컴파일러를 사용하여 일반적으로 1초 안에 코드를 다시 로드하고 계속 실행할 수 있다

앱 상태는 가능할 때마다 Reload를 통해 유지되므로 앱이 중단된 시점부터 계속할 수 있다

이 핫 리로드 기능은 앱 개발의 생산성을 2배 이상 향상 지켜줄 것이라 모바일 개발자들은 입을 모아 이야기합니다🙆‍♂️

 

 

 

 

 

 

문자열안에서 연산하는 법 (자바와 다트의 차이)

void main() {
  print('1+1 = ${1 + 1}');
  print('2 + 2 = ${2 + 2}');
  print('3 + 3 = ${3 + 3}');
  print('100 ~/ 2 = ${100 ~/ 2}');
  print('3 * 3 = ${3 * 3}');
  print('4 / 4 = ${4 / 4}');

}

'개발일지 > Dart' 카테고리의 다른 글

const와 final의 차이  (0) 2022.11.06
Dart에서 형 변환 하기  (0) 2022.11.04
var 와 dynamic  (0) 2022.11.04
명시적 타입, 타입추론, 데이터 타입 확인  (0) 2022.11.04
연산(산술, 부호, 논리)  (0) 2022.11.04

댓글