개발

Dart 기초 문법 정리

오늘도멋진하루 2025. 4. 18. 00:01

 

 

 

Dart 기초 문법 정리

 

Dart는 Google에서 개발한 프로그래밍 언어로, 주로 Flutter 프레임워크와 함께 사용되어 모바일 앱, 웹앱, 데스크톱 애플리케이션을 개발하는 데 널리 쓰입니다. 객체지향적이고 간결하며, 문법이 JavaScript, Java와 비슷해서 다른 언어를 알고 있다면 비교적 쉽게 배울 수 있습니다. 기본 문법을 간단히 정리해 볼게요.


목차


Dart의 주요 특징

  • Object-Oriented: 모든 것이 객체로 취급됩니다.
  • Strongly Typed: 정적 타입 검사 지원.
  • Null Safety: Null 안전성을 제공하여 NullPointerException을 방지.
  • 간결함: 문법이 간단하고, 코드 작성이 쉬움.

 

Hello, World!

void main() {
  print('Hello, World!');
}

설명:

  • void: 반환값이 없는 함수.
  • main(): 프로그램의 시작점.
  • print(): 콘솔에 출력하는 함수.

 

변수와 데이터 타입

Dart는 var타입 지정 방식 두 가지로 변수를 선언할 수 있습니다.

// 타입 명시적으로 지정
int age = 25;
double price = 19.99;
String name = 'Dart';
bool isAvailable = true;

// 타입 추론 사용
var city = 'Seoul'; // Dart가 자동으로 String 타입으로 추론
var temperature = 15.5; // double로 추론

주요 데이터 타입:

  • int: 정수
  • double: 실수
  • String: 문자열
  • bool: 논리값 (true/false)
  • List: 배열
  • Map: 키-값 쌍
  • dynamic: 어떤 타입이든 가질 수 있음

 

 

 

 

조건문과 반복문

Dart의 조건문과 반복문은 다른 프로그래밍 언어와 비슷합니다.

조건문

void main() {
  int number = 10;

  if (number > 0) {
    print('양수입니다.');
  } else if (number < 0) {
    print('음수입니다.');
  } else {
    print('0입니다.');
  }
}

반복문

void main() {
  // for 반복문
  for (int i = 0; i < 5; i++) {
    print('반복: $i');
  }

  // while 반복문
  int count = 0;
  while (count < 3) {
    print('카운트: $count');
    count++;
  }

  // do-while 반복문
  int num = 0;
  do {
    print('숫자: $num');
    num++;
  } while (num < 2);
}

 

함수(Function)

Dart에서 함수는 void(반환값 없음) 또는 특정 반환 타입을 가지며 정의됩니다.

// 반환값 없는 함수
void sayHello() {
  print('Hello!');
}

// 매개변수와 반환값 있는 함수
int add(int a, int b) {
  return a + b;
}

void main() {
  sayHello();
  int result = add(5, 7);
  print('합계: $result');
}

 

 

 

 

클래스와 객체

Dart는 객체지향 언어이므로 클래스를 사용해 객체를 정의하고 활용할 수 있습니다.

class Person {
  String name;
  int age;

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

  // 메서드
  void introduce() {
    print('안녕하세요! 저는 $name이고, 나이는 $age살입니다.');
  }
}

void main() {
  var person = Person('철수', 25);
  person.introduce(); // 출력: 안녕하세요! 저는 철수이고, 나이는 25살입니다.
}

 

null safety

Dart에서는 변수의 null 값을 허용하지 않으려면 ?를 사용합니다.

String? nullableName; // null을 허용
nullableName = null;

String nonNullableName = 'Dart'; // null을 허용하지 않음
// nonNullableName = null; // 에러 발생

 

위의 내용을 시작점으로, 실제 코드를 작성해 보며 익숙해지는게 중요합니다.

 

 

Dart 심화 문법

Dart 심화 과정으로 가봅시다! Dart를 더 깊게 이해하고 활용할 수 있도록 객체지향 프로그래밍(OOP), 고급 컬렉션, 비동기 프로그래밍, 제네릭, 그리고 메타프로그래밍(annotations)을 다뤄보겠습니다.

life.dewy-morning.com