Dart-02: Language Tour
Dart-02-01   Important concepts
Dart-02-02   Keywords
Dart-02-03   Variables
Dart-02-04   Built-in types
Dart-02-05   Functions
Dart-02-06   Operators
Dart-02-07   Control flow statements
Dart-02-08   Exceptions
Dart-02-09   Classes
Dart-02-10   Generics
Dart-02-11   Libraries and visibility
Dart-02-12   Asynchrony support
Dart-02-13   Generators
Dart-02-14   Callable classes
Dart-02-15   Isolates
Dart-02-16   Typedefs
Dart-02-17   Metadata
Dart-02-18   Comments

Metadata

Dart - Metadata

metadata를 사용하여 code에 대한 추가 정보를 제공한다. metadata annotation은 문자 @로 시작하고, 그 뒤에 compile-time constant(such as deprecated)에 대한 참조 또는 constant constructor에 대한 호출이 온다.

모든 Dart code에는 세 가지의 주석을 사용할 수 있다: @Deprecated, @deprecated, @override. 다음은 @Deprecated annotation을 사용하는 예이다:

class Television {
  /// Use [turnOn] to turn the power on instead.
  @Deprecated('Use turnOn instead')
  void activate() {
    turnOn();
  }

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

고유한 metadata annotation을 정의할 수 있다. 다음은 두 개의 argument를 사용하는 @Todo annotation을 정의하는 예이다:

library todo;

class Todo {
  final String who;
  final String what;

  const Todo(this.who, this.what);
}

다음은 @Todo annotation을 사용하는 예이다:

import 'todo.dart';

@Todo('seth', 'make this do something')
void doSomething() {
  print('do something');
}

metadata는 library, class, typedef, type parameter, constructor, factory, function, field, parameter, 변수 선언, import 또는 export 지시문 앞에 나타날 수 있다. reflection을 사용하여 runtime에 metadata를 검색할 수 있다.

태그:

카테고리:

업데이트:

댓글남기기