출시·고도화 중
Dart 안내서 · 1/6
Dart는 Google이 만든 클라이언트 중심의 범용 언어입니다. 명령줄 도구, 서버, 웹 앱을 만들 수 있고, 무엇보다 Flutter 앱의 언어로 널리 쓰입니다. 이 장에서는 Dart SDK를 설치하고, 첫 프로젝트를 만들어 실행하고, 브라우저만으로 코드를 시험하는 DartPad와 편집기 설정까지 차례로 살펴봅니다.
Dart SDK에는 컴파일러, 실행기, 패키지 관리자(pub), 분석기, 포매터, 테스트 실행기가 모두 dart라는 하나의 명령으로 들어 있습니다. 설치 방법은 크게 두 가지입니다.
운영체제별로는 패키지 관리자를 쓰는 방법이 가장 간단합니다. macOS는 Homebrew, Windows는 Chocolatey, Linux(Debian · Ubuntu)는 Google이 제공하는 apt 저장소를 씁니다. 압축 파일을 직접 받아 풀고 bin 디렉터리를 PATH에 더해도 됩니다.
# macOS (Homebrew)
brew tap dart-lang/dart
brew install dart
# Windows (Chocolatey, 관리자 권한 터미널)
choco install dart-sdk
# 설치 확인
dart --versiondart --version이 SDK 버전을 출력하면 설치가 끝난 것입니다. Flutter로 설치했다면 flutter/bin이 PATH에 들어 있는 한 dart 명령도 그대로 쓸 수 있습니다. 두 가지를 함께 설치했다면 which dart(Windows는 where dart)로 어느 쪽 dart가 먼저 잡히는지 확인해 두면 버전 혼동을 피할 수 있습니다.
dart create는 템플릿으로 새 프로젝트를 만듭니다. 기본 템플릿은 명령줄 앱(console)이고, -t 옵션으로 package(재사용 라이브러리), server-shelf(간단한 HTTP 서버), cli(인자 처리가 들어간 명령줄 도구), web 같은 템플릿을 고를 수 있습니다.
dart create hello_dart
cd hello_dart
dart run만들어진 프로젝트는 다음과 같은 구조입니다.
| 경로 | 역할 |
|---|---|
bin/hello_dart.dart | 실행 진입점, main 함수가 있습니다 |
lib/hello_dart.dart | 프로젝트의 라이브러리 코드 |
test/hello_dart_test.dart | package:test로 쓴 테스트 |
pubspec.yaml | 패키지 이름, SDK 범위, 의존성 |
analysis_options.yaml | 정적 분석 규칙(린트) 설정 |
bin/hello_dart.dart를 열어 첫 프로그램을 직접 써 봅니다. Dart 프로그램은 최상위 함수 main에서 시작합니다. 명령줄 인자는 List<String>으로 받을 수 있습니다.
void main(List<String> arguments) {
final name = arguments.isEmpty ? 'Dart' : arguments.first;
print('안녕하세요, $name!');
}dart run은 프로젝트의 bin 아래 진입점을 찾아 실행하고, 인자를 넘길 수도 있습니다. 파일 하나만 실행하려면 경로를 직접 줍니다.
dart run # bin/<패키지이름>.dart 실행
dart run bin/hello_dart.dart 개발자
dart compile exe bin/hello_dart.dart -o hello
./hellodart run은 개발 중에 JIT(실행 시점 컴파일)로 빠르게 돌려 보는 방법이고, dart compile exe는 AOT(미리 컴파일)로 독립 실행 파일을 만듭니다. 만들어진 실행 파일은 Dart SDK가 없는 같은 종류의 운영체제에서도 실행됩니다. 이 밖에 dart compile js로 JavaScript를, dart compile wasm으로 WebAssembly를 만들 수 있습니다.
| 명령 | 하는 일 |
|---|---|
dart analyze | 타입 오류와 린트 경고를 찾습니다 |
dart format . | 공식 스타일로 코드를 정리합니다 |
dart fix --apply | 분석기가 제안하는 자동 수정을 적용합니다 |
dart test | test 디렉터리의 테스트를 실행합니다 |
dart pub get | pubspec.yaml의 의존성을 내려받습니다 |
dart doc | API 문서를 생성합니다 |
dart format과 dart analyze는 커밋 전에 습관처럼 돌리는 것이 좋습니다. Dart 커뮤니티는 공식 포매터의 결과를 그대로 쓰는 것을 원칙으로 하므로, 들여쓰기나 줄바꿈 논쟁이 거의 없습니다.
설치 없이 Dart를 맛보고 싶다면 DartPad를 엽니다. 브라우저에서 코드를 쓰고 바로 실행할 수 있고, 핵심 라이브러리와 일부 인기 패키지를 쓸 수 있으며 Flutter 화면도 그려 볼 수 있습니다. 짧은 예제를 확인하거나 문법을 실험할 때, 다른 사람에게 재현 코드를 공유할 때 편리합니다. 다만 파일 시스템이나 프로세스처럼 dart:io에 기대는 코드는 브라우저에서 돌릴 수 없습니다.
Dart 팀은 VS Code와 IntelliJ 계열(IntelliJ IDEA, Android Studio)용 플러그인을 공식으로 관리합니다.
두 편집기 모두 Dart 분석 서버를 쓰므로 자동 완성, 오류 표시, 빠른 수정, 이름 바꾸기, 저장할 때 포맷 같은 기능을 똑같이 제공합니다. VS Code에서는 설정에 "editor.formatOnSave": true를 켜 두면 저장할 때마다 dart format과 같은 결과가 적용됩니다. 정적 분석 규칙은 프로젝트의 analysis_options.yaml에서 조정합니다.
include: package:lints/recommended.yaml
linter:
rules:
prefer_single_quotes: true
avoid_print: falsedart create가 만든 프로젝트는 이미 package:lints의 권장 규칙을 포함하고 있습니다. 팀 규칙에 맞게 규칙을 더하거나 끄면 됩니다.
Dart SDK는 독립 설치나 Flutter 설치로 얻을 수 있고, dart 명령 하나로 프로젝트 생성(dart create), 실행(dart run), 컴파일(dart compile), 분석과 포맷, 테스트까지 처리합니다. 설치 전이라면 DartPad로 바로 시험해 보고, 실제 개발은 VS Code나 IntelliJ의 Dart 플러그인과 함께 하면 됩니다. 다음 장에서는 변수, 함수, 제어 흐름 같은 기본 문법을 살펴봅니다.
댓글 0개
로그인 · 로그인하면 댓글을 남길 수 있습니다.
첫 댓글을 남겨 보세요.