Cocoa and Cocoa Touch: Πώς να ξεκινήσετε Δημιουργία εφαρμογών Mac και iOS

Αποκάλυψη: Η υποστήριξή σας βοηθά στη διατήρηση της λειτουργίας του ιστότοπου! Κερδίζουμε ένα τέλος παραπομπής για ορισμένες από τις υπηρεσίες που προτείνουμε σε αυτήν τη σελίδα.


Το κακάο είναι ένα API ανάπτυξης εγγενές στο λειτουργικό σύστημα Mac OS X. Το Cocoa Touch είναι η στενά σχετική πλατφόρμα για το iOS. Είναι γραμμένο στο Objective-C και λειτουργεί ως ένα είδος «ανώτερου επιπέδου» σε κάθε λειτουργικό σύστημα.

Το κακάο μπορεί να θεωρηθεί ως πλατφόρμα εφαρμογών ή πλαίσιο ανάπτυξης εφαρμογών, αλλά είναι πιο ενσωματωμένο στο λειτουργικό σύστημα από ότι ένα από αυτά θα ήταν σε περιβάλλον Linux ή Windows.

Αυτή η στενή ενοποίηση μεταξύ του API, του λειτουργικού συστήματος και (φυσικά) του υλικού της Apple έχει σκοπό να παρέχει ένα απρόσκοπτο περιβάλλον ανάπτυξης και να ενισχύει τον «τρόπο της Apple» να κάνει πράγματα.

Ιστορία του κακάου

Το κακάο ξεκινά με το C. Κυριολεκτικά.

Στις αρχές της δεκαετίας του 1980, ένα ζευγάρι προγραμματιστών με το όνομα Brad Cox και Tom Love προσπάθησαν να προσθέσουν το Object Orientation στη γλώσσα προγραμματισμού C, η οποία δεν υποστήριζε το OOP εκείνη την εποχή.

Η λύση τους ήταν να δημιουργήσουν έναν προ-επεξεργαστή που θα καθιστούσε τον κώδικα C με μερικές προσθήκες τύπου Smalltalk σε απλό μεταγλωττισμένο κώδικα C. (Το Smalltalk ήταν μια πρώιμη αντικειμενοστρεφής γλώσσα.)

Αυτός ο προεπεξεργαστής εξελίχθηκε γρήγορα σε μια πλήρη επέκταση γλώσσας και έγινε γνωστός ως Objective-C. Το λογισμικό NeXT, το οποίο ιδρύθηκε από τον Steve Jobs αφού απολύθηκε από την Apple το 1985, χορήγησε άδεια για το Objective-C από τους δημιουργούς του και το χρησιμοποίησε ως βάση για διάφορα αναπτυξιακά πλαίσια.

Αυτές δημιούργησαν τις πλατφόρμες εφαρμογών NeXTSTEP και OpenStep, τις οποίες η NeXT πούλησε στις δεκαετίες του ’80 και του ’90.

Η Apple απέκτησε το NeXT το 1996 και ο Steve Jobs επέστρεψε ως CEO. Τα πλαίσια NeXTSTEP μπήκαν στο λειτουργικό σύστημα Mac.

Η Apple είχε ήδη εμπορικό σήμα το όνομα Cocoa, για ένα ξεχωριστό έργο που είχε διακοπεί. Για να τοποθετήσουν γρήγορα ένα εμπορικό σήμα στη νεότερη έκδοση των πλαισίων της Apple, το ονόμασαν Κακάο.

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

Τι κάνει το κακάο?

Το κακάο κάνει πολλά πράγματα, αλλά σε γενικές γραμμές αυτά εμπίπτουν σε τέσσερις κατηγορίες:

  • Λειτουργεί ως μια διευρυμένη τυπική βιβλιοθήκη για το Objective-C, παρέχοντας υποστήριξη για πλουσιότερα αντικείμενα και χαρακτηριστικά σύγχρονων υπολογιστικών γλωσσών που δεν υπάρχουν στο σχεδιασμό του Objective-C.

  • Παροχή ενοποιημένης διεπαφής χρήστη και εμπειρίας χρήστη.

  • Επιτρέποντας σε μια εφαρμογή να έχει πρόσβαση σε άλλες εφαρμογές, υπηρεσίες και λειτουργίες συσκευών.

  • Ενθάρρυνση συγκεκριμένων αρχιτεκτονικών και διαχειριστικών δεδομένων.

