Εξέλιξη Κομματιού
Βασικά Έννοιες της Προγραμματισμού
- Οι έννοιες OOPS (Object-Oriented Programming System)
- Τι είναι το λογισμικό
- Η ιδέα των διοργανωμένων και μη διοργανωμένων δωματίων στην προγραμματισμό
- Γιατί Λογισμικό
Γιατί το Apple και το iOS
- Γιατί το iOS
- Ιστορία του Apple
- Ιστορία του iOS
- Το USP (Unique Selling Proposition) του Apple
- Για τι είναι γνωστό το Apple
- UX (User Experience) vs UI (User Interface)
Περιβάλλον Προγραμματισμού
- Απαιτήματα περιβάλλοντος προγραμματισμού
- Xcode και το iOS SDK (Software Development Kit)
- Εγγραφή Προγραμματιστή Apple
- Λόγοι αποδοχής προγραμμάτων
- Οδηγίες Ανθρώπινης Διεπαφής (Human Interface Guidelines)
Xcode iOS Projects
- Γενική Περιγραφή του Xcode
- Δημιουργία προ젝τών iOS
- Εκτέλεση σε προβολέα και πραγματικά συσκευές
Βασικά του Swift
- Γιατί Objective-C και τώρα γιατί Swift;
- Εντυπωσιακά στοιχεία του Swift
- Μεταβλητές
- Σταθερές
- Hello World στο Swift
- Δημιουργία UILabel με κώδικα
Εικόνα Κινητής Ανάπαρξης και φόρτωση εικόνων
- UIImageView
- Βασικές αναδρομές UIView και UIImageView
- Playground
- Αναβολή φόρτωσης εικόνων (Lazy loading)
- Αναβολή ιδιότητες (Lazy properties)
Κλάσεις Swift και Σκηνές
- Δημιουργία κλάσεων Swift
- Διαχείριση μνήμης
- Συνδέσεις και αδύναμες αναφορές (Strong and weak references)
- Τύποι πολιτείων και διαχειριστές στο Swift
- Πρωτόκολλα, Hashable και Printable
- Κληρονομικότητα (Inheritance)
- Δημιουργία Σκηνών
- Εφαρμογή View Controllers
- Playground
Κύκλος Ζωής και Αλυσίδα Απόκρισης (Responder Chain)
- Κύκλος Ζωής View
- Κύκλος Ζωής Εφαρμογής
- Αλυσίδα Απόκρισης - touchBegan, touchMoved κ.ά. μέθοδοι
- NSTimer
Ευελιξία Layout (Adaptive Layout)
- Storyboards vs XiB
- Υποστήριξη πολλών συσκευών
- Μέγεθος εικόνων και κατεύθυνση συσκευών
- Κατασκευή χρηστικής διεπαφής με κώδικα
- Outlets και Actions
- Πρωτόκολλα - Απαιτουμένα και επιλογικά
- Διαχείριση μνήμης
Ειδοποιήσεις και Τοποθέτηση (Localization)
- Push Notification - Σιωπηρό και Push
- Τοποθέτηση
Εξαμήνωση του Objective-C
- Ιδιότητες (Properties)
- Κατηγορίες (Categories)
- Σύνταξη συναρτήσεων
- Ιδιότητες - readWrite και readOnly
Ενσωμάτωση Κοινωνικών Δικτύων στο iOS :
- Ενσωμάτωση Facebook
- Ενσωμάτωση Twitter
- Ενσωμάτωση Email
- Ενσωμάτωση τρίτης εφαρμογής
Συστατικά UI στο iOS :
- UITextField
- UITextView
- UISegementControl
- UISlider
- UiSwtich
- UIProgessBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- SearchBar
Άλλα βασικά συστατικά και άλλα στο iOS :
- Ομάδες και φακέλοι
- Closure
- Tuples
- URL Session
- URLRequest
- UIAlertView
- UIActivityIndicatorView
- internal, public, private
- Guard
- Optionals
Διαχείριση Συμφύλων (Threading) στο iOS :
- GCD (Grand Central Dispatch)
- NSOperationQueue
- Κύριος και Υπόσυμφυλοι (Main Thread and Background Threads)
Χρήση Διεπαφής χρήστη
- Κουμπιά και διαχειριστές (handlers)
- Αναγνώριση πανοραμικής ενέργειας (Pan gesture recognition)
- Αναγνώριση τύπτη του δάκτυλου (Tap gesture recognition)
- Εξομαλυνμένη Τραπέζη (Custom Table View)
- Βασική χρήση Collection View
Πολυστεγνές Εφαρμογή (Multiple Screen Applications)
- Ναβίγαση στις τραπέζες
- Εφαρμογές και με διακλαδωμένους καταχωριστές (Tabbed Applications)
- Navigation Controllers
- Παρουσίαση ελεγχού με διάφορες αναδρομές και κινήσεις ενώ παρουσιάζεται και χτίζεται
Υπηρεσίες Τοποθεσίας (Location Services)
- Θέση και τόλμη (Position and Altitude)
- Κατεύθυνση βόρου (Compass Direction)
Πρόσβαση και Αποθήκευση συσκευών
- Αποθήκευση αρχείων (File Storage)
- Πρόσβαση βιβλιοθήκης μουσικής (Music Library Access)
- CoreData και Sqlite στο iOS
- Key Chain
- User Defaults
- PLists
- NSSearchDomain
- Εννοιολογία καταλόγων και ασφάλειας εφαρμογών NSSearchDomain
Πλαίσιο Ομιλίας (Speech Framework)
- Ομιλία σε κείμενο (Speech to text)
- Κείμενο σε ομιλία (Text to Speech)
Πλαίσιο Πολυπλευρότητας (Multipeer Framework)
- Αποστολή δεδομένων από μία συσκευή σε άλλη
- Σύνδεση πολλών συσκευών
Δικτύωση (Networking)
- Πρόσβαση δικτύου (Network Access)
- Σειριακοποίηση και ανάλυση JSON
- REST Web Services
- Βασική ομαλοποίηση XML (Basics of XML Parsing)
Μεταφόρτωση εφαρμογής στο App Store
- ITunes Connect
- Developer Portal - Provisioning profiles
- Κατάθεση και διανομή (Deployment and distribution)
- Εκτέλεση εφαρμογής σε πραγματικές συσκευές
- Μεταφόρτωση εφαρμογής στο App Store
Εφαρμογές
- Παιχνίδι Dots: https://itunes.apple.com/app/the-dots-free/id850315430
- Notes app : Notes App
- Εφαρμογή Επαφών (Contacts App)
- Λήψη δεδομένων από τον server μέσω open API, και δημιουργία τραπέζης και πλήρημα δεδομένων, εμφάνιση λεπτομερειών και εμφάνιση Search bar για αναζήτηση και χρήση Core Data για την αποθήκευση δεδομένων offline
- Εφαρμογή βάσης ιδέας σας
Απαιτήσεις
Πρέπει να έχετε τουλάχιστον μία εμπειρία γλώσσας προγραμματισμού στο παρελθόν.
Σχόλια (3)
Η μέθοδος μετάδοσης γνώσεων και η γνώση του εκπαιδευτή.
Jakub Rekas - Bitcomp Sp. z o.o.
Κομμάτι - Machine Learning on iOS
Μηχανική Μετάφραση
He's an experienced trainer with a real life experience in the topic he was teaching. That led the course to cover the most important topics which interests any developer working in the field, and small details would be easily overseen if he was not working in this platform. Moreover, he was giving the course using the latest versions of is and Swift (10 \ 3) and that is a huge advantage to be adapting such new technology in short time.
Abdullah Alaradi - Thiqah Business Services
Κομμάτι - iPhone and iPad Development in Swift for iOS 8 and Xcode 6
Μηχανική Μετάφραση
Antonio gave is much background information, best practices and showed us useful tools to speed up our development process.
Philipp Hunger
Κομμάτι - Cross-platform mobile development with PhoneGap/Apache Cordova
Μηχανική Μετάφραση