Dart basic grammar

Dart의 기본 문법에 대해 간단히 설명드리겠습니다. Dart는 JavaScript와 유사한 문법을 가지고 있으며, 강력한 정적 타입 시스템과 객체 지향 프로그래밍을 지원합니다.

1. 변수 선언

Dart에서 변수를 선언할 때는 var, final, const, 또는 타입명을 사용합니다.

  • var는 변수의 타입을 추론하여 결정합니다.
  var name = 'John';
  var age = 30;
  • final은 한 번 할당되면 변경할 수 없는 변수입니다.
  final cityName = 'New York';
  • const는 컴파일 시 상수로 평가되는 변수입니다.
  const PI = 3.14;

2. 데이터 타입

Dart는 기본적인 데이터 타입들을 제공합니다.

  • int, double: 정수 및 부동 소수점 숫자를 표현합니다.
  • String: 문자열을 표현합니다.
  • bool: 불리언 값을 표현합니다.
  • List, Set, Map: 리스트, 세트, 맵을 표현하는 컬렉션 타입입니다.
  • dynamic: 동적 타입을 갖는 변수를 선언할 수 있습니다.

3. 연산자

Dart에서는 다양한 연산자를 사용할 수 있습니다.

  • 산술 연산자: +, -, *, /, %
  • 비교 연산자: ==, !=, >, <, >=, <=
  • 논리 연산자: &&, ||, !
  • 할당 연산자: =, +=, -=, *=, /=

4. 제어 구조

Dart는 조건문과 반복문을 사용하여 프로그램의 흐름을 제어합니다.

  • 조건문: if, else if, else
  if (condition) {
    // 코드 블록
  } else if (anotherCondition) {
    // 코드 블록
  } else {
    // 코드 블록
  }
  • 반복문: for, while, do-while
  for (var i = 0; i < 5; i++) {
    // 코드 블록
  }

  while (condition) {
    // 코드 블록
  }

  do {
    // 코드 블록
  } while (condition);

5. 함수

Dart에서 함수는 void 또는 반환 타입을 가질 수 있습니다.

// 반환 타입이 명시된 함수
int add(int a, int b) {
  return a + b;
}

// 반환 타입이 void인 함수
void printMessage(String message) {
  print(message);
}

6. 클래스와 객체 지향 프로그래밍

Dart는 클래스를 사용하여 객체 지향 프로그래밍을 지원합니다.

class Person {
  String name;
  int age;

  // 생성자
  Person(this.name, this.age);

  // 메서드
  void sayHello() {
    print('Hello, my name is $name and I am $age years old.');
  }
}

void main() {
  var person = Person('Alice', 30);
  person.sayHello();
}

7. 예외 처리

Dart에서 예외 처리는 try, catch, finally를 사용하여 수행됩니다.

try {
  // 예외가 발생할 수 있는 코드
  var result = 10 ~/ 0; // Division by zero
} catch (e) {
  // 예외 처리 코드
  print('Exception: $e');
} finally {
  // 예외 발생 여부와 관계없이 항상 실행되는 코드
  print('Complete');
}

이러한 기본적인 문법 요소를 학습한 후에는 Dart의 더 고급 기능들과 함께 실제 애플리케이션 개발에 적용해 보는 것이 중요합니다. Dart 공식 문서와 다양한 예제를 통해 실습하면서 실력을 향상시킬 수 있습니다.

Leave a Reply

Your email address will not be published. Required fields are marked *