Αυτοί οι ευρείς σχεδιαστικοί στόχοι υλοποιούνται σε διάφορα «πλαίσια». Αυτός ο όρος μπορεί να είναι λίγο συγκεχυμένος. Στη σύγχρονη γλώσσα, το κακάο μοιάζει περισσότερο με ένα ενιαίο πλαίσιο, με πολλές ενότητες ή βιβλιοθήκες. Αλλά η Apple καλεί καθεμία από αυτές τις βιβλιοθήκες «πλαίσιο».

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

Το κακάο ως τυπική βιβλιοθήκη

Το Objective-C διαθέτει μια τυπική βιβλιοθήκη. Στο περιβάλλον του κακάου, η τυπική βιβλιοθήκη και ο χρόνος εκτέλεσης παρέχονται στην πραγματικότητα από το κακάο. Επιπλέον, παρέχεται μια σειρά από διευρυμένες λειτουργίες γλώσσας από το Foundation Kit, το οποίο, στην πράξη, λειτουργεί ως τυπική βιβλιοθήκη.

Αυτό παρέχει πιο προηγμένες δυνατότητες γλώσσας από ό, τι θα ήταν συνήθως διαθέσιμες στο Objective-C. Αυτό περιλαμβάνει ένα ευρύ φάσμα βασικών τάξεων για τύπους αντικειμένων που χρησιμοποιούνται συνήθως – αριθμοί, ημερομηνίες, συμβολοσειρές, διευθύνσεις URL, κανονικές εκφράσεις και μηνύματα σφάλματος.

Αυτό το πλαίσιο Foundation Kit είναι απαραίτητο σε εφαρμογές γραμμένες στο Objective-C. Ωστόσο, η ανάπτυξη εφαρμογών σε πλατφόρμες της Apple απομακρύνεται από το Objective-C, καθώς η Apple προωθεί τη νεότερη γλώσσα ανάπτυξης Swift.

Το Swift παρέχει εγγενώς πολλές από τις σύγχρονες λειτουργίες γλώσσας που προστέθηκαν από το Foundation Kit και δεν είναι σαφές ποιος ρόλος θα διαδραματίσει το Foundation και το Objective-C σε ένα Swift-centric μέλλον.

Το κακάο ως διεπαφή UI / UX

Αυτή η πτυχή του κακάου είναι ίσως η πιο προφανώς σημαντική για τους προγραμματιστές εφαρμογών.

Στην έκδοση OS X του Κακάο, το API εμπειρίας χρήστη παρέχεται από ένα πλαίσιο που ονομάζεται AppKit. Στο Cocoa Touch για iOS, αυτό ονομάζεται UIKit.

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

Η χρήση του AppKit και του UIKit είναι αυτό που κάνει μια εφαρμογή να φαίνεται και να νιώθει εγγενής στο σύστημα της Apple και να ανταποκρίνεται στις εισόδους (χειρονομίες, κλικ, κίνηση) με τον «σωστό» τρόπο.

Η μεγάλη διαφορά μεταξύ του κακάου και του κακάο αφής είναι η διαφορά μεταξύ του AppKit και του UIKit. Όσο η Apple έχει εργαστεί για να ενοποιήσει την εμπειρία χρήστη σε όλες τις πλατφόρμες, εξακολουθείτε να αλληλεπιδράτε με ένα iPhone διαφορετικά από ό, τι με έναν υπολογιστή Mac.

Εκτός από ελαφρώς διαφορετικά στοιχεία GUI, το UIKit περιλαμβάνει υποστήριξη για πράγματα όπως κατεύθυνση πυξίδας, GPS, επιταχυνσιόμετρο (κίνηση συσκευής) και οθόνη αφής.

Το κακάο ως διεπαφή λειτουργικού συστήματος

Οι εφαρμογές της Apple πρέπει επίσης να μπορούν να αλληλεπιδρούν με άλλες εφαρμογές και υπηρεσίες λειτουργικού συστήματος.

