ΓΠ-1: Εισαγωγή στον προγραμματισμό και την Java (εκτός από την Ενότητα 1.2.3) ΓΠ-2: Tα βασικά χαρακτηριστικά της γλώσσας Java ΓΠ-3: Εισαγωγή στις κλάσεις και στα αντικείμενα ΓΠ-4: Oι πίνακες και η αναδρομή στην Java ΓΠ-5: Περισσότερα για τις κλάσεις και τα αντικείμενα ΓΠ-6: Κληρονομικότητα ΓΠ-7: Αυτοαναφορικές δομές δεδομένων και αναδρομή ΓΠ-8: Πολυμορφισμός, αφηρημένες κλάσεις και διεπαφές
ΑΠ: ΠΛΣ50/Α, Αλγόριθμοι και Πολυπλοκότητα, ΕΑΠ, Πάτρα 2015
ΑΠ-1: Εισαγωγή ΑΠ-2: Ανάλυση αλγορίθμων ΑΠ-3: Αλγόριθμοι αναζήτησης ΑΠ-4: Αλγόριθμοι ταξινόμησης ΑΠ-5: Δομές Δεδομένων ΑΠ-6: Ουρές προτεραιότητας και αλγόριθμοι σωρών (εκτός από τις Ενότητες 6.4 και 6.5) ΑΠ-7: Δυαδικά δένδρα ΑΠ-8: Αλγόριθμοι γραφημάτων (εκτός από την Ενότητα 8.6) ΑΠ-9: Κατακερματισμός
ΤΛ-1: Εισαγωγή στην Τεχνολογία Λογισμικού ΤΛ-2: Μακροσκοπική προσέγγιση μοντέλων ΤΛ ΤΛ-3: Δομημένη ανάλυση ΤΛ-4: Δομημένη σχεδίαση ΤΛ-5: Εισαγωγή στην αντικειμενοστρεφή ανάπτυξη λογισμικού και την ενοποιημένη γλώσσα μοντελοποίησης (εκτός από την Ενότητα 5.3.2) ΤΛ-6: Μοντελοποίηση λειτουργικών απαιτήσεων με περιπτώσεις χρήσης ΤΛ-7: Μοντελοποίηση στατικής δομής με διαγράμματα κλάσεων (εκτός από την Ενότητα 7.3.3)