Η Apple κυκλοφορεί τη γλώσσα προγραμματισμού Swift 5.3 και τη βιβλιοθήκη Swift System ανοιχτού κώδικα

μήλο ανακοινώθηκε σχετικά με το άνοιγμα του πηγαίου κώδικα της βιβλιοθήκης Σύστημα Swift, το οποίο παρέχει ένα ιδιωματικό σύνολο διεπαφών προγραμματισμού για κλήσεις συστήματος και τύπους δεδομένων χαμηλού επιπέδου. Το Swift System αρχικά υποστήριζε μόνο κλήσεις συστήματος για πλατφόρμες Apple, αλλά τώρα έχει μεταφερθεί σε Linux. Ο κώδικας συστήματος Swift είναι γραμμένος στη γλώσσα Swift και διανέμονται από άδεια σύμφωνα με το Apache 2.0.

Το Swift System παρέχει ένα ενιαίο σημείο πρόσβασης σε διεπαφές συστήματος που μπορεί να χρησιμοποιηθεί σε όλες τις υποστηριζόμενες πλατφόρμες χωρίς την ανάγκη για συγκεκριμένα πλαίσια C στα προγράμματα Swift. Ταυτόχρονα, το Swift System δεν ενοποιεί τις ίδιες τις κλήσεις του συστήματος, αλλά παρέχει ένα ξεχωριστό υποσύνολο API για κάθε υποστηριζόμενη πλατφόρμα, λαμβάνοντας υπόψη τη συμπεριφορά αυτής της πλατφόρμας και αντικατοπτρίζει με ακρίβεια τις διεπαφές χαμηλού επιπέδου του λειτουργικού συστήματος. Ο βασικός στόχος της δημιουργίας του συστήματος Swift είναι η απλούστευση της ανάπτυξης βιβλιοθηκών και εφαρμογών πολλαπλών πλατφορμών όπως π.χ. SwiftNIO и SwiftPM. Το σύστημα Swift δεν εξαλείφει την ανάγκη για διακλάδωση με βάση το "#if os()" κατά την πρόσβαση σε αρχέγονα χαμηλού επιπέδου, αλλά κάνει αυτήν την εργασία ασφαλέστερη και
άνετος.

Μπορείτε επίσης να σημειώσετε δημοσίευση έκδοση γλώσσας προγραμματισμού Swift 5.3. Επίσημες κατασκευές έτοιμος για Linux (Ubuntu 16.04/18.04/20.04, CentOS 7/8), macOS (Xcode 12) και Windows 10. Κείμενα πηγής εξάπλωση άδεια σύμφωνα με το Apache 2.0.

Η νέα έκδοση προσθέτει αρχική υποστήριξη για την πλατφόρμα των Windows και ξεκίνησε παροχή εργαλείων για τη δημιουργία και την εκτέλεση εφαρμογών Swift στα Windows 10. Η λειτουργικότητα της γλώσσας συνέχισε να βελτιώνεται. Τα νέα χαρακτηριστικά περιλαμβάνουν την προσθήκη ενός αρχικοποιητή για τον τύπο String, την εκτεταμένη χρήση της έκφρασης "where", τις αλλαγές στη σημασιολογία didSet, την υποστήριξη για τον καθορισμό πολλαπλών μοτίβων σε εκφράσεις Catch και την προσθήκη ενός τύπου
Float16, ατομικός λειτουργίες μνήμης.

Το μέγεθος των εφαρμογών που προέκυψαν έχει μειωθεί - αν στο Swift 4 το μέγεθος του συναρμολογημένου προγράμματος ήταν 2.3 φορές μεγαλύτερο από την έκδοση στο Objective-C, τώρα το χάσμα έχει μειωθεί σε 1.5 φορές. Η νέα έκδοση επιταχύνει επίσης σημαντικά τον αυξητικό κώδικα δόμησης και δόμησης με μεγάλο αριθμό ιδιοτήτων και λειτουργιών που εισάγονται από άλλες βιβλιοθήκες. Τα διαγνωστικά εργαλεία στον μεταγλωττιστή και η ποιότητα των μηνυμάτων σφάλματος έχουν βελτιωθεί. Ο διαχειριστής πακέτων παρέχει τη δυνατότητα να περιλαμβάνει πρόσθετους πόρους που απαιτούνται κατά το χρόνο εκτέλεσης, όπως εικόνες, σε πακέτα. Ο διαχειριστής πακέτων προσθέτει επίσης υποστήριξη για στοιχεία για τοπική προσαρμογή και τη δυνατότητα ορισμού εξαρτήσεων υπό όρους.

Θυμηθείτε ότι η γλώσσα Swift κληρονομεί τα καλύτερα στοιχεία των γλωσσών C και Objective-C και παρέχει ένα μοντέλο αντικειμένου συμβατό με το Objective-C (ο κώδικας Swift μπορεί να αναμιχθεί με τον κώδικα C και Objective-C), αλλά διαφέρει στη χρήση του αυτόματου εκχώρηση μνήμης και υπερχείλιση ελέγχου μεταβλητών και πινάκων, γεγονός που αυξάνει σημαντικά την αξιοπιστία και την ασφάλεια του κώδικα. Η Swift προσφέρει επίσης πολλές σύγχρονες τεχνικές προγραμματισμού, όπως κλείσιμο, γενικό προγραμματισμό, εκφράσεις λάμδα, πλειάδες και τύπους λεξικών, λειτουργίες γρήγορης συλλογής και στοιχεία λειτουργικού προγραμματισμού. Η έκδοση Linux δεν συνδέεται με το Objective-C Runtime, το οποίο επιτρέπει τη χρήση της γλώσσας σε περιβάλλοντα που στερούνται υποστήριξης Objective-C.

Η υλοποίηση του Swift έχει κατασκευαστεί χρησιμοποιώντας τεχνολογίες από το δωρεάν έργο LLVM. Για να διασφαλιστεί η υψηλή απόδοση, τα προγράμματα Swift μεταγλωττίζονται σε εγγενή κώδικα που εκτελείται 30% πιο γρήγορα από τον κώδικα Objective-C στις δοκιμές της Apple. Αντί για έναν συλλέκτη σκουπιδιών, το Swift χρησιμοποιεί μέτρηση αναφορών αντικειμένων. Το πακέτο περιλαμβάνει έναν διαχειριστή πακέτων Διαχείριση πακέτων Swift, το οποίο παρέχει εργαλεία για τη διανομή μονάδων και πακέτων με βιβλιοθήκες και εφαρμογές στη γλώσσα Swift, διαχείριση εξαρτήσεων, αυτοματοποιημένη φόρτωση, δημιουργία και σύνδεση στοιχείων.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο