Εισαγωγή στη Java - Η πρόταση του BlueJ - για αρχάριους

Share on:

Είναι ωραίο συναίσθημα να κοιτάς ένα βιβλίο και καθώς παρατηρείς τους συγγραφείς να λές - Ρε συ αυτούς τους είχα καθηγητές εκεί'.

Γνώρισα τον J.Barnes και τον M.Κolling στο πανεπιστήμιο του Kent όταν έκανα το μεταπτυχιακό μου! Τον πρώτο έτυχε να τον έχω καθηγητή σε 1 μάθημα για μια περίοδο - αλλά όχι full time, μιας και ήταν υπεύθυνος του προγράμματος το οποίο απευθυνόταν σε non ΙΤ μαθητές οι οποίοι έκανα μια βουτιά στην πληροφορική!

Το πρόγραμμα του BlueJ ήταν μια προσπάθεια έτσι ώστε να δημιουργηθεί ένα framework - μηχανισμός ο οποίος θα βοηθούσε τους καθηγητές πληροφορικής να μεταδώσουν και να διδάξουν ΣΩΣΤΑ τον αντικειμενοστρεφή προγραμματισμό σε νέους φοιτητές με βάση τη Java!

Εκείνα τα χρόνια δεν είχα την ωριμότητα να δω όλη την προσπάθεια σφαιρικά και να μην επικεντρωθώ στο παιδικό (για κάθε developer που γράφει συστηματικά κώδικα) BlueJ. Θυμάμαι στην πρώτη συνάντηση για το δικό μου μεταπτυχιακό πρόγραμμα - μας έβαλαν 10 λεπτά να συμπληρώσουμε κάποιες ασκήσεις για να δουν ποιοι απο τους μαθητές ήξεραν πραγματικά Java και πόσοι νόμιζαν οτι ήξεραν! Όταν κάποιος είπε - ξέρεις μπορείς να χρησιμοποιήσεις το BlueJ, είπα - έλα τώρα πλάκα κάνεις είναι για παιδάκια - και έτσι είναι αλλά ουσιαστικά είναι μια πολύ σοβαρή προσέγγιση!

Εκείνη την εποχή στο τμήμα πληροφορικής του πανεπιστήμιου του Kent, έκαναν μια αρκετά μεγάλη προσπάθεια πάνω στη χρήση του BlueJ στους νέους φοιτητές - και γενικότερα στη σωστή εκμάθηση του object oriented programming!

Καθώς περνάνε τα χρόνια συναντάω πολλές φορές νέους στον χώρο ή ακόμα και νέους φοιτητές - δεν είναι λίγες οι φορές που θα δεχτώ την ίδια και την ίδια ερώτηση ή μάλλον, παρατήρηση!

'Ξέρεις η Java ακούγεται ενδιαφέρουσα - αλλά νομίζω οτι είναι πολύ δύσκολη - δεν έχω καταλάβει επίσης και το αυτός πως το λέμε Object Oriented'

Είναι προφανές οτι το να του απαντήσεις Νομίζω οτι η Java είναι πραγματικά εξαιρετικά εύκολη γλώσσα για να τη μάθεις' , δεν του αλλάζεις άποψη. Όπως και δεν είναι εύκολο το να μάθεις σε κάποιον να προγραμματίζει πόσο μάλλον, με μια αντικειμενοστραφή γλώσσα - δε γίνεται μέσα σε ένα μεσημέρι.Τέλος δεν είναι εύκολο πια στην αγορά εργασία όταν έχεις την ευθύνη να δουλεύεις με μεγάλες ομάδες προγραμματιστών - να φυτρώσεις έμπειρους developers στα project όταν τους έχεις ανάγκη! Το πρόβλημα είναι υπαρκτό!

Παρατηρώ κατά καιρούς σημειώσεις φοιτητών ή και βιβλία Ελληνικά - όλοι τα κουβαλάνε πέρα δώθε - όλα γραμμένα το κλασικό ξύλινο ύφος - κακές αντιγραφές ξένων βιβλίων - υπέρ-μετρη εθνικοφροσύνη και μανία για μετάφραση των πάντων! Είμαι υπέρ της χρήσης ελληνικής γλώσσας αλλά για μένα υπάρχει ένα όριο το οποίο ονομάζω χρηστικό! 9 στις 10 περιπτώσεις στην δουλειά θα ακούσεις να λένε τα object, object, και άλλα! Όσα είναι φυσιολογικά να λες στα ελληνικά έχει καλώς αλλά κακά τα ψέματα - δεν παίζουν όλα!

