Γενικό Λύκειο > Γ΄ Λυκείου

Ποια γλώσσα θέλετε για την Γ΄ Λυκείου;

(1/21) > >>

alkisg:

--- Κώδικας: ΓΛΩΣΣΑ ---ΑΝ γραφούν νέα προγράμματα σπουδών ΤΟΤΕ  ΑΝ γραφούν νέα βιβλία ΤΟΤΕ    ΑΝ ακούσουν και τη γνώμη μας ΤΟΤΕ      ΓΡΑΨΕ "Ψηφίστε ποια γλώσσα προτιμάτε και αν θέλετε πείτε γιατί"    ΤΕΛΟΣ_ΑΝ  ΤΕΛΟΣ_ΑΝΤΕΛΟΣ_ΑΝ
Για τα ΑΝ, όποιος ξέρει περισσότερα ας μας ενημερώσει. Εγώ θα ήθελα να ψηφίσω Javascript και να πω γιατί.

Η Pascal σαν εκπαιδευτικό εργαλείο ήταν καλύτερη από την C και άλλες γλώσσες. Ο Διερμηνευτής της ΓΛΩΣΣΑΣ σε Delphi/Pascal είναι γραμμένος. Και όποιος μαθαίνει μια γλώσσα προγραμματισμού μπορεί σχετικά εύκολα (?) να μεταβεί σε άλλη.

Πιθανώς το ίδιο να πει τώρα κάποιος και για την ΑΕΠΠ ή την Python σε σχέση με Javascript ή άλλες γλώσσες. Να ισχυριστεί ότι έχουν καλύτερο ή μικρότερο συντακτικό, είναι πιο εύκολες στη διδασκαλία κλπ.

Αντίστοιχα τα Ιταλικά (ή άλλες γλώσσες) ίσως να είναι καλύτερα σε σύνταξη και γραμματική από τα Αγγλικά. ΌΜΩΣ, προτιμούμε τα παιδιά μας να μάθουν πρωτίστως Αγγλικά, τα οποία θα χρησιμοποιήσουν άμεσα και παντού: Internet, ταινίες, επικοινωνία με άλλους ξενόγλωσσους.

Η Javascript μέχρι πριν λίγα χρόνια ήταν μόνο για προγραμματισμό ιστοσελίδων. Τώρα πλέον είναι παντού και κάνει τα πάντα. Είναι τα "Αγγλικά" των γλωσσών προγραμματισμού:

* Browsers: είναι η κύρια γλώσσα προγραμματισμού ιστοσελίδων. Δεν θα είναι κίνητρο για τους μαθητές να μπορούν άμεσα να δείξουν την εφαρμογή τους σε όλο το Internet και σε οποιαδήποτε συσκευή; Ούτε η ΑΕΠΠ ούτε η Python το προσφέρουν αυτό. Και μπορεί να συνδυαστεί με μαθήματα HTML σε προηγούμενες τάξεις.
* Τοπικές εφαρμογές: με νέες τεχνολογίες όπως nodejs, electronjs, socket.io, android-js, πολλές νέες εφαρμογές π.χ. το open source Visual Studio Code της Microsoft γράφονται σε Javascript. Και είναι cross-platform, μπορούν να τρέξουν σε browsers, PCs, κινητά, tablets, Raspberry Pis κλπ.
* Servers: για τον προγραμματισμό του server-side κομματιού των εφαρμογών και ιστοσελίδων, η Javascript έχει αρχίσει να τρώει σημαντικό και συνεχώς αυξανόμενο μερίδιο από την PHP. Μέχρι και για λογισμικό ταμειακών μηχανών.
* Λογισμικό συστήματος: για να εκμεταλλευτούν το μεγάλο πλήθος developers που ξέρουν μόνο Javascript, κάποια γραφικά περιβάλλοντα όπως το GNOME shell και το KDE/QML υιοθέτησαν την Javascript ως μια από τις βασικές γλώσσες προγραμματισμού τους.Τέλος, η Javascript είναι διεθνές πρότυπο και εξελίσσεται συνεχώς με τη συμμετοχή πολλών οργανισμών. Υποστηρίζει μεταβλητές είτε χωρίς δήλωση είτε με απλή δήλωση είτε με τύπους, αντικείμενα, event-driven προγραμματισμό και ένα σωρό ακόμα καλούδια. Μπορούμε να περιορίσουμε την "επόμενη ΑΕΠΠ" στον δομημένο προγραμματισμό με τα γνωστά μας for και while, και αργότερα οι μαθητές να προχωρήσουν παραπέρα χωρίς να αλλάξουν γλώσσα.

