Articulo de referencia

Alias ​​de tipo

El aliasing de tipos es una característica de algunos lenguajes de programación que permite crear una referencia a un tipo usando otro nombre. No crea un nuevo tipo, por lo que ...

El aliasing de tipos es una característica de algunos lenguajes de programación que permite crear una referencia a un tipo usando otro nombre. No crea un nuevo tipo, por lo que no aumenta la seguridad de tipos . Se puede usar para acortar un nombre largo. Los lenguajes que permiten el aliasing de tipos incluyen: C++ , C# , Crystal , D , Dart , Elixir , Elm , F# , Go , Hack , Haskell , Julia , Kotlin , Nim , OCaml , Python , Rust , Scala , Swift y TypeScript .

Ejemplo

C++

C++ incluye funciones de alias de tipos con la usingpalabra clave.

usando Distancia = int ;

DO#

C# versión 12 y superiores admiten el alias de tipos con la palabra clave. Las versiones anteriores restringen su uso al ámbitousing local del archivo o a contextos de importación específicos. [ 1 ]

usando Distancia = int ;

Cristal

Crystal utiliza alias de tipo mediante la aliaspalabra clave. [ 2 ]

alias Distancia = Int32 ;

D

D incluye alias de tipo usando la aliaspalabra clave. [ 3 ]

alias Distancia = int ;

Dardo

Dart incluye funciones de alias de tipo mediante la typedefpalabra clave. [ 4 ]

typedef Distancia = int ;

Elixir

Elixir incluye alias de tipo usando @type. [ 5 ]

@type Distancia :: entero

Olmo

Elm incluye funciones de alias de tipo usando type alias.

tipo alias Distancia = Int

F#

La función F3 permite el uso de alias de tipo mediante la typepalabra clave.

tipo Distancia = int

Ir

Go incluye funciones de alias de tipo usando la typepalabra clave y =.

tipo Distancia = int

Cortar

Hack presenta alias de tipo usando la newtypepalabra clave. [ 6 ] Funcionalmente, esto crea un tipo nuevo y distinto que es incompatible con su tipo subyacente ( int). Esto es más estricto que un alias simple, que generalmente es transparente e intercambiable con el tipo original.

nuevo tipo Distancia = int ;

Haskell

Haskell incluye alias de tipos mediante la typepalabra clave. [ 7 ]

tipo Distancia = Int ;

Julia

Julia incluye alias de tipos. [ 8 ] El uso de constes una buena práctica (aunque no es estrictamente necesario para los alias). Evita que el alias se reasigne a un tipo diferente más adelante en el programa, asegurando que el alias sea estable.

const Distancia = Int

Kotlin

Kotlin implementa el alias de tipos mediante la typealiaspalabra clave. [ 9 ]

typealias Distancia = Int

Nim

Nim presenta alias de tipos. [ 10 ]

tipo Distancia * = int

OCaml

OCaml incluye alias de tipos. [ 11 ]

tipo distancia = int

Pitón

Python incluye alias de tipos. [ 12 ]

Vector = lista [ float ]

Los alias de tipo pueden marcarse con TypeAlias ​​para indicar explícitamente que la instrucción es una declaración de alias de tipo, no una asignación de variable normal. El uso de (de PEP 613) no es necesario para que el alias funcione, pero indica explícitamente a los verificadores de tipos estáticos (como Mypy ) que la asignación es una declaración de tipo, no una asignación de variable en tiempo de ejecución.:TypeAlias

from typing import TypeAliasVector : TypeAlias ​​= lista [ flotante ]

Óxido

Rust incluye funciones de alias de tipos mediante la typepalabra clave. [ 13 ]

tipo Punto = ( u8 , u8 );

Scala

Scala puede crear alias de tipo usando tipos opacos. [ 14 ]

objeto Logaritmos : tipo opaco Logaritmo = Doble

Rápido

Swift incluye funciones de alias de tipos mediante la typealiaspalabra clave.

typealias Distancia = Int ;

Mecanografiado

TypeScript incluye funciones de alias de tipos mediante la typepalabra clave. [ 15 ]

tipo Distancia = número ;

Zig

Zig implementa el alias de tipos asignando un tipo de datos a una constante. [ 16 ]

const distancia = u32 ;

Referencias

  1. "Alias ​​de cualquier tipo: especificaciones preliminares de características de C# 12.0" . learn.microsoft.com . 16 de agosto de 2023. Consultado el 23 de febrero de 2024 .
  2. "alias - Crystal" . crystal-lang.org . Consultado el 21 de febrero de 2024 .
  3. "Alias ​​Alias ​​- Lenguaje de programación D" . dlang.org . Consultado el 18 de junio de 2023 .
  4. "Typedefs" . dart.dev . Consultado el 18 de junio de 2023 .
  5. "Especificaciones de tipos y comportamientos" . elixir-lang.github.com . Consultado el 23 de junio de 2023 .
  6. "Tipos: Alias ​​de tipo" . docs.hhvm.com . Consultado el 18 de junio de 2023 .
  7. "Sinónimo de tipo - HaskellWiki" . wiki.haskell.org . Consultado el 18 de junio de 2023 .
  8. "Tipos · El lenguaje Julia" . docs.julialang.org . Consultado el 23 de junio de 2023 .
  9. "Alias ​​de tipo | Kotlin" . Ayuda de Kotlin . Consultado el 18 de junio de 2023 .
  10. "Nim by Example - Types" . nim-by-example.github.io . Consultado el 21 de junio de 2023 .
  11. "Manual de referencia de OCaml" . ocaml.org . Consultado el 23 de abril de 2024 .
  12. "typing — Soporte para sugerencias de tipo" . Documentación de Python . Python Software Foundation . Consultado el 18 de junio de 2023 .
  13. "Alias ​​de tipo - La referencia de Rust" . doc.rust-lang.org . Consultado el 18 de junio de 2023 .
  14. "Tipos opacos" . Documentación de Scala . Consultado el 18 de junio de 2023 .
  15. "Documentación - Tipos cotidianos" . www.typescriptlang.org . Consultado el 18 de junio de 2023 .
  16. "Documentación - El lenguaje de programación Zig" . ziglang.org . Consultado el 14 de octubre de 2024 .