Το μάθημα έχει στόχο να διδάξει τα βασικά της αντικειμενοστρεφoύς ανάλυσης, σχεδιασμού και προγραμματισμού με τη γλώσσα προγραμματισμού Java. Βασικός σκοπός του μαθήματος είναι να εξοικειώσει τους φοιτητές με τις αρχές του Αντικειμενοστρεφούς Προγραμματισμου (object-oriented programming), να τους βοηθήσει να αναπτύξουν επάρκεια στη χρήση της Αντικειμενοστρεφούς Μεθοδολογίας και της γλώσσας Java για την επίλυση υπολογιστικών προβλημάτων, στη χρήση προχωρημένων προγραμματιστικών τεχνικών και στην επίλυση πολύπλοκων προβλημάτων. Οι φοιτητές θα αποκτήσουν εμπειρία στην ανάπτυξη λογισμικού σε μεγαλύτερη κλίμακα και στην ομαδική εργασία.