TL;DR: προτείνω η "επόμενη ΑΕΠΠ" να διδάσκει Javascript, και ο επόμενος "Διερμηνευτής" να είναι ένα extension του Visual Studio Code, που θα τρέχει μέχρι και μέσω browser ή σε κινητά.

Εσείς τι λέτε; Να έχουμε κατά νου ότι οι αλλαγές δεν είναι εύκολες, η μεθεπόμενη αλλαγή ίσως γίνει μετά από 20 ακόμα χρόνια, θα είναι κρίμα να διδάσκονται πεθαμένες τεχνολογίες οι μαθητές...

evry:
Καλά το ξεκίνησες αλλά στο τέλος το χάλασες.  :D


--- Παράθεση από: alkisg στις 20 Μαρ 2021, 07:22:17 πμ --- Μπορούμε να περιορίσουμε την "επόμενη ΑΕΠΠ" στον δομημένο προγραμματισμό με τα γνωστά μας for και while, και αργότερα οι μαθητές να προχωρήσουν παραπέρα χωρίς να αλλάξουν γλώσσα.

--- Τέλος παράθεσης ---

alkisg:
Ευριπίδη με παρεξήγησες! ;D

Εννοούσα αντίστοιχα με αυτό που κάνετε στη σελίδα 51 του βιβλίου Python των ΕΠΑΛ, όπου παρουσιάζετε την for με χρήση της range, για να αποφύγετε να εξηγήσετε την xrange και τους iterators. Στην python2 η range(1000000000) θα κάνει lazy list και θα εξαντλήσει τη RAM. Προγραμματιστικά απαράδεκτο (γι' αυτό και στην python3 επιστρέφει iterator), αλλά διδακτικά πιο εύπεπτο. Και λέω ότι πολύ καλά κάνατε!

Πρέπει να υπολογίσουμε και το τι ξέρουν να γράψουν οι συγγραφείς του επόμενου βιβλίου, και το τι μπορούμε να διδάξουμε οι καθηγητές Β/θμας, και το τι μπορούν να μάθουν οι μαθητές σε έναν χρόνο. Ας μάθουν μια απλή `for (i = 0; i < 1000000000; i += 1)` σε Javascript στο Λύκειο, και τα ranges, iterators και closures ας τα διδαχτούν στο πανεπιστήμιο!

Όταν γράφαμε τον Επόπτη σε Python, στην αρχή έγραφα με το δομημένο στυλ της object Pascal που ήξερα, ε, μετά έμαθα και για anonymous callback functions και για decorators και όλα τα καλά... δεν ενόχλησε κάπου αυτή η διαβάθμιση.

mikezante:
1) Στο poll δεν καταλαβαίνω γιατί υπάρχουν 3 διαφορετικές επιλογές για την ψευδογλωσσα.

2) Πολύ ωραία η αιτιολόγηση για τη JavaScript . Η γλώσσα αυτή ομως δεν βολεύει για το πιο βασικό και απαραίτητο ζήτημα στα χρόνια που έρχονται: ανάλυση δεδομένων και μηχανική μάθηση.

