[Dart] 1장 Dart란?

1.Dart란?

Dart란 구글에서 개발한 객체 지향 프로그래밍 언어로, 주로 웹, 서버, 모바일 애플리케이션 개발에 사용됩니다. Dart는 특시 Flutter 프레임워크와 함께 사용되며, 크로스 플랫폼 애플리케이션 개발에 최적화되어 있습니다.


2. Dart의 특징 

  • 객체 지향 언어: Dart는 클래스 기반의 객체 지향 언어로, 상속과 다형성을 지원
  • 정적 타입: Dart는 정적 타입 언어로, 컴파일 시 타입 검사를 수행해 오류를 사전에 발견
  • 비동기 지원: Flutter와 Stream을 통한 비동기 프로그래밍을 쉽게 처리
  • JIT 및 AOT 컴파일: 개발 중에는 JIT(Just-In-Time) 컴파일을 사용하고, 배포 시 AOT(Ahead-Of-Time) 컴파일을 통해 성능을 최적화
  • 다양한 플랫폼 지원: 웹, 모바일, 데스크탑 애플리케이션을 개발 

3. Dart의 장단점

  • 장점
    • 빠른 개발 속도: Hot Reload 기능을 통한 코드 변경 사항을 즉시 반영할 수 있어 개발 속도가 빨라짐
    • 강력한 라이브러리 생태계: 다양한 내장 라이브러리와 패키지를 제공해 개발자가 쉽고 빠르게 기능을 구현
    • 크로스 플랫폼: Dart를 사용하면 단일 코드베이스로 다양한 플랫폼에 애플리케이션을 배포
    • 우수한 성능: AOT 컴파일을 통한 높은 성능을 제공하며, 특히 Flutter와 함께 사용할 때 성능이 더욱 두드러짐
  • 단점
    • 상대적으로 적은 커뮤니티: Dart는 다른 언어에 비해 커뮤니티가 작은 편이며, 자료나 리소스가 부족할 수 있음
    • 학습 곡선: 새로운 언어이기에 기존 언어에 익숙한 개발자에게는 학습 곡선이 존재할 수 있음

4.Dart vs Flutter

  • Dart: 프로그래밍 언어로, 일반적으로 애플리케이션 로직을 작성하는 데 사용하며, 웹, 서버, 모바일 애플리케이션 등을 위한 언어 
  • Flutter: Dart로 작성된 UI 프레임워크로, 모바일 및 웹 애플리케이션의 사용자 인터페이스를 구축하는 데 사용, Flutter는 Dart의 기능을 활용하여 크로스 플랫폼 애플리케이션을 쉽게 개발할 수 있도록 도움

5. Dart 세팅법

Dart를 개발 환경에 설정하는 방법은 다음과 같습니다. 먼저 Dart SDK를 설치해야합니다.

  • Dart SDK 설치:
  • 환경 변수 설정(Windows):
    • PATH 환경 변수에 Dart SDK의 bin 디렉토리를 추가합니다.
  • 설치 확인:
    • 터미널에 다음 명령어를 입력해 Dart가 설치되었는지 확인합니다.
dart --version
  • IDE 설치:
    • Dart 개발을 위한 Visual Studio Code, IntellJ IDEA 또는 Android Studio와 같은 IDE를 사용할 수 있습니다. 각 IDE에 Dart 플러그인을 설치합니다.
  • Flutter 설치 (선택 사항):
  • VSCode 실행:
    • Visual Studio Code를 실행하고 왼쪽 사이드바 Extensions 아이콘을 클릭하고 Dart를 설치

Dart를 설치했으면 다음 명령어로 새 Dart 프로젝트를 생성합니다.

dart create my_project

 

프로젝트를 생성 후 폴더로 이동해서 lib/main.dart 파일을 열고 기본 코드를 작성합니다.

void main() {
  print("Hello, Dart!");
}
  • 터미널을 열고 다음 명령어를 입력해 코드를 실행합니다.
dart run

 

 

GitHub - Koras02/dart-bloging

Contribute to Koras02/dart-bloging development by creating an account on GitHub.

github.com

 

LIST

'Mobile > Dart' 카테고리의 다른 글

[Dart] 6장 함수 정의 및 호출  (0) 2025.03.18
[Dart] 5장 반복문  (0) 2025.03.10
[Dart] 4장 조건문  (0) 2025.03.07
[Dart] 3장 연산자  (0) 2025.03.01
[Dart] 2장 변수 및 데이터 타입  (0) 2025.02.28