Άνοιγμα κυρίου μενού

Η Objective-C είναι μία αντικειμενοστρεφής γλώσσα προγραμματισμού γενικής χρήσης. Είναι η βασική γλώσσα προγραμματισμού που χρησιμοποιήθηκε από την Apple για τα λειτουργικά συστήματα MacOS, iOS και τα αντίστοιχα APIs τους (Cocoa και Cocoa Touch αντίστοιχα) πριν την κυλοφορία της γλώσσας προγραμματισμού Swift. Η Objective-C χρησιμοποιεί το "στυλ" μηνυμάτων (ή κλήσεων) της γλώσσας Smaltalk ενσωματώνοντάς τα στην γλώσσα προγραμματισμού C.

Objective-C
Δημιουργός Tom Love και Brad Cox
Πρώτη έκδοση 1984
Κατηγορία Αντικειμενοστρεφής προγραμματισμός, Ανάκλαση
Ιστοσελίδα developer.apple.com

Η Objective-C αναπτύχθηκε στις αρχές της δεκαετίας του 1980. Χρησιμοποιήθηκε από την εταιρεία NeXT για το λειτουργικό σύστημα NeXTSTEP από το οποίο προέχονται τα λειτουργικά συστήματα MacOS και iOS.

Προγράμματα γραμμένα στην γλώσσα Objective-C που δεν χρησιμοποιούν τις βιβλιοθήκες των Cocoa ή Cocoa Touch, ή που χρησιμοποιούν άλλα μέρη που μπορούν να μεταφερθούν ή να υλοποιηθούν ξανά για άλλα συστήματα, μπορούν να μεταγλωττιστούν από κάθε σύστημα που υποστηρίζει των γνωστό μεταγλωττιστή GCC (GNU Compiler Collection) ή τον Clang.

Τα αρχεία πηγαίου κώδικα "υλοποίησης" (implementation files) των προγραμμάτων που είναι γραμμένα σε Objective-C συνήθως έχουν την κατάληξη .m ενώ τα αρχεία "κεφαλίδας/διεπαφής" (header/interface files) έχουν την κατάληξη .h . Πρόκειται για την ίδια κατάληξη που έχουν και τα αρχεία κεφαλίδας/διεπαφής στην γλώσσα προγραμματισμού C.

Πίνακας περιεχομένων

ΙστορικάΕπεξεργασία

Η Objective-C δημιουργήθηκε αρχικά από τους Brad Cox και Tom Love στις αρχές της δεκαετίας του 1980 στην εταιρεία τους, την Stepstone. [1]. Και οι δύο τους είχαν κάνει μία εισαγωγή στην γλώσσα Smaltalk κατά την διάρκεια της εργασίας τους στο Κέντρο Τεχνολογίας Προγραμματισμού της εταιρείας ITT Corporation το 1981. Τον Cox τον απασχολούσαν τα προβλήματα της "επαναχρησιμοποίησης" στον σχεδιασμό λογισμικού. Κατάλαβε σύντομα ότι μία γλώσσα προγραμματισμού σαν την Smaltalk δεν θα ήταν πολύ χρήσιμη για την δημιουργία "Περιβαλλόντων Ανάπτυξης" για τους προγραμματιστές στην ITT. Όμως τόσο ο Cox όσο και ο Tom Love αναγνώριζαν την ανάγκη και την σημασία της οπισσθόδρομης συμβατότητας (backward compatibility) με την C για τους μηχανικούς της ITT.

Έτσι, ο Cox ξεκίνησε να γράφει έναν προ-επεξεργαστή για την C σε μία προσπάθεια να προσθέσει σε αυτή κάποιες από τις λειτουργίες της Smaltalk. Σύντομα κατάφερε να φτιάξει μία λειτουργική υλοποίηση μίας αντικειμενοστρεφούς επέκτασης της γλώσσας προγραμματισμού C, την οποία και ονόμασε "OOPC" (Object-Oriented Pre-Compiler). Το 1982, η Schlumberger Research προσέλαβε τον Love και εξαγόρασε την πρώτη εμπορική έκδοση της Smaltalk-80 που επηρέασε στην συνέχει την ανάπτυξη του δημιουργήματός τους.

Με σκοπό να δέιξει ότι μπορεί να γίνει σημαντική πρόοδος σε σχέση με το νέο εργαλείο που ανέπτυσσε, ο Cox έδειξε ότι η δημιουργία εναλλασόμενων μερών λογισμικού χρειαζόταν στην πραγματικότητα πολύ λίγες πρακτικές αλλαγές στα ήδη υπάρχοντα εργαλεία. Συγκεκριμένα χρειαζόταν η υποστήριξη αντικειμένων με έναν ευέλικτο τρόπο που θα παρεχόταν μαζί με ένα σύνολο από βιβλιοθήκες και θα επέτρεπε στον κώδικα (και όποιους άλλου πόρους αυτός χρησιμοποιεί) να "πακεταριστεί" σε μία διαπλατφορμική (cross-platform) μορφή.

Οι Love και Cox τελικά δημιούργησαν ένα νέο εγχείρημα, την Productivity Products International (PPI), για να εμπορευματοποιήσουν το προϊόν το οποίο "πάντρευε" έναν μεταγλωττιστή της Objective-C με διάφορες βιβλιοθήκες. Το 1986 ο Cox δημοσίευσε την βασική περιγραφή της Objective-C στην επίσημη μορφή της στο βιβλίο με τίτλο "Object-Oriented Programming, An Evolutionary Approach".

Πως έγινε πιό γνωστή μέσα από την NeXTΕπεξεργασία

Το 1988 η NeXT αγόρασε τα δικαιώματα της Objective-C από την StepStone (το νέο όνομα της PPI και ο ιδιοκτήτης του εμπορικού σήματος της Objective-C) και επέκτεινε τον μεταγλωττιστή GCC έτσι ώστε να υποστηρίζει την Objective-C. Η NeXT επίσης ανέπτυξε τις βιβλιοθήκες AppKit και FoundationKit πάνω στις οποίες βασίστηκε η γραφική διεπαφή NeXTSTEP και το εργαλείο ανάπτυξης Interface Builder. Παρ' ότι οι υπολογιστές της NeXT δεν άφησαν το στίγμα τους στην αγορά των υπολογιστών, τα εργαλεία ανάπτυξης αναγνώρισαν ευρεία αποδοχή από την βιομηχανία. Αυτό οδήγησε την NeXT στην απόφαση να αφήσει την παραγωγή υλικού (hardware) και να εστιάσει στα εργαλεία λογισμικού, πουλώντας το NeXTSTEP σαν μία πλατφόρμα για προγραμματισμό.

Δείτε επίσηςΕπεξεργασία

Περαιτέρω ανάγνωσηΕπεξεργασία

  • Cox, Brad J. (1991). Object Oriented Programming: An Evolutionary Approach. Addison Wesley. ISBN 0-201-54834-8. 

Εξωτερικοί σύνδεσμοιΕπεξεργασία