Εάν θέλετε να μπορείτε να κάνετε κλικ σε έναν αριθμό τηλεφώνου στην εφαρμογή συνομιλίας και να πραγματοποιήσετε αυτήν την κλήση, οι εφαρμογές πρέπει να είναι σε θέση να μιλούν μεταξύ τους.

Εάν θέλετε μια εφαρμογή επεξεργασίας μουσικής να μπορεί να λαμβάνει ήχο από ένα μικρόφωνο και να παίζει στα ηχεία σας, οι εφαρμογές πρέπει να μπορούν να αλληλεπιδρούν με υπηρεσίες λειτουργικού συστήματος.

Το κακάο παρέχει έναν ολόκληρο κατάλογο πλαισίων που παρέχουν πρόσβαση σε εφαρμογές και υπηρεσίες. Αυτά επιτρέπουν στις εφαρμογές να μην είναι μόνο αυτόνομα εκτελέσιμα, αλλά να υπάρχουν και να λειτουργούν σε ένα ολοκληρωμένο οικοσύστημα.

Το κακάο ως αρχιτέκτονας

Το κακάο υποστηρίζει δύο σημαντικά αρχιτεκτονικά σχέδια, ένα μέσα σε μια εφαρμογή και ένα στον τρόπο με τον οποίο μια εφαρμογή επικοινωνεί έξω από αυτήν.

Το κακάο γράφεται έχοντας κατά νου το αρχιτεκτονικό πρότυπο Model-View-Controller και υποστηρίζει την ανάπτυξη MVC σε όλα τα επίπεδα.

Η προβολή υλοποιείται από τα πλαίσια AppKit ή UIKit. Οι μονάδες ελεγκτή υποστηρίζονται μέσω μιας οικογένειας τάξεων ενσωματωμένων στο Foundation Kit. Τα μοντέλα και η απαιτούμενη σύνδεσή τους σε ένα επίπεδο επιμονής δεδομένων, αντιμετωπίζονται από ένα άλλο πλαίσιο που ονομάζεται Core Data.

Αυτός ο σχεδιασμός ενθαρρύνει (ορισμένοι λένε ότι επιβάλλει) μια αρχιτεκτονική Model-View-Controller σε εφαρμογές iOS και OS X.

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

Πόροι κακάου

Σε σύνδεση

Σεμινάρια

  • Βασικές έννοιες προγραμματισμού για κακάο και κακάο αφής

  • Εισαγωγή στις Οδηγίες κωδικοποίησης για το κακάο

  • Κακάο Dev Central

  • Προγραμματισμός Mac OS X με κακάο για αρχάριους.

Εργαλεία

  • Στοιχεία ελέγχου κακάου: στοιχεία διεπαφής χρήστη ανοιχτού κώδικα για iOS και OS X.

  • Cocoa Pods: διαχειριστής πακέτων για έργα κακάου.

Κοινότητα και συνεχής μάθηση

  • CocoaHeads: ένα παγκόσμιο δίκτυο τοπικών ομάδων συσκέψεων και συζήτησης αφιερωμένο στην ανάπτυξη Cocoa και Cocoa Touch.

  • Κακάο Subreddit.

Βιβλία

  • Swift Development with Cocoa: Ανάπτυξη για Mac και iOS App Store

  • Προγραμματισμός κακάου για OS X: Ο οδηγός Big Nerd Ranch

  • Μαθαίνοντας το κακάο με στόχο-Γ

  • Εκπαιδευτικό κακάο του Ry

  • Κακάο (Αναφορά προγραμματιστή)

  • Σχέδια κακάου.

Άλλοι πόροι ανάπτυξης OS X και iOS

Δεν μπορείτε να χρησιμοποιήσετε το κακάο ή το κακάο Touch στο κενό. Είναι ένα κομμάτι του μεγαλύτερου περιβάλλοντος ανάπτυξης εφαρμογών της Apple, το οποίο περιλαμβάνει Xcode, Objective-C και Swift. Αυτά τα διαφορετικά εργαλεία και τεχνολογίες συνεργάζονται για να σχηματίσουν ένα οικοσύστημα ανάπτυξης.