Όπως και να έχει, αναρωτιέμαι πιστεύουν πραγματικά οτι με αυτό το υλικό θα μεταδώσουν μια τόσο σημαντική γνώση (είναι απλή ΑΛΛΑ σημαντική). Στο τέλος παρατηρώ κάποια email - _σε παρακαλώ μπορείς να μου εξηγήσεις τι είναι το object'!

Αρκετά φυσιολογική ερώτηση - αλλά δεν μπορεί να απαντηθεί με την ξύλινη απάντηση του στιγμιότυπου. Ο λόγος είναι οτι νομίζουν όλοι οτι έτσι την απαντάνε και όταν τους συναντάς στη δουλεία μακριά από το University Bubble και όλοι λένε οτι ξέρουν 1000 γλώσσες- η κλασική ελληνική νοοτροπία - γράφω ένα main στη Java ξέρω Java χαχα - αλλά τελικά σου γράφουν κώδικα έξω από brackets μεθόδου!

Στην τελευταία μου επίσκεψη στον Παπασωτηρίου, έκατσα μισή ώρα και διάβασα τα πρώτα κεφάλαια απο το Objects First with Java! Το βιβλίο αυτό σε συνεργασία με το μαθητικό Java IDE BlueJ προσπαθεί να εισάγει τον νέο προγραμματιστή στην έννοια του Object Oriented Programming - στη συνέχεια του programming γενικότερα με έμφαση στη Java!

Είναι λάθος (όπου έκανα και εγώ) να δεις το BlueJ μόνο του ως εργαλείο. Δεν έχει σημασία - πρέπει να το δεις σε συνδυασμό με τα σχετικά βιβλία και την προσπάθεια που κάνουν να σου δώσουν απλά και κατανοητά την έννοια του Object, της κλάσης - το πως μπορείς να το φανταστείς - πως μπορούμε να το περιγράψουμε μια γλώσσα όπως η Java, πως θα μπορούσαμε ίσως να το ζωγραφίσουμε (UML).

Απο αυτά που διάβασα έμεινα αρκετά ικανοποιημένος νομίζω οτι αυτή η έκδοση είναι πιο ώριμη απο ποτέ και σε συνδυασμό μέ έναν _δάσκαλο΄ο οποίος θα δώσει έμφαση στο object orientation - τα αποτελέσματα στο τέλος μπορεί να είναι ιδιαίτερα ικανοποιητικά!

Στο τέλος της διαδικασία δεν είναι το θέμα μας αν ο μαθητής θα έχει μάθει πως να παίζει με το BlueJ, αλλά αν έχει καταλάβει τι είναι μια κλάση και ένα object. Αν αποκτήσει τέτοιες βάσεις τότε τα υπόλοιπα είναι technicalities.

Το συγκεκριμένο βιβλίο μπαίνει Λοιπόν, στη λίστα των papo recommended για όλους όσους θέλουν να κάνουν μια σωστή και ουσιαστική εισαγωγή στη Java -μέσα απο μια μεθοδολογία διδασκαλίας η οποία έγραψε όχι μόνο βιβλία - αλλά δημιούργησε και ένα ιδιαίτερο περιβάλλον προγραμματισμού γι_ αυτό το σκοπό!

Αναρωτιέμαι αν φοιτητές εδώ στην Ελλάδα έχει τύχει να δουν τα περί BlueJ στα μαθήματα εισαγωγής για Java ή φοιτητές ιδιωτικών σχολών κτλ! Είμαι περίεργος να μάθω αν υπάρχει κόσμος στη χώρα μας που να χρησιμοποιεί τον δρόμο του BlueJ! Αν ναι αφήστε ένα comment!

Ομολογώ οτι το θέμα της διδασκαλίας της Java, ιδιαίτερα σε νέους και άπειρους, όσο περνάνε τα χρόνια με ενδιαφέρει όλο και πιο πολύ! Από αυτό εδώ το blog περιστασιακά προσπαθώ με ιδιαίτερα newbie post να μεταφέρω με τον δικό μου τρόπο (σωστό ή λάθος) μέρος της (όποιας) γνώσης έχω. Ευελπιστώ τα επόμενα χρόνια να μπορέσω να εκπληρώσω και έναν από τους πόθους μου - να διδάξω συστηματικά με κάποιο τρόπο κάπως κάπου κάποτε! (ΟΧΙ δε δε θΕΛΩ ΝΑ ΓΙΝΩ ΔΑΣΚΑΛΟΣ ΔΗΜΟΣΙΟΥ - χαχα) .

Μερικά link