IT기술/다트 (dart)

[Dart 완전 정복] 다트 연산자와 제어문 마스터하기

후스파 2025. 3. 21. 08:25
반응형
다트 Dart

Dart 언어는 다양한 연산자와 제어문을 제공하여 효율적이고 유연한 프로그래밍을 가능하게 합니다. 이 글에서는 Dart의 주요 연산자와 제어문을 상세히 살펴보고, 실제 사용 예제를 통해 이해를 돕겠습니다.

 

연산자

1. 기본 수치 연산자

Dart에서는 다음과 같은 기본 수치 연산자를 제공합니다:

void main() {
  int a = 10;
  int b = 3;

  print(a + b);  // 덧셈: 13
  print(a - b);  // 뺄셈: 7
  print(a * b);  // 곱셈: 30
  print(a / b);  // 나눗셈: 3.333...
  print(a % b);  // 나머지: 1
  print(a++);    // 후위 증가: 10 (a는 11이 됨)
  print(++b);    // 전위 증가: 4
}
 
 

2. null 관련 연산자

Dart의 null 안정성은 중요한 특징 중 하나입니다:

void main() {
  String? name;  // null 허용 변수
  name ??= "Guest";  // null일 경우에만 값 할당
  print(name);  // 출력: Guest

  int? age;
  print(age ?? 18);  // null 병합 연산자, 출력: 18
}
 
 

3. 비교 및 논리 연산자

값 비교와 논리 연산을 위한 다양한 연산자를 제공합니다:

void main() {
  int x = 5, y = 10;
  print(x < y);  // true
  print(x == 5);  // true
  print(x != y);  // true

  bool a = true, b = false;
  print(a && b);  // false (AND)
  print(a || b);  // true (OR)
  print(!a);  // false (NOT)
}
 
 

제어문

 

1. 조건문

if-else 문:

void main() {
  int score = 85;
  if (score >= 90) {
    print("A");
  } else if (score >= 80) {
    print("B");
  } else {
    print("C");
  }
}
 
 

switch 문:

void main() {
  String fruit = "apple";
  switch (fruit) {
    case "apple":
      print("사과입니다.");
      break;
    case "banana":
      print("바나나입니다.");
      break;
    default:
      print("알 수 없는 과일입니다.");
  }
}
 
 

2. 반복문

for 문:

void main() {
  for (int i = 0; i < 5; i++) {
    print(i);  // 0부터 4까지 출력
  }

  // 컬렉션을 이용한 for-in 루프
  var fruits = ['apple', 'banana', 'orange'];
  for (var fruit in fruits) {
    print(fruit);
  }
}
 
 

while 문과 do-while 문:

void main() {
  int count = 0;
  while (count < 5) {
    print(count++);
  }

  do {
    print("이 문장은 최소 한 번은 실행됩니다.");
  } while (false);
}
 
 

고급 제어 기법

  1. break와 continue:
    • break는 루프를 즉시 종료합니다.
    • continue는 현재 반복을 건너뛰고 다음 반복으로 진행합니다.
  2. assert:
    • 디버그 모드에서 조건을 확인하는 데 사용됩니다.
assert(condition, "조건이 false일 때 출력될 메시지");

 

  1. try-catch:
    • 예외 처리에 사용됩니다.
try {
  // 예외가 발생할 수 있는 코드
} catch (e) {
  print("예외 발생: $e");
} finally {
  // 항상 실행되는 코드
}

 

결론

Dart의 연산자와 제어문을 효과적으로 활용하면, 복잡한 로직을 간결하고 명확하게 표현할 수 있습니다. 이는 Flutter 앱 개발에서 특히 중요하며, 코드의 가독성과 유지보수성을 크게 향상합니다.

 

실제 프로젝트에서 이러한 개념들을 적용할 때 고려해야 할 추가적인 사항들:

  1. 성능 최적화: 반복문과 조건문의 효율적인 사용으로 앱의 성능을 개선할 수 있습니다.
  2. 코드 가독성: 복잡한 조건문은 함수로 분리하여 코드의 가독성을 높일 수 있습니다.
  3. null 안정성: null 관련 연산자를 적절히 사용하여 런타임 에러를 방지할 수 있습니다.
  4. 비동기 프로그래밍: async/await와 함께 제어문을 사용하여 비동기 로직을 효과적으로 관리할 수 있습니다.

 

Dart의 연산자와 제어문을 마스터하면, 더욱 강력하고 유연한 Flutter 애플리케이션을 개발할 수 있습니다.

 

 

 

[Dart] 다트 연산자와 제어문

Dart 언어는 다양한 연산자와 제어문을 제공하여 프로그래밍을 유연하고 효율적으로 작성할 수 있게 해줍...

blog.naver.com

 

 

[Dart 완전 정복] 다트 컬렉션(Collection) 마스터하기: List, Map, Set, Enum 총정리

Dart 언어는 데이터를 효율적으로 관리하기 위한 다양한 컬렉션 타입을 제공합니다. 이 글에서는 Dart의 주요 컬렉션인 List, Map, Set, 그리고 Enum에 대해 상세히 알아보고, 실제 사용 예제를 통해 각

hoosfa.tistory.com

 

반응형