Περιγραφή του μαθήματος
Η Java παραμένει η πιο δημοφιλής γλώσσα προγραμματισμού εδώ και 30 περίπου χρόνια. Προσανατολισμένη εξαρχής προς τον Παγκόσμιο Ιστό (World Wide Web), ώστε να δώσει «κίνηση και αλληλεπίδραση» στις στατικές ιστοσελίδες εκείνης της εποχής, είναι μια αμιγώς αντικειμενοστρεφής γλώσσα προγραμματισμού που παραμένει στο επίκεντρο του ενδιαφέροντος, τόσο για εφαρμογές επιφάνειας εργασίας όσο και για εφαρμογές ιστού ή έξυπνων συσκευών.
Αν θέλετε να μάθετε κι εσείς να γράφετε προγράμματα στη γλώσσα προγραμματισμού που «τρέχει» σε δισεκατομμύρια συσκευές στον κόσμο, τότε αυτό το μάθημα είναι για σας. Θα μάθετε τις βασικές έννοιες του αντικειμενοστρεφούς προγραμματισμού, τι να προσέξετε για να γράφετε σωστά και ασφαλή προγράμματα και θα δείτε τις βελτιώσεις που έχουν εισαχθεί στις τελευταίες εκδόσεις της γλώσσας.
Το ανανεωμένο αυτό εισαγωγικό μάθημα είναι διάρκειας 6 εβδομάδων και -σε αντίθεση με την πρώτη εκδοχή του η οποία προϋπέθετε γνώσεις προγραμματισμού, είτε σε άλλη γλώσσα είτε σε παλαιότερη έκδοση της γλώσσας Java- απευθύνεται και σε ανθρώπους χωρίς απαραίτητα προηγούμενη επαφή με τον προγραμματισμό. Ξεκινά με τα βασικά των ηλεκτρονικών υπολογιστών, παρέχει την έννοια των αλγορίθμων και στη συνέχεια εισάγει τον μαθητή στη μαγεία του προγραμματισμού με τη γλώσσα Java, η οποία θεωρείται μία από τις καταλληλότερες για πρώτη επαφή με τον προγραμματισμό. Σε σχέση με την πρώτη έκδοση, έχει πολλές περισσότερες λυμένες ασκήσεις, τις οποίες ο διδάσκων εξηγεί βήμα-βήμα, ώστε ο μαθητής να εξοικειωθεί με τον αντίστοιχο τρόπο σκέψης. Επιπλέον, στο μάθημα θα δημιουργήσουμε μαζί ένα ολόκληρο πρόγραμμα, το οποίο θα χτίζουμε βήμα-βήμα κάθε εβδομάδα. Αν και το μάθημα καλύπτει λιγότερη ύλη από την πρώτη έκδοσή του, περιλαμβάνει επιπλέον εισαγωγικά στοιχεία της γλώσσας Java, είναι πολύ πιο αναλυτικό και επεξηγεί με περισσότερη λεπτομέρεια -πέρα από το βασικό συντακτικό- τις δομές δεδομένων που προσφέρει η γλώσσα καθώς και τις βασικές έννοιες του αντικειμενοστρεφούς προγραμματισμού, σε βαθμό που δεν καλύπτει ως τώρα η ελληνική βιβλιογραφία.
Η παρακολούθηση του μαθήματος περιλαμβάνει quiz στο τέλος κάθε ενότητας, ώστε να κατανοήσει ο μαθητής καλύτερα την ύλη που παρουσιάζεται αλλά και να δώσει περισσότερη προσοχή σε κάποια σημεία της γλώσσας, ένα τελικό τεστ και την εκπόνηση μιας τελικής εργασίας που παραδίδεται προς αξιολόγηση. Ο σπουδαστής που θα ολοκληρώσει το μάθημα αυτό θα είναι σε θέση να προγραμματίζει στη γλώσσα Java και να λύνει μόνος του ενδιαφέροντα πρακτικά προβλήματα.
Διδάσκων
Γιάννης Κωστάρας
O Γιάννης Κωστάρας προγραμματίζει σε Java από την έκδοση 1.0, όντας πιστοποιημένος Oracle Certified Professional Java SE 11 Developer. Διαθέτει επαγγελματική εμπειρία άνω των 25 ετών ως προγραμματιστής και "μιλάει" διάφορες γλώσσες προγραμματισμού, όπως Java, C/C++, Python, Ruby, Rust, Erlang, Visual Basic, Pascal κ.ά. Ανήκει στη σχεδιαστική ομάδα του Apache-Netbeans. Aπό το 2007, εργάζεται σε διεθνείς οργανισμούς ως Υπεύθυνος Αρχιτεκτονικής Λογισμικού και η βασική του ενασχόληση τα τελευταία χρόνια αφορά κατανεμημένα συστήματα πραγματικού χρόνου. Μια από τις πολλές εφαρμογές που έχει γράψει έχει λάβει το Duke's Choice Community Choice Award 2012. Επίσης, συνδιοργανώνει το διεθνές συνέδριο Java, JCrete, στα Χανιά καθώς και ημερίδες για το NetBeans.
Eθελοντές βοηθοί μαθήματος:
Αλέκος Παπαδόπουλος (AlekosPap), Βαγγέλης Σκαρμούτσος (SkarmoutsosV), Ξενοφών Στρατάκης (virxen75), Χρήστος Τσόλκας (chrtsolkas)
Συντελεστές
Βιντεοσκόπηση: Νίκος Γκικόπουλος, Δημήτρης Βουδούρης
Μοντάζ: Δημήτρης Αγγελάκης
Προγραμματισμός ασκήσεων: Δημήτρης Αγγελάκης
Η βιντεοσκόπηση έγινε τον χειμώνα του 2019 στο στούντιο του Mathesis στην Αθήνα και το καλοκαίρι του 2019 στο Ηράκλειο. Οι πρόσθετες βιντεοσκοπήσεις για τη νέα έκδοση του μαθήματος πραγματοποιήθηκαν το Φθινόπωρο του 2022 και τον χειμώνα του 2023, σε εξωτερικό χώρο.
Αξιολόγηση του μαθήματος από τους φοιτητές του
Κατά την πρώτη φορά που προσφέρθηκε το μάθημα, οι φοιτητές του (75 απαντήσεις) το αξιολόγησαν από τα ερωτηματολόγια εξόδου ως εξής:
Είστε ικανοποιημένος απ' αυτό που μάθατε σε σχέση μ' αυτό που περιμένατε;
Πολύ ικανοποιημένος: 27%
Ικανοποιημένος: 39%
Λίγο ικανοποιημένος: 27%
Καθόλου ικανοποιημένος: 7%
Bασικές πληροφορίες, αν αυτό είναι το πρώτο σας μάθημα!
Το μάθημα απευθύνεται σε κάθε ενδιαφερόμενο πολίτη, μπορείτε δηλαδή να γραφτείτε χωρίς να υπάρχει κάποιο προαπαιτούμενο.
To μάθημα είναι βιντεοσκοπημένο και ασύγχρονο. Μπορείτε, συνεπώς, να το παρακολουθήσετε στην πλατφόρμα μας τις ημέρες και ώρες που επιθυμείτε. Έχει διάρκεια έξι εβδομάδων και κάθε εβδομάδα προστίθενται νέες ενότητες τις οποίες μπορείτε, όπως αναφέραμε, να δείτε στο πρόγραμμά σας.
Πέρα από το διδακτικό υλικό, περιλαμβάνει εβδομαδιαία τεστ, μία τελική εξέταση και μία τελική εργασία. Η συμπλήρωση των τεστ γίνεται και αυτή στο δικό σας πρόγραμμα, εντός κάποιων εβδομαδιαίων συνήθως προθεσμιών. Η συμμετοχή στα τεστ είναι βεβαίως στη δική σας ευχέρεια. Αν όμως επιθυμείτε την έκδοση βεβαίωσης επιτυχούς παρακολούθησης, θα χρειαστεί να συμπληρώσετε το μεγαλύτερο μέρος του εξεταστικού υλικού.
Τα μαθήματα του Mathesis προσφέρονται δωρεάν και έτσι θα συνεχίσουν. Μπορείτε να τα παρακολουθήσετε μέχρι τέλους και να συμμετέχετε στα εβδομαδιαία τεστ και την τελική εξέταση. Εάν επιθυμείτε τη βεβαίωση επιτυχούς παρακολούθησης, θα σας ζητείται όμως ένα μικρό αντίτιμο –30€ στο συγκεκριμένο μάθημα– για την έκδοσή της, μετά την υποβολή της τελικής σας εξέτασης. Εάν δεν υποβάλετε την τελική σας εξέταση –ή αν την υποβάλετε, αλλά δεν περάσετε το μάθημα– δεν υπάρχει κάποια υποχρέωση πληρωμής. Για τους ανέργους η βεβαίωση χορηγείται δωρεάν.
Αν έχετε ήδη λογαριασμό στο Mathesis, αρκεί να συνδεθείτε στο Mathesis με το email που έχετε ήδη δηλώσει και, στη συνέχεια, να γραφτείτε στο μάθημα. Αν δεν έχετε λογαριασμό στο Mathesis, θα χρειαστεί προηγουμένως να δημιουργήσετε έναν. Αν τυχόν χρειαστείτε βοήθεια για την εγγραφή σας στο μάθημα ή στην πλατφόρμα του Mathesis, μπορείτε να δείτε εδώ τις σχετικές οδηγίες.