Μεθοδολογίες & Γλώσσες Προγραμματισμού Ι

Πανεπιστήμιο Αιγαίου

Τμήμα Μηχανικών Πληροφοριακών & Επικοινωνιακών Συστημάτων

Έτος: 2015-2016

Διδάσκων: Εργίνα Καβαλλιεράτου

Περιγραφή Μαθήματος

Το μάθημα προσπαθεί να περάσει τη φιλοσοφία του αντικειμενοστρεφούς προγραμματισμού. Για το λόγω αυτό περιλαμβάνει παραδόσεις που εξηγούν πως από το πρόβλημα μπορούμε να φτάσουμε στις κλάσεις. Ωστόσο, για να μη γίνει βαρετό, οι παραδόσεις αυτές αφορούν μικρά μέρη του θεωρητικού μαθήματος, που κατά τα άλλα περιέχει απλά παραδείγματα και τεχνικές από C++.

Video-Διαλέξεις

Διάλεξη 01: Αντικειμενοστρεφής Προγραμματισμός

Μειονεκτήματα Δομημένου Προγραμματισμού Αντικειμενοστρεφής προγραμματισμός Ορισμοί Κλάσεις Αντικείμενα Χαρακτηριστικά ΑΠ

Διάλεξη 02: Συναρτήσεις

Επικοινωνία με την κλάση Πρόσβαση σε στοιχεία κλάσης Τελεστής Εμβέλειας :: Απόδοση τιμής σε μεταβλητή Επιστροφή δεδομένων Constructor (Δομητής ) Destructor (αποδομητής) Εμβέλεια Εμφωλίαση Τύπος αποθήκευσης Συναρτήσεις ως παράμετροι Πέρασμα με τιμή Πολλαπλά return Προκαθορισμένοι Παράμετροι Υπερφόρτωση συναρτήσεων Inline συναρτήσεις Αναδρομή

Διάλεξη 03: Κλάσεις

Constructor και destructor Συναρτήσεις-μέλη const Inline συναρτήσεις Δηλώσεις κλάσεων Σύνθετες κλάσεις

Διάλεξη 04: Αντικειμενοστρεφή Ανάλυση & Σχεδιασμός

Περίπτωσης χρήσης UML Ροή εργασιών για τον προσδιορισμό απαιτήσεων/περιπτώσεων χρήσης Διάγραμμα δραστηριότητας περίπτωσης χρήσης Μοντέλο ανάλυσης Πακέτα ανάλυσης Αρχιτεκτονική Ανάλυση Ανάλυση περιπτώσεων Χρήσης Εντοπισμός Συνεργασίας Ανάλυση Κλάσεων Προσδιορισμός πεδίων Προσδιορισμός σχέσεων

Διάλεξη 05: Είσοδος - Έξοδος

Είσοδος / Έξοδος στη C++ Ειδικοί χαρακτήρες Έξοδος σε αρχείο Ανάγνωση από αρχείο Παραδείγματα

Διάλεξη 07: Δείκτες

Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο Επαναδέσμευση Δείκτες και πίνακες Δείκτες ως παράμετροι Δείκτες και strings Pointer σε κλάση Δέσμευση μνήμης σε κλάση Δείκτης this

Διάλεξη 09: Κληρονομικότητα

Κλάση Βάσης Παράγωγη κλάση Απλή κληρονομικότητα Protected δεδομένα Constructors & Destructors overloading Overriding Overloading Vs Overriding Απόκρυψη συναρτήσεων Κλήση overridden συνάρτησης Virtual Συναρτήσεις Abstract Classes Κανόνες πρόσβασης Κληρονομικότητας

Διάλεξη 10: Πολλαπλή Κληρονομικότητα - Πολυμορφισμός

Ανάγκη για πολλαπλή κληρονομικότητα Πολλαπλή κληρονομικότητα Constructors σε αντικείμενα πολλαπλής κληρονομικότητας Διπλή συνάρτηση Κοινή κλάση βάσης Virtual Κληρονομικότητα Mixin classes Αφηρημένοι τύποι δεδομένων Pure Virtual συναρτήσεις

Διάλεξη 12: Εξαιρέσεις

Εξαιρέσεις Εμφωλευμένες Εξαιρέσεις Εξαιρέσεις και συναρτήσεις Εξαιρέσεις σε διαδοχικά καλούμενες συναρτήσεις Κλάση exception Δημιουργία δικών μας εξαιρέσεων

Διάλεξη 13: Σύνοψη

Επανάληψη στις βασικές έννοιες του μαθήματος

Διάλεξη 14: Ενότητα Εργαστηρίου Μαθήματος

Περιλαμβάνει δείγματα από εργαστηριακές ασκήσεις του μαθήματος.