Αντικειμενολογικός Προγραμματισμός με C++ Κομμάτι εκπαίδευσης
Ο αντικειμενολογικός προγραμματισμός στη γλώσσα C είναι μια προσέγγιση που εφαρμόζει αρχές όπως η ενθυλάκωση, η κληρονομικότητα και η πολυμορφία, χρησιμοποιώντας τη γλώσσα προγραμματισμού C.
Αυτή η καθοδηγούμενη από εκπαιδευτή, ζωντανή εκπαίδευση (διαδικτυακά ή επιτόπου) απευθύνεται σε προγραμματιστές που επιθυμούν να χρησιμοποιήσουν τη γλώσσα C για τον σχεδιασμό και την ανάπτυξη εφαρμογών με τμηματική δομή, εύκολη συντήρηση και ευρεία κλιμάκωση, εφαρμόζοντας τεχνικές αντικειμενολογικού προγραμματισμού.
Μέχρι το τέλος της εκπαίδευσης, οι συμμετέχοντες θα είναι σε θέση να:
- Εγκαταστήσουν και διαμορφώσουν ένα περιβάλλον ανάπτυξης στη γλώσσα C για δομημένο προγραμματισμό.
- Εφαρμόσουν αρχές αντικειμενολογικού σχεδιασμού χρησιμοποιώντας στοιχεία της γλώσσας C, όπως δομές (structs) και δείκτες συναρτήσεων.
- Εφαρμόσουν ενθυλάκωση και αφαιρετικότητα σε προγράμματα γραμμένα σε C.
- Σχεδιάσουν επαναχρησιμοποιήσιμο και εύκολα συντηρήσιμο κώδικα χρησιμοποιώντας μοτίβα αντικειμενολογικού προγραμματισμού στη γλώσσα C.
Μορφή του Μαθήματος
- Διαδραστική διάλεξη και συζήτηση.
- Πολλές ασκήσεις και εξάσκηση.
- Πρακτική υλοποίηση σε ζωντανό εργαστήριο.
Επιλογές Προσαρμογής του Μαθήματος
- Για να ζητήσετε προσαρμοσμένη εκπαίδευση για αυτό το μάθημα, επικοινωνήστε μαζί μας για να κανονίσουμε.
Εξέλιξη Κομματιού
- Επισκόπηση
- Χαρακτηριστικά
- Υπερφόρτωση Συναρτήσεων
- Τελεστής Επίλυσης Σκοπού
- Κλάσεις στη C++
- Προσδιοριστές Πρόσβασης
- Κατασκευαστής, Καταστροφέας
- Στατικά μέλη, Συναρτήσεις
- Φιλικές Κλάσεις, Φιλικές Συναρτήσεις
- Υπερφόρτωση Τελεστών
- Μετατροπές Δεδομένων
- Κληρονομικότητα, Πολυμορφία
- Διαχείριση Εξαιρέσεων, Πρότυπα
- Ροές Εισόδου και Εξόδου
Απαιτήσεις
- Κατανόηση βασικών εννοιών προγραμματισμού, όπως μεταβλητές, βρόχοι και συναρτήσεις
- Εμπειρία με τις θεμελιώδεις αρχές του προγραμματισμού σε C
- Βασικές γνώσεις σχετικές με την ανάπτυξη λογισμικού
Κοινό
- Προγραμματιστές C που επιθυμούν να μάθουν τεχνικές αντικειμενολογικού προγραμματισμού
- Προγραμματιστές λογισμικού που μεταβαίνουν από τον διαδικαστικό στον αντικειμενολογικό σχεδιασμό
- Μηχανικοί και προγραμματιστές με ενδιαφέρον για τη δομή μεγάλων εφαρμογών σε C
Κομμάτια Εκπαίδευσης χρειάζονται 5+ συμμετέχοντες.
Αντικειμενολογικός Προγραμματισμός με C++ Κομμάτι εκπαίδευσης - Κράτηση
Αντικειμενολογικός Προγραμματισμός με C++ Κομμάτι εκπαίδευσης - Ζήτημα Συμβουλευτικής
Σχόλια (1)
Καλά παραδείγματα, εστίαση στο πιο χρήσιμο υλικό
Piotr Sowinski - Intel Technology Poland
Κομμάτι - Object Oriented Programming with C++
Μηχανική Μετάφραση
Εφεξής Μαθήματα
Σχετικά Μαθήματα
Advanced Arduino Programming
14 ΏρεςΣε αυτή την εκπαίδευση με οδηγό και ζωντανά σε Ελλάδα, οι συμμετέχοντες θα μάθουν πώς να προγραμματίσουν το Arduino χρησιμοποιώντας προηγμένες τεχνικές, καθώς θα δουλεύουν στη δημιουργία ενός απλού συστήματος κλήσης ειδοποιήσεων από αισθητήρες.
Στο τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα μπορούν να:
- Να κατανοήσουν πώς λειτουργεί το Arduino.
- Να εξερευνήσουν βάθος στα κύρια συστατικά και τις λειτουργίες του Arduino.
- Να προγραμματίσουν το Arduino χωρίς τη χρήση του Arduino IDE.
Advanced Embedded Systems Development
35 ΏρεςΑυτή η διδασκαλία υπό την καθοδήγηση του εκπαιδευτή (online ή on-site) απευθύνεται σε μηχανικούς που επιθυμούν να μάθουν πώς να χρησιμοποιήσουν το embedded C για να προγραμματίσουν διάφορους τύπους μικροελέγχων που βασίζονται σε διαφορετικές αρχιτεκτονικές προεξεργάστη (8051, ARM CORTEX M-3 και ARM9).
Arduino Programming για Αρχηγότες
21 ΏρεςΣε αυτή την εκπαίδευση με διδάκτορα, σε ζωντανό περιβάλλον σε Ελλάδα, οι συμμετέχοντες θα μάθουν να προγραμματίζουν το Arduino για πρακτική χρήση, όπως τον έλεγχο φωτιών, μωτέρων και αισθητών κίνησης. Αυτό το μάθημα υποθέτει τη χρήση πραγματικών συσκευών σε ζωντανό εργαστήριο (χωρίς λογισμικά μιμημένες συσκευές).
Στο τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα μπορούν να:
- Προγραμματίζουν το Arduino για τον έλεγχο φωτιών, μωτέρων και άλλων συσκευών.
- Κατανοούν την αρχιτεκτονική του Arduino, συμπεριλαμβανομένων των εισόδων και των συνδυασμών για προσθετές συσκευές.
- Προσθέτουν συσκευές τρίτων, όπως LCDs, επιταχυντήρια, γYROSCOPEs και GPS trackers, για να επεκταθεί η λειτουργία του Arduino.
- Κατανοούν τις διάφορες επιλογές σε γλώσσες προγραμματισμού, από τη C μέχρι τις γλώσσες πρωτύπωσης και μετάδοσης.
- Εξετάζουν, αποσφαλίζουν και εγκαθιστούν το Arduino για την επίλυση πραγματικών προβλημάτων.
Κατασκευή Ρομπότ από την Αρχή
28 ΏρεςΣε αυτή την εξ αποστάσεως καθοδηγούμενη, ζωντανή εκπαίδευση, οι συμμετέχοντες θα μάθουν πώς να κατασκευάσουν ένα ρομπότ χρησιμοποιώντας τεχνική Arduino και τη γλώσσα Arduino (C/C++).
Στο τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα μπορούν να:
- Κατασκευάζουν και λειτουργίζουν ένα ρομποτικό σύστημα που περιλαμβάνει τόσο λογισμική όσο και υλικό
- Κατανοούν τα βασικά εννοίες που χρησιμοποιούνται στις ρομποτικές τεχνολογίες
- Συναρμόζουν μηχανήματα, αισθητήρες και μικροδιαχειριστές σε ένα λειτουργικό ρομπότ
- Σχεδίαζουν τη μηχανική δομή ενός ρομπότ
Ακροατήριο
- Προγραμματιστές
- Μηχανικοί
- Συνεργάτες
Μορφή του μαθήματος
- Μέρος παράσταση, μέρος συζήτηση, ασκήσεις και επαναληπτική πρακτική
Σημείωση
- Τα συστήματα υλικού θα καθοριστούν από τον καθοδηγώ με προηγούμενη προειδοποίηση, αλλά θα περιέχουν περίπου τα εξής συστατικά:
- Πλατφόρμα Arduino
- Έλεγχος μηχανήματος
- Αισθητήρας απόστασης
- Bluetooth slave
- Πλάκιο πρωτότυπων και καλώδια
- Καλωδίο USB
- Σύστημα εκτόπισης
- Οι συμμετέχοντες θα χρειάζεται να αγοράσουν το δικό τους υλικό.
- Εάν επιθυμείτε να προσαρμόσετε αυτή την εκπαίδευση, παρακαλούμε επικοινωνήστε μαζί μας για διαθέσιμες επιλογές.
Βασικά Στοιχεία της Ψηφιακής Επεξεργασίας Σήματος (DSP)
21 ΏρεςΑυτή η εκπαιδευτική δράση, η οποία πραγματοποιείται υπό την καθοδήγηση ενος εκπαιδευτή σε Ελλάδα (online ή on-site), απευθύνεται σε μηχανικούς και επιστήμονες που επιθυμούν να μάθουν και να εφαρμόζουν ψηφιακή επεξεργασία σήματος (DSP) για την αποδοτική διαχείριση διαφορετικών τύπων σήματος και τον καλύτερο έλεγχο πολυκανάλιων ηλεκτρονικών συστημάτων.
Στο τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα μπορούν να:
- Σύρριξη και ρύθμιση της απαραίτητης λογισμικής πλατφόρμας και εργαλείων για τη Ψηφιακή Επεξεργασία Σήματος.
- Κατανοήση των αρχών και προσδοκιών που είναι βασικές για τη DSP και τις εφαρμογές της.
- Περιήχηση με συσταδικά συστατικά ψηφιακής επεξεργασίας και χρήση τους στα ηλεκτρονικά συστήματα.
- Εξέλιξη αλγορίθμων και λειτουργικών συναρτήσεων χρησιμοποιώντας τα αποτελέσματα της DSP.
- Χρησιμοποίηση των βασικών χαρακτηριστικών λογισμικών πλατφόρμων DSP και σχεδιασμός φίλτρων σήματος.
- Συνθέτηση ψηφιακών προσομοιώσεων DSP και εφαρμογή διάφορων τύπων φίλτρων για DPS.
Embedded C Application Design Principles
14 ΏρεςΑυτή η εκπαίδευση με εγχώριο καθηγητή (online ή on-site) απευθύνεται σε πρόγραμματιστές C που θέλουν να μάθουν τα βασικά principia σχεδιασμού της ενσωματωμένης C.
Στο τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα είναι σε θέση να:
- Καταλάβουν τις προσεκτικότητες σχεδιασμού που καθιστούν αξιόπιστες τις εφαρμογές C.
- Ορίσουν τη λειτουργία μιας ενσωματωμένης συστήματος.
- Ορίσουν τη λογική και τη δομή προγράμματος για να επιτύχουν το επιθυμητό αποτέλεσμα.
- Σχεδιάσουν μια ή σπανική, λανθασμένη εφαρμογή.
- Εξασφαλίσουν τη βέλτιστη απόδοση από τον στόχο υπολογιστικής συστήματος.
Μορφή Εκπαίδευσης:
- Ανταλλαγή ενεργότητα και συζήτηση
- Εξασκήσεις και πράξη
- Χειρονομική υλοποίηση σε ένα περιβάλλον live-lab.
Ευελιξία Εκπαίδευσης:
- Για να αιτηθείτε μια εξαρτώμενη εκπαίδευση γι' αυτό το κωδικό, παρακαλούμε επικοινωνήστε μαζί μας για να διορθώσετε.
Υπολογιστικό Ενεργό Υποδοχείο (ECU) - Πρακτικά Vector
28 ΏρεςΑυτή η ζωντανή εκπαίδευση υπό την καθοδήγηση εκπαιδευτών στο Ελλάδα (διαδικτυακό ή επιτόπου) απευθύνεται σε μηχανικούς και τεχνικούς αυτοκινήτων μεσαίου επιπέδου που επιθυμούν να αποκτήσουν πρακτική εμπειρία στον έλεγχο, την προσομοίωση και τη διάγνωση των ECU χρησιμοποιώντας εργαλεία Vector όπως το CANoe και το CANAape.
Με το τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα είναι σε θέση:
- Κατανόηση του ρόλου και της λειτουργίας των ECU στα συστήματα αυτοκινήτων.
- Ρυθμίστε και διαμορφώστε εργαλεία Vector όπως το CANoe και το CANApe.
- Προσομοίωση και δοκιμή επικοινωνίας ECU σε δίκτυα CAN και LIN.
- Αναλύστε δεδομένα και πραγματοποιήστε διαγνωστικά σε ECU.
- Δημιουργήστε δοκιμαστικές περιπτώσεις και αυτοματοποιήστε τις ροές εργασιών δοκιμών.
- Βαθμονόμηση και βελτιστοποίηση των ECU χρησιμοποιώντας πρακτικές προσεγγίσεις.
Ελεγκτικό Τμήμα Η/Υ (ECU) - Θεωρητικά του Vector
21 ΏρεςΑυτή η ζωντανή εκπαίδευση υπό την καθοδήγηση εκπαιδευτών στο Ελλάδα (διαδικτυακό ή επιτόπου) απευθύνεται σε μηχανικούς αυτοκινήτων μεσαίου επιπέδου και προγραμματιστές ενσωματωμένων συστημάτων που επιθυμούν να κατανοήσουν τις θεωρητικές πτυχές των ECU, εστιάζοντας σε εργαλεία και μεθοδολογίες που βασίζονται σε Vector που χρησιμοποιούνται στον σχεδιασμό αυτοκινήτων και ανάπτυξη.
Με το τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα είναι σε θέση:
- Κατανοήστε την αρχιτεκτονική και τις λειτουργίες των ECU σε σύγχρονα οχήματα.
- Αναλύστε τα πρωτόκολλα επικοινωνίας που χρησιμοποιούνται στην ανάπτυξη ECU.
- Εξερευνήστε εργαλεία που βασίζονται σε Vector και τις θεωρητικές εφαρμογές τους.
- Εφαρμόστε αρχές ανάπτυξης βάσει μοντέλου στο σχεδιασμό της ECU.
Αναπτυξιακή Καροτογράφηση Συνδεδεμένου Linux Kernel και Δライβερ
14 ΏρεςΈνα δύο-ημερό κεφάλαιο με περίπου 60% χειροκίνητων εργαστηριακών άσκησεων, εστιαζόμενο στην εξέταση των εσωτερικών μηχανισμών, της αρχιτεκτονικής και της ανάπτυξης του Embedded Linux kernel. Η προσέγγιση εξετάζει επίσης πώς να γράφονται και να ενσωματώνονται διάφοροι τύποι device drivers.
Ποιοι θα έπρεπε να συμμετέχουν;
Μηχανικοί που ενδιαφέρονται για την ανάπτυξη του Linux kernel σε Embedded συστήματα και πλατφόρμες.
Εισαγωγή στο Ενσωματωμένο Linux (Πρακτική εκπαίδευση)
14 ΏρεςΔημιουργήστε ενσωματωμένα συστήματα Linux από την αρχή, χρησιμοποιώντας εργαλεία cross‑development βιομηχανικού επιπέδου και πρακτικά έργα. Αυτό το διήμερο μάθημα καλύπτει την ιστορία του Linux, τα μοντέλα ανάπτυξης ανοιχτού κώδικα, τους φορτωτές εκκίνησης, την κατασκευή προσαρμοσμένου συστήματος, τα συστήματα δόμησης και την αποσφαλμάτωση εφαρμογών. Με ποσοστό 60% πρακτικής εξάσκησης, οι συμμετέχοντες παραμετροποιούν φορτωτές εκκίνησης, μεταγλωττίζουν αλυσίδες εργαλείων, κατασκευάζουν συστήματα αρχείων και εκτελούν πραγματικές εργασίες ανάπτυξης ενσωματωμένου Linux.
FreeRTOS: Προγραμματισμός για Συστήματα Βεβαιωμένου Χρόνου Δουλειάς
14 ΏρεςΣε αυτή τη ζωντανή εκπαίδευση στο Ελλάδα, καθοδηγούμενη από εκπαιδευτές, οι συμμετέχοντες θα μάθουν πώς να κωδικοποιούν χρησιμοποιώντας το FreeRTOS καθώς προχωρούν στην ανάπτυξη ενός απλού έργου RTOS χρησιμοποιώντας έναν μικροελεγκτή.
Με το τέλος αυτής της εκπαίδευσης, οι συμμετέχοντες θα είναι σε θέση:
- Κατανοήστε τις βασικές έννοιες των λειτουργικών συστημάτων σε πραγματικό χρόνο.
- Μάθετε το περιβάλλον του FreeRTOS.
- Μάθετε πώς να κωδικοποιείτε με το FreeRTOS.
- Διασύνδεση μιας εφαρμογής FreeRTOS με περιφερειακά υλικού.
Εφαρμογή Τεχνητής Νοημοσύνης σε Μικροντυπώματα με TinyML
21 ΏρεςΑυτή η εκπαίδευση με διδάσκοντα, ζωντανή σε Ελλάδα (online ή offline), στόχο της έχει τους μεσαιτιακούς μηχανικούς ενσωματωμένων συστημάτων και τους αναπτυξτές AI που θέλουν να εφαρμόσουν μοντέλα machine learning σε microcontrollers χρησιμοποιώντας TensorFlow Lite και Edge Impulse.
Ακολουθήσαντας αυτή την εκπαίδευση, οι συμμετέχοντες θα μπορούν να:
- Διαθέσουν γνώση των βασικών της TinyML και των πλεονεκτημάτων της για εφαρμογές edge AI.
- Εγκαθιδρύσουν ένα περιβάλλον ανάπτυξης για TinyML projects.
- Διαμόρφωση, τερματοποίηση και εγκατάσταση AI μοντέλων σε low-power microcontrollers.
- Χρήση TensorFlow Lite και Edge Impulse για την εφαρμογή πρακτικών TinyML εφαρμογών.
- Διευκόλυνση AI μοντέλων για αποδοτικότητα ισχύος και περιορισμούς υπολογιστικής μνήμης.
Yocto Project
28 ΏρεςΣε αυτήν την εκπαίδευση με εισηγητή, ζωντανά στο Ελλάδα, οι συμμετέχοντες θα μάθουν πώς να δημιουργήσουν ένα σύστημα κατασκευής για ενσωματωμένα Linux βασισμένο στο Yocto Project.
Με την ολοκλήρωση αυτής της εκπαίδευσης, οι συμμετέχοντες θα είναι σε θέση:
- Να κατανοήσουν τις θεμελιώδεις έννοιες πίσω από ένα σύστημα κατασκευής Yocto Project, συμπεριλαμβανομένων των συνταγών (recipes), των μεταδεδομένων και των επιπέδων (layers).
- Να κατασκευάσουν μια εικόνα Linux και να την εκτελέσουν υπό προσομοίωση.
- Να εξοικονομήσουν χρόνο και ενέργεια κατά την κατασκευή ενσωματωμένων συστημάτων Linux.