T ίτλος του μαθήματος | Αντικειμενοστραφής Προγραμματισμός
Κωδικός αριθμός μαθήματος | ELE476
Τύπος του μαθήματος | Επιλογής
Επίπεδο του μαθήματος | Προπτυχιακό
Έτος σπουδών | Τέταρτο
Εξάμηνο | Όγδοο
Πιστωτικές μονάδες ECTS | 5
Όνομα του διδάσκοντος/των διδασκόντων | Δ. Μπακάλης, Επ. Καθηγητής
Επιδιωκόμενα μαθησιακά αποτελέσματα του μαθήματος | Στο τέλος αυτού του μαθήματος ο φοιτητής θα μπορεί να επιλύει συγκεκριμένα προβλήματα με τον υπολογιστή δημιουργώντας αντικειμενοστραφή προγράμματα υπολογιστών σε γλώσσα C++ ή Java. αναλύει υπάρχοντα αντικειμενοστραφή προγράμματα υπολογιστών γραμμένα σε γλώσσες προγραμματισμού C++ ή Java και να καθορίζει τη λειτουργία τους. επεκτείνει ή να διορθώνει υπάρχοντα αντικειμενοστραφή προγράμματα υπολογιστών γραμμένα σε γλώσσες C++ ή Java. διακρίνει ομοιότητες και διαφορές μεταξύ των διαφόρων δομών της C++ και της Java.
Δεξιότητες | Στο τέλος αυτού του μαθήματος ο φοιτητής θα έχει περαιτέρω αναπτύξει τις ακόλουθες δεξιότητες Ικανότητα να χρησιμοποιεί τον υπολογιστή ως εργαλείο ανάπτυξης εφαρμογών και επίλυσης επιστημονικών προβλημάτων. Ικανότητα να επιδεικνύει γνώση και κατανόηση των ουσιωδών δεδομένων, εννοιών, αρχών και θεωριών που σχετίζονται με τον αντικειμενοστραφή προγραμματισμό υπολογιστών. Ικανότητα να εφαρμόζει αυτή τη γνώση και κατανόηση στη λύση ποιοτικών και ποσοτικών προβλημάτων μη οικείας φύσης. Ικανότητα να υιοθετεί και να εφαρμόζει μεθοδολογία στη λύση μη οικείων προβλημάτων. Δεξιότητες μελέτης που χρειάζονται για τη συνεχή επαγγελματική ανάπτυξη. Ικανότητα να αλληλεπιδρά με άλλους σε προβλήματα προγραμματισμού υπολογιστών ή διεπιστημονικής φύσης.
Προαπαιτήσεις | Δεν υπάρχουν προαπαιτούμενα μαθήματα. Οι φοιτητές πρέπει να έχουν τουλάχιστον βασικές γνώσεις προγραμματισμού.
Περιεχόμενα (ύλη) του μαθήματος | Εισαγωγή στον αντικειμενοστραφή προγραμματισμό (C++ / Java). 1. Εισαγωγή στη C++ και στις κλάσεις 2. Δομημένος Προγραμματισμός (Δομές επιλογής και επανάληψης) 3. Συναρτήσεις, Υπερφόρτωση συναρτήσεων, Αναδρομή 4. Πίνακες, Διανύσματα, Δείκτες, Συμβολοσειρές 5. Κλάσεις 6. Υπερφόρτωση τελεστών 7. Κληρονομικότητα, Πολυμορφισμός 8. Συμβολοσειρές με την κλάση string 9. I/O Streams, File Processing 10. Εισαγωγή στη Java 11. Περισσότερα για τη Java 12. Σύγκριση των αντικειμενοστραφών γλωσσών (C++, Java)
Συνιστώμενη βιβλιογραφία προς μελέτη | 1. H. M. Deitel, P. J. Deitel, «C++ Προγραμματισμός», 4η έκδοση, 2003 2. H. Schildt, «C++ Βήμα πρός Βήμα», Εκδόσεις Μ. Γκιούρδας, 2005. 3. H. M. Deitel, P. J. Deitel, «Java How to Program», 6η έκδοση, 2005
Διδακτικές και μαθησιακές μέθοδοι | Παραδόσεις με χρήση παρουσιάσεων σε MS Powerpoint, φροντιστήρια με δημιουργία προγραμμάτων για επίλυση προβλημάτων.
Μέθοδοι αξιολόγησης/βαθμολόγησης | 1) Γραπτή εξέταση (100% του τελικού βαθμού)
Γλώσσα διδασκαλίας | Ελληνικά. M πορούν όμως να γίνουν οι παραδόσεις στην αγγλική γλώσσα στην περίπτωση που αλλοδαποί φοιτητές παρακολουθούν το πρόγραμμα.