Dart

본 글은 개인적으로 학습한 내용을 노션에서 이전한 게시글입니다.


I. 서론 : Dart란

1. 정의

구글이 자바스크립트를 대체하기 위해 2011년 개발한 웹프로그래밍 언어로, 모바일 앱, 웹 앱, 명령어 스크립트, 서버 프로그래밍 등 어떤 것이든 다트를 사용해 만들 수 있다.

웹 앱이 아닌 네이티브 코드로 안드로이드와 iOS 용 앱을 동시에 개발할 수 있다. java와 유사한 문법으로 몇가지 특징만 숙지하면 쉽게 개발할 수 있다.

2. 특징

2.1. 모든 것들이 전부 Object로 취급된다.

  • Variable 안에 넣을 수 있는 것은 전부 Object
  • Function, number, null 전부 Object로 취급
  • 변수에 넣을 수 있는 모든 것은 객체이며, 모든 객체는 클래스의 인스턴스로 취급

2.2. List , List 같은 제너릭 type을 지원

  • ex) List list = [0,1,”2”,3,false,true] 같은 형식이 가능 (전부 object로 취급되기 때문)

2.3. Typed 언어. But, 자유도 부여

  • 기본적으로 typed 언어지만, Var, Dynamic으로 선언하면 동적 type으로 사용 가능
  • Var : type을 지정하지 않아도 dart에서 알아서 variable의 type을 추측함
    • 다른 타입을 재대입할 수 없음
  • Dynamic : 모든 dart 객체의 기본 Object, 명시적으로 사용, 서로 다른 타입을 지정할 수 있음
    • 다른 타입을 재대입할 수 있음

2.4. public, private, protected의 정의가 없으며, _function()으로 정의

  • private 역할을 하는 _은 class 안에서만 접근 가능한 것이 아닌, dart page 단위로 private 정의

Reference