Xcode

Το Xcode είναι ένα απαιτούμενο ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) για την κατασκευή εφαρμογών OS X και iOS. Είναι σφιχτά ενσωματωμένο στο Swift, το κακάο, το Apple App store και το μεγαλύτερο οικοσύστημα της Apple.

Δεν υπάρχουν πολλά μαθήματα σχετικά με το Xcode συγκεκριμένα, καθώς καλύπτονται σε κάθε γενικό πόρο ανάπτυξης της Apple. Ένας εξαιρετικός πόρος, ωστόσο, είναι αυτό το Xcode Tutorial, το οποίο ενημερώνεται τακτικά καθώς βγαίνουν νέες εκδόσεις του Xcode.

Στόχος-Γ

  • Σχετικά με το Objective-C: ένα εισαγωγικό σεμινάριο από το κέντρο προγραμματιστών της Apple

  • Προγραμματισμός Objective-C

  • Προγραμματισμός Objective-C: Ο οδηγός Big Nerd Ranch.

Έχουμε επίσης μια πιο ολοκληρωμένη λίστα πόρων Objective-C.

Ταχύς

  • Η Swift Language Programming: ο επίσημος οδηγός της Apple

  • Swift Programming: The Big Nerd Ranch Guide: το οριστικό βιβλίο για το θέμα.

Έχουμε επίσης μια ολοκληρωμένη λίστα πόρων Swift.

Γενικοί πόροι ανάπτυξης της Apple

Το πρώτο μέρος για πληροφορίες και πόρους σχετικά με την ανάπτυξη για τις πλατφόρμες της Apple είναι ο ιστότοπος της Apple Developer.

Πολλά από τα καλύτερα βιβλία για ανάπτυξη Mac και iOS προέρχονται από το Big Nerd Ranch. Τα βιβλία τους για συγκεκριμένα θέματα αναφέρονται παραπάνω και θα πρέπει επίσης να δείτε τα βιβλία τους σχετικά με τον Προηγμένο προγραμματισμό Mac OS X και τον Προγραμματισμό iOS.

Άλλοι καλοί γενικοί πόροι:

  • Ray Wenderlich Tutorials: ένας από τους σχετικά λίγους παρόχους που επιστρέφει και ενημερώνει τα παλιά μαθήματα όταν η Apple ενημερώνει την πλατφόρμα.

  • Κανάλι προγραμματισμού της Apple στο YouTube: όχι επίσημο, αλλά πολύ χρήσιμο.

  • WeHeartSwift: ονομαστικά για το Swift, αλλά αυτός ο ιστότοπος καλύπτει όλες τις πτυχές της ανάπτυξης OS X και iOS.

  • NSHipster: ένα δημοφιλές blog σχετικά με την ανάπτυξη Mac και iOS, με πολλά μαθήματα σχετικά με τα “κομμάτια που παραβλέπονται στο Objective-C, το Swift και το κακάο”. Επίσης, θεωρούνται πολύ καλά στην κάλυψη τους, η οποία είναι πιθανώς μια δύναμη.

  • ObjC.io: βιβλία και άρθρα για προηγμένες τεχνικές και πρακτικές για ανάπτυξη iOS και OS X.

Συμπέρασμα…

Το Cocoa και το Cocoa Touch είναι τα θεμέλια της εγγενούς ανάπτυξης εφαρμογών για Mac και iOS.

Για iOS υπάρχουν και άλλοι τρόποι δημιουργίας μη εγγενών εφαρμογών για κινητά με HTML5 και JS, αλλά αυτό δεν συμβαίνει πάντα όσο αναμένεται – πραγματικά.

Εάν θέλετε να δημιουργήσετε την επόμενη μεγάλη εφαρμογή iPhone ή να δημιουργήσετε εφαρμογές Mac που ενσωματώνονται καλά με το OS X και συμμορφώνονται με τις προσδοκίες των χρηστών, πρέπει πραγματικά να ανακαλύψετε το Cocoa και το Cocoa Touch. Για την ανάπτυξη εγγενών εφαρμογών, δεν υπάρχουν πραγματικά υποκατάστατα.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map