3) συμφωνώ απόλυτα στο ότι αρκεί ο μαθητής να μάθει μια γλώσσα, και από εκεί και πέρα ελίσσεται άνετα. Άρα μια «εύκολα» κατανοητή γλώσσα όπως Python ή Matlab θεωρώ ότι είναι ότι πρέπει.
(Εγώ έμαθα άνετα με τη σειρά:
ΓΛΩΣΣΑ -> Matlab -> C -> Java -> Python -> R -> PHP -> JavaScript)

4) Αυτά είναι όλα όνειρα, αφού με τα κέφια που βλέπω στο Υπουργείο, το ΑΕΠΠ θα διδάσκεται για καμία 20ρια χρόνια ακόμα

evry:
Άλκη εκεί με την for είχαμε αρκετές διαφωνίες ως προς τον τρόπο που έπρεπε να παρουσιαστεί. Ο Άρης κυρίως ήθελε έναν τρόπο πιο κοντά σε αυτά που ξέρουν οι καθηγητές, ας το πούμε Pascalοειδη Python εγώ διαφωνούσα και ήθελα αρχικά να ξεκινήσουμε με επανάληψη του στυλ

for item in List

και μετά να πάμε σε μετρητή. Ένα τέτοιο παράδειγμα είναι αυτό με τα ρέστα που έχουμε στις δομές δεδομένων.
Το σημαντικό εδώ είναι να κάνουν πρώτα λίστες να καταλάβουν τι είναι μια λίστα και τι κάνει η range και μετά να κάνουν την for.
Δυστυχώς υπάρχουν βιβλία που παρουσιάζουν την for σε αντιστοιχία με την ΓΙΑ χωρίς να εξηγήσουν τι είναι η λίστα ούτε τι είναι η range.

Τώρα αυτό που λες με την range είναι ένα θέμα. Είναι από τα θετικά που είχε η Python 2 στο διδακτικό μέρος. Δηλαδή έδινες ένα φύλλο εργασίας και έλεγες στους μαθητές δώστε τις εντολές
range(0), range(10), range(2,9), τι παρατηρείτε και μπορούσες εύκολα να εισάγεις κάποιες έννοιες. Τώρα στην 3 πρέπει να εφαρμόσεις το list και αυτό δεν είναι πολύ εύπεπτο.

Σχετικά με την javascript και εγώ στην αρχή δεν την θεωρούσα σοβαρή γλώσσα αλλά όταν ασχολήθηκα είδα ότι είναι εξαιρετική επιλογή.
Απλά δεν έχει στην εκπαίδευση διεθνώς την αποδοχή που έχει η Python ακόμα. Φυσικά υπάρχουν χώρες που την έχουν βάλει στο πρόγραμμα σπουδών τους όπως ο Καναδάς για παράδειγμα.
Όταν είχαμε προτείνει την Python το 2014 για το Λύκειο κάποιος από την ομάδα είχε προτείνει την Processing που είναι ουσιαστικά javascript, αλλά δεν προχώρησε. Αρχικά είχαμε προτείνει την javascript στο μάθημα Γενικής Παιδείας τότε που δεν πρόλαβε να υλοποιηθεί.

Το πλεονέκτημα της Python είναι η δουλειά που έχει γίνει και γίνεται στην εκπαίδευση σε αυτή τη γλώσσα.
Φαντάσου ότι ακόμα και η processing έχει Module για Python:
https://py.processing.org/

Τα πλεονεκτήματα της Javascript είναι αυτά που είπες.
Δυστυχώς θα ακούσεις από πολλούς τις γνωστές χαζομάρες περί αλγοριθμικής σκέψης (προγραμματισμός σε ελληνική Pascal) και πόσο θα την μολύνουν αυτές οι γλώσσες. Για αυτό δεν έχουμε προχωρήσει και είμαστε μάλλον η μοναδική χώρα παγκοσμίως που δεν αφήνει τους μαθητές να γράψουν κώδικα σε μια πραγματική σύγχρονη γλώσσα.

Πλοήγηση

[0] Λίστα μηνυμάτων

[#] Επόμενη σελίδα

Μετάβαση στην πλήρη έκδοση