Swift Typealias: Cum să le utilizați și de ce?

În acest articol, veți afla despre tipealii și cazurile sale de utilizare în Swift.

Un alias tip vă permite să furnizați un nou nume pentru un tip de date existent în programul dvs. După ce un alias de tip este declarat, numele aliasului poate fi utilizat în locul tipului existent pe tot parcursul programului.

Aliasul de tip nu creează noi tipuri. Ele oferă pur și simplu un nou nume unui tip existent.

Scopul principal al acestuia typealiaseste de a face codul nostru mai lizibil și mai clar în context pentru înțelegerea umană.

Cum se creează un tipealias?

Este declarat folosind cuvântul cheie typealiasca:

 nume tipealias = tip existent

În Swift, puteți utiliza typealiaspentru majoritatea tipurilor. Ele pot fi:

  • Tipuri încorporate (de ex. String, Int)
  • Tipuri definite de utilizator (for.eg: class, struct, enum)
  • Tipuri complexe (de exemplu: închideri)

Typealias pentru tipurile încorporate

Puteți utiliza tipealii pentru toate tipurile de date încorporate precum String, Int, Float etc.

De exemplu:

 typealias StudentName = Șir

Declarația de mai sus permite ca StudentName să fie folosit peste tot în loc de String. Deci, dacă doriți să creați o constantă de tip șir, dar reprezintă mai mult ca numele studentului. Puteți face așa:

 let name: StudentName = "Jack"

Fără a utiliza tipealii, ar trebui să declarați constanta de tip șir ca:

 să numim: String = "Jack"

Deasupra ambelor exemple creează o constantă de tip String. Dar declarând cu typealias, codul nostru devine mai lizibil.

Tipografii pentru tipurile definite de utilizator

Există multe cazuri când trebuie să vă creați propriul tip de date. Să presupunem că doriți să creați un tip care să reprezinte Student, îl puteți crea folosind o clasă ca:

 class Student ( ) 

Acum un grup de studenți poate fi reprezentat ca o matrice ca:

 var studenti: Array = ()

Declarația de mai sus poate fi mai ușor de citit prin crearea propriului tip pentru a fi Arrayutilizat typealiasca:

 typealias Students = Array

Acum putem face codul nostru mai lizibil ca:

 var elevi: Studenți = ()

Tipealii pentru tipuri complexe

Să analizăm încă un exemplu. Să presupunem că avem o metodă care ia o închidere ca parametru de intrare.

Nu vă faceți griji dacă nu știți despre închideri. Gândiți-vă la asta ca la un tip special de funcție. I-am explicat detaliile în articolul: Închideri rapide.

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

Exemplul de mai sus ia o închidere ca intrare în someMethod. Închiderea ia o Intvaloare și revine String.

Puteți vedea că utilizarea (Int)->(String)cititorului are mai puțin sens. Puteți utiliza typealiaspentru a furniza un nume nou pentru acesta:

 typealias CompletionHandler = (Int) -> (String)

Acum puteți rescrie metoda ca:

 func someMethod(oncomp:CompletionHandler)( )

Putem vedea că același cod arată mai clar și că programatorul este mai prietenos cu utilizarea typealias.

Articole interesante...