Η Apple Δημιουργεί Μια Νέα Γλώσσα Προγραμματισμού, Την Swift

swift-programming-language

Η Apple ανακοίνωσε την Δευτέρα τη δημιουργία της Swift, μιας γλώσσας προγραμματισμού που θα λειτουργήσει ως ο διάδοχος της Objective C για τις εφαρμογές που κυκλοφορούν για την πλατφόρμα του iOS και του OS X. Με μια πρώτη ματιά καταλαβαίνουμε πως είναι η πιο σημαντική εξέλιξη στο θέμα του λογισμικού που χρησιμοποιεί η Apple από τότε που εξαγόρασε την NeXT, στην οποία όπως πολύ καλά γνωρίζεις βασίστηκε το Mac OS X.

Με την Swift η Apple προσπάθησε να πάρει τα καλύτερα στοιχεία πιο απλών γλωσσών προγραμματισμού, όπως είναι η JavaScript και η Python, και να δημιουργήσει μια μοντέρνα γλώσσα που θα μαθαίνεται πιο εύκολα από κάποιον που τώρα ξεκινάει τον προγραμματισμό. Φυσικά, κάτι τέτοιο δεν ίσχυε για την Objective C. Ταυτόχρονα η εταιρεία υποστηρίζει πως σε γενικές γραμμές ένας αλγόριθμος θα εκτελείται πιο γρήγορα όταν είναι γραμμένος σε Swift, παρά σε Objective C. Στο παράδειγμα που έδειξε η εταιρεία κατά την παρουσίαση η διαφορά ήταν της τάξης του 30%. Αυτό είναι πολύ σημαντικό.

Η ίδια η Apple περιγράφει την Swift ως εξής:

Swift is a powerful new programming language for iOS and OS X® that makes it easier than ever for developers to create incredible apps. Designed for Cocoa® and Cocoa Touch®, Swift combines the performance and efficiency of compiled languages with the simplicity and interactivity of popular scripting languages. By design, Swift helps developers write safer and more reliable code by eliminating entire categories of common programming errors, and coexists with Objective-C® code, so developers can easily integrate Swift into their existing apps. Xcode® Playgrounds make writing Swift code incredibly interactive by instantly displaying the output of Swift code.

Χαρακτηριστικό της σημασίας της ανακοίνωσης είναι το σχόλιο που έκανε ο John Gruber:

Ρίχνοντας μια ματιά στον οδηγό των 500 σελίδων που ανέβηκε στο iBooks, συναντάμε αρκετές διαφορές από την Objective C που αντικατοπτρίζουν τα παραπάνω. Το “Hello World” για παράδειγμα είναι μόνο μία γραμμή. Το Fast Company αναφέρει μερικά ακόμα παραδείγματα. Ας δούμε κάποια από αυτά.

Η Swift ξεφεύγει από την λογική των Java και C, όπου πρέπει να καθορίσεις έναν συγκεκριμένο τύπο για κάθε μεταβλητή, και μοιάζει περισσότερο με την JavaScript και την Python, όπου οι τύποι των μεταβλητών δεν δηλώνονται ρητά.

Στα ονόματα των σταθερών και των μεταβλητών μπορείς να χρησιμοποιήσεις σχεδόν ό,τι χαρακτήρα θέλεις, ακόμα κι αν αυτός είναι Unicode (βλέπε Emoticons παρακάτω). Τα ονόματα αυτά απαγορεύεται να περιλαμβάνουν μαθηματικά σύμβολα, βελάκια, Unicode code points και χαρακτήρες για τη σχεδίαση γραμμής ή κουτιών. Ακόμα απαγορεύεται να ξεκινούν από αριθμό, αν και οι αριθμοί επιτρέπονται οπουδήποτε αλλού μέσα στο όνομα.

swift-variable-names

Σε αντίθεση με πολλές άλλες γλώσσες προγραμματισμού, στην Swift δεν είναι απαραίτητο το semicolon μετά από κάθε statement - για την ακρίβεια είναι προαιρετικό. Πρέπει όμως να το συμπεριλάβεις αν θέλεις να γράψεις παραπάνω από ένα statements στην ίδια γραμμή.

swift-semicolon

Σε αντίθεση με τη λειτουργία του συμβόλου % στην C και την Objective C, στην Swift αυτό μπορεί να χρησιμοποιηθεί και μαζί με αριθμούς κινητής υποδιαστολής. Στο παρακάτω παράδειγμα η γλώσσα θα επιστρέψει σωστά 0.5 που είναι και το υπόλοιπο της διαίρεσης μεταξύ 8 και 2.5.

swift-modulo

Ακόμα ενώ όταν στην C αναφερόμαστε σε ένα στιγμιότυπο (instance) μιας κλάσης το αποκαλούμε “αντικείμενο” (object), στην Swift η Apple επιλέγει μια πιο μοντέρνα προσέγγιση και μας παρακινεί να το αποκαλούμε απλά “στιγμιότυπο”. Ο λόγος που αναφέρει η εταιρεία είναι πως στην Swift οι έννοιες και οι λειτουργίες μιας κλάσης και μιας δομής μοιάζουν πιο πολύ από ποτέ. Συνεπώς επειδή πολλά από τα παραδείγματα που διαβάζουμε στο βιβλίο εφαρμόζονται και στους δύο τύπους, επιχέχθηκε μια κοινή ονομασία.

Οι διαφορές της Swift με άλλες γλώσσες προγραμματισμού είναι αναμενόμενα πολλές και φυσικά δεν σταματούν σε απλά πράγματα όπως τα παραπάνω. Όποιος θέλει να μάθει Swift, θα πρέπει στην αρχή να έχει δίπλα του το βιβλίο. Οι προγραμματιστές είναι λογικό να είναι κάπως διστακτικοί μπροστά στο δίλημμα: να γράψω το συγκεκριμένο κομμάτι κώδικα σε Swift και να πειραματιστώ ή να το γράψω σε Objective C όπου γνωρίζω καλά τον τρόπο που λειτουργεί και δεν θα αντιμετωπίσω προβλήματα; Σίγουρα θα πάρει λίγο χρόνο μέχρι ένα σημαντικό μερίδιο των προγραμματιστών να προχωράει κάθε φορά στην πρώτη επιλογή. Όμως αυτό φαίνεται πως θα είναι το μέλλον του προγραμματισμού σε iOS και OS X.

apple-swift-ide

Κάνε κλικ για μεγαλύτερο μέγεθος

Σχολιάστε >
24 σχόλια
|
Κατηγορίες:

Τα σχόλια είναι απενεργοποιημένα.