Dart 공식문서 Metadata 정리

2025년 02월 08일

Flutter

# Flutter# Dart

📕 목차

이 포스팅은 다트 공식문서 language - Metadata를 읽고 정리한 내용입니다.

Metadata

Use metadata to give additional information about your code.

메타데이터는 코드에 추가적인 정보를 주기 위해 사용한다.

A metadata annotation begins with the character @, followed by either a reference to a compile-time constant (such as deprecated) or a call to a constant constructor.

메타데이터 어노테이션은 @ 문자로 시작하며, 컴파일 타임 상수에 대한 참조 또는 상수 생성자 호출이 뒤따른다.

Four annotations are available to all Dart code: @Deprecated, @deprecated, @override, and @pragma.

네 가지 어노테이션을 Dart 코드에서 사용할 수 있다.

@Deprecated

class Television {
  ('Use turnOn instead')
  void activate() {
    turnOn();
  }

  // Turn the TV's power on.
  void turnOn() { ... }
}

@deprecated

  • 메시지를 명시하고싶지 않다면, @deprecated를 사용한다.
  • 공식문서에는 항상 @Deprecated와 메시지를 명시하는 걸 추천한다.
class Television {
  
  void activate() {
    turnOn();
  }

  // Turn the TV's power on.
  void turnOn() { ... }
}

@pragma

A hint to tools. -> 도구에 대한 힌트

AOT와 같이 precompiled 코드를 생성하는 도구 등에서 최적화할때 특정 코드를 인라인화 못하게한다던지,

위 링크에서 몇 가지 예시를 볼 수 있다.

메타데이터 어노테이션(metadata annotation) 정의해서 사용하기

직접 메타데이터 어노테이션을 정의해서 사용할 수 있다. 공식문서에는 @Todo 어노테이션을 정의한다. (두 개의 매개변수를 받는다.)

  1. 메타데이터 어노테이션으로 사용할 클래스 정의하기
class Todo {
  final String who;
  final String what;

  const Todo(this.who, this.what);
}
  1. 메타데이터 어노테이션 사용하기
('Dash', 'Implement this function')
void doSomething() {
  print('Do something');
}
profile

박민기

단순하게 살아라. 현대인은 쓸데없는 절차와 일 때문에 얼마나 복잡한 삶을 살아가는가? - 이드리스 샤흐

© 2025, 미나리와 함께 만들었음