Swift Typealias: Πώς να τα χρησιμοποιήσετε και γιατί;

Σε αυτό το άρθρο, θα μάθετε για τις τυπολογίες και τις περιπτώσεις χρήσης του στο Swift.

Ένα ψευδώνυμο τύπου σας επιτρέπει να δώσετε ένα νέο όνομα για έναν υπάρχοντα τύπο δεδομένων στο πρόγραμμά σας. Αφού δηλωθεί ένα ψευδώνυμο τύπου, το ψευδώνυμο όνομα μπορεί να χρησιμοποιηθεί αντί για τον υπάρχοντα τύπο σε όλο το πρόγραμμα.

Το ψευδώνυμο τύπου δεν δημιουργεί νέους τύπους. Απλώς παρέχουν ένα νέο όνομα σε έναν υπάρχοντα τύπο.

Ο κύριος σκοπός typealiasείναι να κάνουμε τον κώδικα μας πιο ευανάγνωστο και σαφέστερο στο πλαίσιο της ανθρώπινης κατανόησης

Πώς να δημιουργήσετε μια τυπολογία;

Δηλώνεται χρησιμοποιώντας τη λέξη-κλειδί typealiasως:

 typealias name = υπάρχων τύπος

Στο Swift, μπορείτε να το χρησιμοποιήσετε typealiasγια τους περισσότερους τύπους. Μπορούν να είναι είτε:

  • Ενσωματωμένοι τύποι (for.eg: String, Int)
  • Τύποι που καθορίζονται από τον χρήστη (for.eg: class, struct, enum)
  • Πολύπλοκοι τύποι (για παράδειγμα: κλείσιμο)

Typealias για ενσωματωμένους τύπους

Μπορείτε να χρησιμοποιήσετε typalias για όλους τους ενσωματωμένους τύπους δεδομένων όπως String, Int, Float κ.λπ.

Για παράδειγμα:

 typealias StudentName = Συμβολοσειρά

Η παραπάνω δήλωση επιτρέπει στο StudentName να χρησιμοποιείται παντού αντί για String. Έτσι, εάν θέλετε να δημιουργήσετε μια σταθερά συμβολοσειράς τύπου, αλλά αντιπροσωπεύει περισσότερο σαν όνομα μαθητή. Μπορείτε να κάνετε τα εξής:

 let name: StudentName = "Τζακ"

Χωρίς τη χρήση typealias, θα πρέπει να δηλώσετε τη σταθερά συμβολοσειράς τύπου ως:

 let name: String = "Τζακ"

Πάνω από τα δύο παραδείγματα δημιουργείται μια σταθερά τύπου String. Αλλά δηλώνοντας με typealias, ο κώδικάς μας γίνεται πιο αναγνώσιμος.

Typealias για καθορισμένους από το χρήστη τύπους

Υπάρχουν πολλές περιπτώσεις όταν πρέπει να δημιουργήσετε τον δικό σας τύπο δεδομένων. Ας υποθέσουμε ότι θέλετε να δημιουργήσετε έναν τύπο που αντιπροσωπεύει μαθητή, μπορείτε να το δημιουργήσετε χρησιμοποιώντας μια τάξη ως:

 class Student ( ) 

Τώρα μια ομάδα μαθητών μπορεί να αναπαρασταθεί ως πίνακας ως:

 μαθητές var: Array = ()

Η παραπάνω δήλωση μπορεί να γίνει πιο ευανάγνωστη δημιουργώντας τον δικό σας τύπο για Arrayχρήση typealiasως:

 μαθητές τύπου = Διάταξη

Τώρα μπορούμε να κάνουμε τον κώδικα πιο ευανάγνωστο όπως:

 μαθητές: μαθητές = ()

Typealias για σύνθετους τύπους

Ας αναλύσουμε ένα ακόμη παράδειγμα. Ας υποθέσουμε ότι έχουμε μια μέθοδο που παίρνει ένα κλείσιμο ως παράμετρος εισαγωγής.

Μην ανησυχείτε εάν δεν γνωρίζετε για το κλείσιμο. Σκεφτείτε το ως έναν ειδικό τύπο λειτουργίας. Το εξηγήσαμε λεπτομερώς στο άρθρο: Ταχεία διακοπή λειτουργίας.

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

Το παραπάνω παράδειγμα παίρνει ένα κλείσιμο ως είσοδος στο someMethod. Το κλείσιμο παίρνει μια Intτιμή και επιστρέφει String.

Μπορείτε να δείτε τη χρήση των (Int)->(String)λογικών για τον αναγνώστη. Μπορείτε να χρησιμοποιήσετε typealiasγια να δώσετε ένα νέο όνομα για αυτό:

 typealias CompletionHandler = (Int) -> (συμβολοσειρά)

Τώρα μπορείτε να ξαναγράψετε τη μέθοδο ως:

 func someMethod(oncomp:CompletionHandler)( )

Μπορούμε να δούμε τα ίδια βλέμματα κώδικα πιο σαφής και προγραμματιστής φιλικό με τη χρήση της typealias.

ενδιαφέροντα άρθρα...