Εξέλιξη Κομματιού
Εισαγωγή
Εβδομάδα 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 και τελικές παρατηρήσεις
Περίληψη και Επόμενα Βήματα
Απαιτήσεις
- Βασική κατανόηση των εννοιών προγραμματισμού
Ακροατήριο
- Προγραμματιστές κινητών τηλεφώνων
- Προγραμματιστές
Σχόλια (5)
Πολύ χρήσιμες πρόσθετες πληροφορίες
Grzegorz - Comp S.A.
Κομμάτι - BLoC Pattern
Μηχανική Μετάφραση
Ο Εντουάρδος είναι ένας υπέροχος διευθυντής συναντήσεων
Zibusiso Ncube - Agricatural Research Council
Κομμάτι - Ionic 4 and Angular for Developers
Μηχανική Μετάφραση
Ίσως περισσότερα άσκημα θα ήταν καλύτερα για το μάθημα, αλλά ο χρόνος ήταν πολύ λίγος.
Gianpiero Arico' - Urmet Spa
Κομμάτι - Embedded Linux Systems Architecture
Μηχανική Μετάφραση
Η γνώση του Miguel στο θέμα ήταν εκτετάμενη. Έκανε την κατάρτιση διαφανή και το ρυθμό ισορροπημένο, προσθέτοντας σε κάθε τμήμα νέους χαρακτηρισμούς όπως χρειάζονταν. Κάλυψε πάντα ό,τι ζητήθηκε και απάντησε σε κάθε ερώτημα με τέλειο τρόπο. Ήταν μια πολύ χαραδευτική εμπειρία.
Paul Coaton - SEMPCheck Services
Κομμάτι - Flutter Development Bootcamp with Dart
Μηχανική Μετάφραση
Ο εκπαιδευτής ήταν ζηλωτικός, χρηστός και αγαπούσε το θέμα.
Isaac Murphy - Royal New Zealand Airforce
Κομμάτι - Build Native iOS and Android Apps with Flutter
Μηχανική Μετάφραση