Swift Typealias: ¿Cómo usarlos y por qué?

En este artículo, aprenderá sobre typealias y sus casos de uso en Swift.

Un alias de tipo le permite proporcionar un nuevo nombre para un tipo de datos existente en su programa. Después de que se declara un alias de tipo, se puede usar el nombre con alias en lugar del tipo existente en todo el programa.

Los alias de tipo no crean nuevos tipos. Simplemente proporcionan un nuevo nombre a un tipo existente.

El objetivo principal de typealiases hacer que nuestro código sea más legible y más claro en contexto para la comprensión humana.

¿Cómo crear un typealias?

Se declara usando la palabra clave typealiascomo:

 typealias name = tipo existente

En Swift, puede usar typealiaspara la mayoría de los tipos. Pueden ser:

  • Tipos integrados (por ejemplo: String, Int)
  • Tipos definidos por el usuario (por ejemplo: class, struct, enum)
  • Tipos complejos (por ejemplo: cierres)

Typealias para tipos integrados

Puede usar typealias para todos los tipos de datos integrados como String, Int, Float, etc.

Por ejemplo:

 typealias StudentName = Cadena

La declaración anterior permite que StudentName se use en todas partes en lugar de String. Entonces, si desea crear una constante de tipo cadena pero representa más como el nombre del estudiante. Puedes hacer como:

 let name: StudentName = "Jack"

Sin usar typealias, debe declarar constante de tipo cadena como:

 let name: String = "Jack"

Los dos ejemplos anteriores crean una constante de tipo String. Pero declarando con typealias, nuestro código se vuelve más legible.

Typealias para tipos definidos por el usuario

Hay muchos casos en los que necesita crear su propio tipo de datos. Suponga que desea crear un tipo que represente al estudiante, puede crearlo usando una clase como:

 class Student ( ) 

Ahora, un grupo de estudiantes se puede representar como una matriz como:

 estudiantes var: Array = ()

La declaración anterior se puede hacer más legible creando su propio tipo para Arrayusar typealiascomo:

 typealias Students = Array

Ahora podemos hacer que nuestro código sea más legible como:

 var estudiantes: Estudiantes = ()

Typealias para tipos complejos

Analicemos un ejemplo más. Supongamos que tenemos un método que toma un cierre como parámetro de entrada.

No se preocupe si no conoce los cierres. Piense en ello como un tipo especial de función. Lo hemos explicado detalladamente en el artículo: Cierres rápidos.

 func someMethod(oncomp:(Int)->(String))( ) 

El ejemplo anterior toma un cierre como entrada a someMethod. El cierre toma Intvalor y vuelve String.

Puede ver que el uso de (Int)->(String)tiene menos sentido para el lector. Puede utilizar typealiaspara proporcionarle un nuevo nombre:

 typealias CompletionHandler = (Int) -> (String)

Ahora puede reescribir el método como:

 func someMethod(oncomp:CompletionHandler)( )

Podemos ver que el mismo código se ve más claro y amigable para el programador con el uso de typealias.

Articulos interesantes...