Εξέλιξη Κομματιού

Βασικά Έννοιες της Προγραμματισμού

  • Οι έννοιες 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 
  • Εφαρμογή βάσης ιδέας σας

Απαιτήσεις

Πρέπει να έχετε τουλάχιστον μία εμπειρία γλώσσας προγραμματισμού στο παρελθόν.

 35 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετοχαστή

Σχόλια (3)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες