Αντικειμενοστραφής Προγραμματισμός (Θεωρία)

Πληροφορίες Μαθήματος

Εξάμηνο Μαθήματος:
3
Μέρος Μαθήματος:
Θεωρία
Κωδικός Μέρους Μαθήματος:
244302
Εβδομαδιαίες Ώρες Διδασκαλίας:
3
Μονάδες ECTS Μαθήματος:
7
Διαθέσιμο σε σπουδαστές ERASMUS:
Όχι
Προσωπικό Μαθήματος:


Σκοπός Μαθήματος

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


Μαθησιακοί Στόχοι

Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν:

  • Να κατανοούν τις έννοιες του αντικειμενοστραφούς προγραμματισμού και τις αρχές χρήσης κληρονομικότητας, πολυμορφισμού, ενθυλάκωσης και υπερφόρτωσης μεθόδους.
  • Διακρίνουν κλάσεις, αντικείμενα και μέλη κλάσεων καθώς και τις σχέσεις τους μεταξύ τους ώστε να επιλύουν ένα πρόβλημα.
  • Δημιουργούν εφαρμογές κάνοντας χρήση ενδεδειγμένων τεχνικών διασύνδεσης καθώς και σωστής δόμησης προγράμματος στις οποίες βασίζεται ο αντικειμενοστραφής προγραμματισμός.
  • Να χρησιμοποιούν εργαλεία για εκσφαλμάτωση προγραμμάτων καθώς και χρήση εργαλείων που βοηθούν συνεργασία στην ανάπτυξη προγράμματος.


Γενικές Ικανότητες

  • Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση προηγμένων εργαλείων της Java.
  • Λήψη Αποφάσεων: Συνδυασμός τεχνικών για πιο προηγμένα προβλήματα.
  • Αυτόνομη εργασία: Γνώση των εργαλείων ανάπτυξης καθώς και των εγχειριδίων και του Διαδικτύου για εξεύρεση λύσεων.
  • Ομαδική εργασία: Ικανότητα διαλόγου και συνεργασίας για την ανάπτυξη σύνθετων εφαρμογών.


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

  1. Εισαγωγή στο Προγραμματισμό με Java
  2. Επιλογές, Επαναλήψεις
  3. Χαρακτήρες και Συμβολοσειρές
  4. Μέθοδοι
  5. Πίνακες
  6. Αντικείμενα και κλάσεις
  7. Κληρονομικότητα και Πολυμορφισμός
  8. Προηγμένες τεχνικές Αντικειμενοστραφούς Προγραμματισμού
  9. Εξαιρέσεις και Αρχεία
  10. Αφηρημένες κλάσεις και Interfaces
  11. Java Swing
  12. Γεγονοστραφής Προγραμματισμός και Animations
  13. Βάσεις Δεδομένων με Java

Αξιολόγηση Σπουδαστών

Θεωρία: 60%

Προαιρετική εργασία  η οποία προσμετρά στο 20% της βαθμολογίας της θεωρίας.


Βιβλιογραφία

  • «Αντικειμενοστρεφής Προγραμματισμός με Java» Χ. Κυτάγιας, Κ. Κυτάγιας, Δ. Κυτάγιας, Γ. Πρεζεράκος, , 1η Έκδοση, Σύγχρονη Εκδοτική, 2013
  • «Java Προγραμματισμός» H. M. ,P. J. Deitel, 10η Εκδ., Εκδότης Χ. Γκιούρδας & ΣΙΑ ΕΕ, 2015
  • «Εισαγωγή στην Java» Γ. Λιακέας, Έκδοση 2η, Κλειδάριθμος ΕΠΕ, 2015
  • «Java για όλους» Ν. Ν. Καρανικόλας, Έκδοση 1η, Εκδόσεις Νέων Τεχνολογιών ΜΟΝ. ΕΠΕ, 2013
  • «Java: The Complete Reference», H.Schildt, 9th Ed., McGraw-Hill Education, 2014
  • «Intro to Java Programming» Dr. Liang, 10th Ed., Pearson, 2014
  • «Java Performance» C. Hunt and B. John, 1st Ed., Addison-Wesley Professional, 2012