Los metadatos son básicamente una pieza de datos que nos informa sobre la pieza de datos subyacente. Son datos sobre datos. En el caso de la programación de Dart, los metadatos se pueden usar para contarnos más sobre el código. Cada vez que interactuamos con la nueva pieza de código, podemos inferir información relacionada con la ayuda de los metadatos.
En dart, una anotación de metadatos comienza con el símbolo @, seguida de una llamada a un constructor constante o una constante de tiempo de compilación, como override. @override y @deprecated están disponibles para todos los códigos dart.
Veremos un ejemplo de la anotación @override para entenderlo claramente:
Dart
class geek1 { void code() { print("I am at level 1"); } } class geek2 extends geek1 { @override void code() { print("I am at level 2"); } } void main() { geek2 m = new geek2(); m.code(); }
Producción:
I am at level 2
Explicación:
Del código anterior, podemos inferir que la clase secundaria anula el método de la clase principal. La anotación @override hace que esta información sea mucho más clara. Además de las anotaciones disponibles en dart, podemos crear nuestra propia anotación de metadatos.
Ejemplo:
Dart
class Implement { final String what; final String by; const Implement(this.what, this.by); } @Implement('the following function', 'Geek1') void geekFunc() { print('Implement me'); } void main() { geekFunc(); }
Producción:
Implement me
Aquí hemos definido la anotación @Implement usando un constructor constante. Tiene dos argumentos a saber el para qué se va a implementar y el otro es por el cual se indica por quién se va a implementar.
Los metadatos se pueden usar antes de una biblioteca, parámetro de tipo, función, constructor, clase, etc., y antes de una directiva de importación o exportación. Podemos obtener los metadatos en tiempo de ejecución con la ayuda de la reflexión.
Publicación traducida automáticamente
Artículo escrito por muazzamfaraaz y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA