Course Outline

Εισαγωγή

Εβδομάδα 1: Εισαγωγή στο Mobile Development

  • Οικοσύστημα και τάσεις εφαρμογών για κινητά
    • Εισαγωγή στο τοπίο των εφαρμογών για κινητά (iOS και Android)
    • Διαφορές μεταξύ εγγενών, υβριδικών και πολλαπλών πλατφορμών εφαρμογών
    • Επισκόπηση της ροής εργασίας και των εργαλείων ανάπτυξης εφαρμογών για κινητά
  • Native vs Cross-Platform Development
    • Βασικές διαφορές μεταξύ της ανάπτυξης εφαρμογών για μια ενιαία πλατφόρμα (εγγενής) και πολλαπλών πλατφορμών (cross-platform)
    • Πλεονεκτήματα και μειονεκτήματα κάθε προσέγγισης
    • Επισκόπηση κοινών εγγενών πλατφορμών (iOS, Android) και εργαλείων πολλαπλών πλατφορμών (React Native, Flutter)
  • Εισαγωγή στο JavaΣενάριο Programming
    • Βασική σύνταξη και δομή του JavaScript
    • Μεταβλητές, σταθερές και τύποι δεδομένων (αριθμός, συμβολοσειρά, boolean, αντικείμενο)
    • Τελεστές και εκφράσεις
    • Έλεγχος ροής: if , else , switch
    • Εισαγωγή στις λειτουργίες και το πεδίο εφαρμογής (παγκόσμια έναντι τοπικής εμβέλειας)
  • Ρύθμιση του Xcode για iOS Ανάπτυξη
    • Εισαγωγή στο Xcode IDE: Διεπαφή, εργαλεία και ροή εργασίας
    • Εγκατάσταση Xcode και εκτέλεση του προσομοιωτή iOS
    • Εισαγωγή στη γλώσσα προγραμματισμού Swift
    • Γράψτε μια βασική εφαρμογή Swift και εκτελέστε την στον προσομοιωτή iOS
  • Ρύθμιση Android Studio για Android Ανάπτυξη
    • Εγκατάσταση του Android Studio και ρύθμιση του περιβάλλοντος
    • Διαμόρφωση και χρήση του εξομοιωτή Android
    • Εισαγωγή στη γλώσσα προγραμματισμού Kotlin και βασική σύνταξη
    • Γράψτε μια βασική εφαρμογή Kotlin και εκτελέστε την στον εξομοιωτή Android
  • Ρύθμιση React Εγγενούς Αναπτυξιακού Περιβάλλοντος
    • Εγκατάσταση Node.js και React Native CLI
    • Εισαγωγή στην Expo και δημιουργία έργου με την Expo
    • Εκτέλεση μιας απλής εφαρμογής "Hello World" σε εξομοιωτές iOS και Android

Εβδομάδα 2: iOS και Android Βασικές αρχές

  • Εισαγωγή στο Swift και στο Xcode IDE
    • Μεταβλητές και τύποι δεδομένων στο Swift (Int, Float, String, Bool, κ.λπ.)
    • Σταθερές με let και μεταβλητές με var
    • Δηλώσεις ροής ελέγχου ( if , switch , loops)
    • Λειτουργίες και παράμετροι στο Swift
    • Διαχείριση σφαλμάτων στο Swift
  • Σχεδιασμός διεπαφής χρήστη σε iOS
    • Εισαγωγή στα storyboards και στο Xcode Interface Builder
    • Σχεδιασμός διατάξεων εφαρμογών χρησιμοποιώντας Αυτόματη διάταξη και περιορισμούς
    • Προσθήκη στοιχείων διεπαφής χρήστη: κουμπιά, ετικέτες, πεδία κειμένου, εικόνες
    • Χειρισμός αλληλεπιδράσεων και συμβάντων χρηστών (π.χ. κλικ κουμπιών)
    • Δημιουργία απλής φόρμας σύνδεσης και επικύρωση εισόδου χρήστη
  • Εισαγωγή στο Kotlin και στο Android Studio IDE
    • Βασική σύνταξη Kotlin (μεταβλητές, τύποι δεδομένων και συναρτήσεις)
    • Κατανόηση των μηδενικών κατηγοριών ασφάλειας και δεδομένων του Kotlin
    • Εισαγωγή στην Android αρχιτεκτονική και στοιχεία εφαρμογών (Activities, Fragments)
    • Χειρισμός του κύκλου ζωής της δραστηριότητας σε Android εφαρμογές
  • Σχεδιασμός διεπαφής χρήστη σε Android
    • Σχεδιασμός Android UI χρησιμοποιώντας XML αρχεία διάταξης
    • Εργασία με διαχειριστές διάταξης (LinearLayout, RelativeLayout, ConstraintLayout)
    • Προσθήκη διαδραστικών στοιχείων (κουμπιά, προβολές κειμένου, επεξεργασία κειμένων)
    • Χρησιμοποιώντας το Java/Kotlin για το χειρισμό εισόδου χρήστη και μεταβάσεις δραστηριότητας
    • Δημιουργία φόρμας σύνδεσης με επικύρωση εισόδου
  • Βασικά στοιχεία εντοπισμού σφαλμάτων σε Xcode και Android Studio
    • Πώς να χρησιμοποιήσετε τα σημεία διακοπής, τα αρχεία καταγραφής και την κονσόλα εντοπισμού σφαλμάτων
    • Συνήθη εργαλεία και τεχνικές εντοπισμού σφαλμάτων για iOS (Xcode Instruments, Simulator)
    • Συνήθη εργαλεία εντοπισμού σφαλμάτων για Android (Logcat, Android Γέφυρα εντοπισμού σφαλμάτων)
  • Δοκιμή και εκτέλεση εφαρμογών σε πραγματικές συσκευές
    • Σύνδεση φυσικών συσκευών στο Xcode και στο Android Studio
    • Ανάπτυξη εφαρμογών σε φυσικές συσκευές (iPhone και Android τηλέφωνα)
    • Προσομοίωση διαφορετικών συνθηκών δικτύου, επιπέδων μπαταρίας και μετρήσεων απόδοσης

Εβδομάδα 3: Ανάπτυξη μεταξύ πλατφορμών με React Native

  • Εισαγωγή στο React Native και JavaScript για κινητά
    • Τι είναι το React Native και γιατί να το χρησιμοποιήσετε;
    • Επισκόπηση του τρόπου με τον οποίο το React Native μεταφράζει το JavaScript σε εγγενή κώδικα
    • Σύνταξη JSX: Γράψιμο δομών που μοιάζουν με HTML στο JavaScript
    • React εξαρτήματα: Λειτουργικά έναντι εξαρτημάτων που βασίζονται στην κατηγορία
    • State and Props: Διαχείριση ροής δεδομένων εντός React Native components
  • Styling σε React Native
    • Εισαγωγή στο Flexbox και η σημασία του στη σχεδίαση διάταξης
    • Δημιουργία αποκριτικών διατάξεων και για το iOS και το Android
    • Εφαρμογή στυλ για συγκεκριμένη πλατφόρμα χρησιμοποιώντας την ενότητα React Native's Platform
  • React Πλοήγηση για εφαρμογές μεταξύ πλατφορμών
    • Εισαγωγή στο React Πλοήγηση και δοχεία πλοήγησης
    • Δημιουργία πλοήγησης στοίβας για μεταβάσεις οθόνης
    • Εφαρμογή πλοήγησης καρτελών και συρταριών για πιο σύνθετες εφαρμογές
    • Διαβίβαση δεδομένων μεταξύ οθονών και διαχείριση καταστάσεων πλοήγησης
  • Access Λειτουργίες εγγενούς συσκευής
    • Χρήση λειτουργιών της συσκευής όπως η κάμερα και η τοποθεσία στο React Native
    • Ενσωμάτωση API όπως Geolocation, Camera και AsyncStorage
    • Χειρισμός αδειών για πρόσβαση στο υλικό της συσκευής (διαφορές iOS και Android)
    • Αποθήκευση δεδομένων τοπικά με το AsyncStorage και ενσωμάτωση βιβλιοθηκών τρίτων για επιμονή
  • Προετοιμασία εφαρμογών για ανάπτυξη
    • Διαμόρφωση ρυθμίσεων εφαρμογής για παραγωγή σε Xcode και Android Studio
    • Δημιουργία APK για Android και δοκιμή σε πραγματικές συσκευές
    • Προετοιμασία iOS εφαρμογών για υποβολή στο App Store (εικονίδια εφαρμογών, πιστοποιητικά υπογραφής)
    • Ολοκλήρωση React εγγενών έργων για ανάπτυξη παραγωγής και στις δύο πλατφόρμες
  • Τελική Παρουσίαση Έργου
    • Παρουσίαση της τελικής cross-platform React Native app στην τάξη
    • Συλλογή σχολίων και συζήτηση πιθανών βελτιώσεων
    • Τελική συνεδρία Q&A και τελικές παρατηρήσεις

Περίληψη και Επόμενα Βήματα

Requirements

  • Βασική κατανόηση των εννοιών προγραμματισμού

Ακροατήριο

  • Προγραμματιστές κινητών τηλεφώνων
  • Προγραμματιστές
 105 Hours

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories