1. Dart 언어 소개
Dart는 Google에서 개발한 현대적인 프로그래밍 언어로, 주로 모바일 애플리케이션 및 웹 애플리케이션 개발에 사용됩니다. 특히 Flutter 프레임워크와 함께 사용되어 크로스 플랫폼 애플리케이션 개발의 인기 언어로 자리 잡고 있습니다.
Dart의 문법은 Java와 C#에서 영향을 받았으며, 이를 통해 개발자들이 쉽게 접근할 수 있는 친숙한 언어입니다. Dart는 객체 지향 프로그래밍(OOP) paradigma를 따르며, 명확하고 간결한 코드 작성을 지원합니다.
2. Dart의 기본 문법
Dart 프로그램은 기본적으로 주어진 함수를 통해 실행됩니다. 가장 단순한 형태의 Dart 프로그램은 다음과 같습니다:
void main() {
print('Hello, Dart!');
}
위의 코드에서 main()
함수는 Dart 프로그램의 시작점입니다. print()
함수는 화면에 문자열을 출력하는 역할을 합니다.
2.1 주석
프로그램 내에서 설명을 추가하고자 할 때 주석을 사용할 수 있습니다. Dart에서는 한 줄 주석과 여러 줄 주석 둘 다 사용할 수 있습니다.
// 한 줄 주석입니다.
/*
여러 줄 주석입니다.
여러 줄에 걸쳐 설명을 적을 수 있습니다.
*/
3. 변수
Dart에서 변수를 선언할 때는 var
, final
, const
와 같은 키워드를 사용합니다. 이러한 키워드는 변수의 유형과 내용을 결정하는 데 중요한 역할을 합니다.
3.1 var 키워드
var
키워드는 Dart에서 변수 선언 시 사용됩니다. 변수의 타입을 명시하지 않고, 자동으로 타입을 추론합니다. 다음은 예시입니다:
void main() {
var name = 'Dart';
var year = 2023;
print('이 언어의 이름은 $name이며, 현재 연도는 $year입니다.');
}
위 예제에서 변수 name
은 문자열, year
는 정수형으로 자동으로 인식됩니다.
3.2 final 키워드
final
키워드는 변수가 한 번만 할당될 수 있음을 명시합니다. 즉, final 키워드로 선언된 변수는 값이 변경될 수 없습니다.
void main() {
final pi = 3.14;
print('원의 면적을 구하려면 반지름에 $\{pi\}을 곱해야 합니다.');
// pi = 3.14159; // 오류 발생 - final 변수는 재할당할 수 없습니다.
}
3.3 const 키워드
const
는 컴파일 타임에 값이 결정되는 변수를 만듭니다. 이는 Dart의 상수(constant)로 사용되며, 런타임 시점에 변경될 수 없습니다.
void main() {
const e = 2.71828;
print('자연상수 e의 값은 $e입니다.');
}
4. 데이터 타입
Dart는 강타입 언어로, 명확한 데이터 타이핑을 요구합니다. Dart의 기본 데이터 타입은 다음과 같습니다:
- int: 정수형 데이터.
- double: 실수형 데이터.
- String: 문자열형 데이터.
- bool: 불리언형 데이터 (true 또는 false).
- List: 순서가 있는 컬렉션.
- Map: 키-값 쌍으로 이루어진 컬렉션.
4.1 int
int
는 정수형 데이터를 나타냅니다. Dart에서 int 타입 변수 선언과 사용 예는 다음과 같습니다:
void main() {
int age = 25;
print('내 나이는 $age세입니다.');
}
4.2 double
실수형 데이터는 double
타입으로 선언합니다. 다음은 double 변수를 사용하는 예입니다:
void main() {
double height = 1.75;
print('내 키는 $height 미터입니다.');
}
4.3 String
String
타입은 문자열 데이터를 다루는 데 사용됩니다. 문자열을 선언하고 사용하는 방법은 다음과 같습니다:
void main() {
String greeting = '안녕하세요, Dart!';
print(greeting);
}
4.4 bool
bool
타입은 논리 값을 표현합니다. 다음은 부울 변수를 사용하는 예시입니다:
void main() {
bool isDartFun = true;
print('Dart는 재미있습니까? $isDartFun');
}
4.5 List
List
는 여러 값을 순서대로 저장할 수 있는 컬렉션입니다. 아래는 List를 사용하는 예입니다:
void main() {
List fruits = ['사과', '바나나', '체리'];
print('내가 좋아하는 과일은 ${fruits[0]}이고, ${fruits[1]}, ${fruits[2]}입니다.');
}
4.6 Map
Map
은 키-값 쌍으로 데이터를 저장합니다. 다음은 Map을 사용하는 예입니다:
void main() {
Map ages = {
'Alice': 30,
'Bob': 25,
};
print('Alice의 나이는 ${ages['Alice']}세입니다.');
}
5. 결론
Dart는 현대적인 웹과 모바일 애플리케이션 개발에 적합한 언어로, 간결한 문법과 강력한 데이터 타입 시스템을 제공합니다. 이 글에서는 Dart의 기본 문법, 변수 선언 및 데이터 타입에 대해 설명했습니다. 앞으로 더 나아가 Dart의 고급 기능들과 Flutter 개발 환경에서의 활용에 대한 내용을 다룰 예정입니다.