Dart
는 구글 개발자들이 만든 객체 지향 언어로,
UI(User Interface)를 만드는 데에 최적화되어 있다.
Flutter
로 앱을 개발하는데 기초가 되는 언어이며,
다양하고 많은 플랫폼에 컴파일이 가능하다는 장점이 있다.
〈 Dart와 다른 언어들 간의 유사성 〉
기본적으로 개발을 할 때는 AOT(Ahead-Of-Time) 컴파일을 접한다.
코드를 작성하고 빌드를 하고 컴파일을 하는 순서를 따른다는 것이다.
이러한 경우, 개발 중일 때 즉각적으로 변화한 부분을 확인하고 싶다면
계속해서 컴파일 과정을 처음부터 끝까지 반복해야하기 때문에 비효율적이다.
Dart
는 Dart VM(Dart Virtual Machine)
을 통해 JIT(Just-In-Time) 을 지원한다.
개발을 하는 과정에서 느리긴하지만, 실시간으로 변화된 부분을 확인할 수 있다.
개발이 끝나면 AOT를 기반으로 실제 기계어로 변환하여 Linux, MAC, iOS, PC 등
여러 플랫폼에 사용될 수 있도록 컴파일이 진행된다.
▶ 즉, 개발 환경에서는 즉각적인 피드백을 받을 수 있고,
배포 환경에서는 기계어로 컴파일되어 빠르게 동작하는 이점을 모두 챙길 수 있다는 것
null
값을 참조해버리면 많은 문제가 발생하는데,