본문 바로가기
프로그래밍/Flutter

dart(다트) 의 프로그래밍 개념

by Mr-후 2022. 9. 5.
반응형

오늘 일과를 대략 마무리하고 남은 시간에 플루터 구현 언어 dart에 대한 중요한 개념을 정리해본다. 

 

  • 다트는 객체지향 언어이며 단일 상속(single inheritance)을 지원한다. 
  • 다트에서는 모든 것이 객체이며 모든 객체는 클래스의 인스턴스다. 
    모든 객체는 Object 클래스를 상속 받는다. 심지어 숫자도 기본형이 아니라 객체다.  <- Objective-C같은 느낌은 뭐지? ㅎㅎ 
  • 다트는 형식을 갖는다(typed). 문자열을 반환한다고 선언한 함수에서 숫자를 반환할 수 없다.
  • 다트는 최상위 수준 함수와 변수를 지원하며 이를 라이브러리 멤버(library member)라 부른다. 
  • 다트는 어휘적(exically)으로 한정된다. 

 

다트는 형식을 갖는다고 했는데 여기에서 형식을 갖는 프로그래밍 언어에 대해 정리된게 있어 옮겨본다. 

/*--------------| 형식을 갖는 프로그래밍 언어 |--------------

변수의 형식을 컴파일 타임에서 알 수 있거나 추론할 수 있다면 형식을 갖는 언어다.
개발자의 입장에서 코드의 변수에 명시적으로 형식을 할당할 수 있다면(또는 반드시 할당해야 한다면) 이는 형시을 갖는 언어다. 

런타임에서 형식을 추론한다면 이는 동적(dynamic)언어다. 자바스크립트, 파이썬, 루비는 동적 언어다.
(하지만 내부적으로 모든 언어는 어는 정도 형식을 갖는다.) 

형식을 사용하는 코드는 더 안전하다. 숫자를 기대하는 함수에 문자열을 전달하면 컴파일러가 오류를 발생시킨다.
다트는 컴파일 타임에서 형식을 확인한다. 덕분에 출시한 제품에서 함수가 다양한 데이터 형식을 어떻게 처리해야 할지 몰라
충돌되는 일은 더 이상 발생하지 않는다. 

형식 시스템의 가장 큰 장점은 버그를 많이 줄일 수 있다. 

*/
반응형