Αποστολέας Θέμα: Αρχες Προγραμματισμού - Python  (Αναγνώστηκε 3430 φορές)

polikarpos

  • Θαμώνας
  • ***
  • Μηνύματα: 43
  • www.sepchiou.gr
    • Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου
Αρχες Προγραμματισμού - Python
« στις: 29 Οκτ 2015, 07:19:56 μμ »
Συνάδελφοι γεια σας.
Φέτος διδάσκω στη Β ΕΠΑΛ (τεχνικός εφαρμογων λογισμικού και τεχνικός δικτύων κτλ) το νέο μάθημα Αρχες  Προγραμματισμού σε Python.
Δεδομένου ότι του χρόνου η συνέχεια αυτού του μαθήματος θα είναι το πανελλαδικώς εξεταζόμενο θεωρώ ότι έχουμε ορισμένους υποχρεωτικούς  περιορισμούς .
1. Χρήση των σημειώσεων του ΙΕΠ
     χαμηλού επιπέδου και πρόχειρες  κατά τη γνώμη μου
2. Χρήση της Python 2.7
     ουσιαστικά έχει αντικατασταθεί από την 3.χ , μικρές διαφορές  αλλά μπορούμε  σε πανελλήνιο μάθημα να ριψοκινδυνεύουμε;
     θα μείνουμε αλλα 15 χρόνια στη python 2, όπως μείναμε αλλα 15 στην  PASCAL
Η γνώμη σας;
www.sepchiou.gr
moodle.sepchiou.gr
museum.sepchiou.gr

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3164
  • to Iterate is human to Recurse divine
Απ: Αρχες Προγραμματισμού - Python
« Απάντηση #1 στις: 30 Οκτ 2015, 12:23:58 πμ »
Από που προκύπτει το συμπέρασμα ότι η Python 2 έχει αντικατασταθεί από την 3? Δε νομίζω ότι είναι τόσο απλό, η 2 δεν έχει πεθάνει ακόμα και θα υπάρχει για αρκετά χρόνια ακόμα. Αρκετοί γράφουν ακόμα σε 2 κυρίως για λόγους συμβατότητας , βιβλιοθηκών κλπ.
βλέπε το παρακάτω διάγραμμα


Επίσης θεωρώ τη σύγκριση με την Pascal ατυχής. Τόσο αναχρονιστική είναι η Python 2;  Δηλαδή τι είναι το φοβερό που έχει η Python 3 και πρέπει να πάμε προς τα εκεί.
Δε διαφωνώ ότι θα μπορούσαμε να πάμε στην 3 αλλά γιατί το να κάνουμε Python 2 είναι αναχρονιστικό ας πούμε?
Επειδή δεν υποστηρίζει κώδικα στα ελληνικά?
Δεν είναι όλα ρόδινα στην Python 3. Για παράδειγμα πως θα εξηγήσεις τη range στα παιδιά όταν αυτή δεν επιστρέφει λίστα αλλά αντικείμενο τύπου iterator, στο οποίο πρέπει μετά να εφαρμόσεις το list? είναι αυτό πιο εύκολο να το εξηγήσεις στους μαθητές?

Επίσης η print δεν είναι πιο απλή στην 2 από ότι στην 3 όταν θέλεις να μην κατεβαίνει γραμμή?
Από διδακτικής πλευρά δεν νομίζω ότι η 3 είναι απαραίτητα καλύτερη. Επίσης δε μου αρέσει καθόλου η επιλογή της μεταφοράς της reduce σε βιβλιοθήκη.

Η python 3 έχει κάποια θετικά όσον αφορά τον αντικειμενοστρεφή προγραμματισμό κατά τη γνώμη μου.
Η γνώμη μου είναι ότι είναι καλό να ξεκινήσεις στη 2 και όταν πας σε πιο προχωρημένες έννοιες να δεις και την 3.

Όπως και να έχει πάντως αν κάποιος γράφει καλά κώδικα σε Python 2 πόσο χρόνο θέλει για να πάει σε 3? αφού για την ίδια γλώσσα μιλάμε. Δεν θεωρώ δηλαδή ότι είναι τόσο σημαντικό.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

polikarpos

  • Θαμώνας
  • ***
  • Μηνύματα: 43
  • www.sepchiou.gr
    • Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου
Απ: Αρχες Προγραμματισμού - Python
« Απάντηση #2 στις: 30 Οκτ 2015, 06:02:37 μμ »
Πολύ ωραία συγκριτική ανάλυση των Python 2 και 3.
Συμφωνώ στα περισσότερα μαζί σου.
Με παρεξήγησες όμως όσον αφορά την αναφορά στην Pascal.
To αναλυτικό πρόγραμμα των ΕΠΑΛ έκανε 15  χρόνια να εκσυγχρονισστεί. Αναρρωτήθηκα το θα γίνει αν κάνει αλλα 15 χρόνια για να ξαναλλάξει.
Τότε η python 2 θα είναι όπως και τωρα, μια και έχει ανακοινωθεί ότι η 2.7.10 θα είναι η τελευταία εκδοση της 2.
Πώς θα είναι όμως τότε η 3 που μάλλον όλοι τοτε θα χρησιμοποιούν; Μάλλον αρκετα διαφορετική μια  και θα συνεχίσει  να εξελίσσεται.

Προφανώς για εμάς δεν είναι δύσκολο να περάσουμε από τη μια εκδοση ή τη μια γλώσσα στην άλλη.
Πρόσωπικά το εχω ήδη κανει αμέτρητες φορές τα τελευταία 30  χρόνια
Για τα παιδιά των ΕΠΑΛ θα είναι λίγο πιο δύσκολο, χωρίς φυσικά να θεωρώ ότι θα είναι και τρομερό.
Τη στιγμή όμως που ξεκινάμε τώρα τη Python  το λογικό θα ήταν να ξεκινήσουμε με την 3.

Οπως αναφέρεται και στο https://wiki.python.org/moin/Python2orPython3
 Python 2.x is legacy, Python 3.x is the present and future of the language
www.sepchiou.gr
moodle.sepchiou.gr
museum.sepchiou.gr

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3164
  • to Iterate is human to Recurse divine
Απ: Αρχες Προγραμματισμού - Python
« Απάντηση #3 στις: 30 Οκτ 2015, 09:52:15 μμ »
Καταλαβαίνω το σκεπτικό σου και έχεις δίκιο αλλά η έκδοση της γλώσσας δεν είναι θέμα αναλυτικού προγράμματος. Το αναλυτικό πρόγραμμα είναι το ίδιο είτε με python 2 είτε με python 3 μην σου πω και με ruby.
Η ουσία είναι ότι οι σημειώσεις που έχουν ανέβει στο ΙΕΠ θα διορθώνονται και θα αλλάζουν συνεχώς, δεν θα είναι κάτι στατικό, όπως και θα έπρεπε να γίνεται σε όλα τα βιβλία της πληροφορικής. Δεν αποκλείω μια μετάβαση στην Python 3 σε λίγα χρόνια, αλλά για τώρα νομίζω ότι η 2 είναι μια χαρά.
Δεδομένου λοιπόν ότι οι σημειώσεις θα διορθώνονται κάθε χρόνο νομίζω ότι θα ήταν καλό όσοι συνάδελφοι έχουν παρατηρήσεις ή διορθώσεις να "ενοχλήσουν" τη συγγραφική ομάδα.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

aprekates

  • Βετεράνος
  • ****
  • Μηνύματα: 87
    • Enomem
Απ: Αρχες Προγραμματισμού - Python
« Απάντηση #4 στις: 15 Δεκ 2015, 01:26:49 μμ »
Στη λίστα καινούργιων βιβλίων του ΙΕΠ προστέθηκε και το 'Εισαγωγή στον προγραμματισμό με την python' το οποίο κάνει χρήση της python 3.  Για ποιό μαθημα δεν ξέρω. Αν αφορά το αρχές προγραμματισμού τότε το μάθημα αυτό έχει φέτος 3 βιβλια! :-)  Φυσικά άτυπα γιατί δεν γνωρίζω κάτι επίσημο καινούργιο.

Πέρα από το ποιά έκδοση είναι καλύτερη για το ΕΠΑΛ και ποιό βιβλίο είναι καλύτερο, αυτή η κίνηση συν το ότι το τωρινό βιβλίο σημειώσεις των αρχών προγραμματισμού το οποιό έχει ένα μέρος της ύλης του ΑΠΣ γραφει απέξω για την Β και Γ τάξη δημιουργούν μια θολούρα για το τι θα γίνει του χρόνου.

Και αυτό δυσκολεύει και όσους θέλουν να ετοιμάζουν ασκήσεις για τα παιδιά.


evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3164
  • to Iterate is human to Recurse divine
Απ: Αρχες Προγραμματισμού - Python
« Απάντηση #5 στις: 15 Δεκ 2015, 06:30:21 μμ »
Η Β Λυκείου κάνει Python 2 και όχι Python 3.
Επίσης οι σημειώσεις είναι οι επίσημες σημειώσεις του ΙΕΠ. Το βιβλίο αυτό ΔΕΝ είναι για το μάθημα Αρχές Προγραμματισμού, προσωπικά δεν ξέρω για ποιο είναι. Υποθέτω ότι ανέβηκε σαν επιπλέον υλικό.
Το άλλο που ρωτάς για τη Β και τη Γ. Το σκεπτικό ήταν το μάθημα αυτό να έχει μια συνέχεια  στη Γ, για αυτό υπάρχει ένα πρόγραμμα σπουδών και ένα βιβλίο - σημειώσεις. Το ένα τμήμα που έχει γραφτεί για τη Β είναι αυτό που είναι ανεβασμένο στη σελίδα του ΙΕΠ το άλλο για τη Γ γράφεται τώρα.
Το αν η Γ θα έχει python 3 ή 2 δεν έχει σημασία, αφού οι διαφορές δεν είναι τόσο σημαντικές ώστε να δημιουργούν σοβαρό πρόβλημα στη σχεδίαση αλγορίθμων. Απλά κρίθηκε όπως έχω γράψει και προηγουμένως ότι η Python 2 έχει κάποια χαρακτηριστικά που είναι πιο απλά για τον αρχάριο (λειτουργία των print, input, range κλπ), χωρίς αυτό να είναι κάτι στο οποίο είμαι απόλυτος.
Άρα φέτος η Β κάνει Python 2 και από το επίσημο βιβλίο του ΙΕΠ.

Στη λίστα καινούργιων βιβλίων του ΙΕΠ προστέθηκε και το 'Εισαγωγή στον προγραμματισμό με την python' το οποίο κάνει χρήση της python 3.  Για ποιό μαθημα δεν ξέρω. Αν αφορά το αρχές προγραμματισμού τότε το μάθημα αυτό έχει φέτος 3 βιβλια! :-)  Φυσικά άτυπα γιατί δεν γνωρίζω κάτι επίσημο καινούργιο.

Πέρα από το ποιά έκδοση είναι καλύτερη για το ΕΠΑΛ και ποιό βιβλίο είναι καλύτερο, αυτή η κίνηση συν το ότι το τωρινό βιβλίο σημειώσεις των αρχών προγραμματισμού το οποιό έχει ένα μέρος της ύλης του ΑΠΣ γραφει απέξω για την Β και Γ τάξη δημιουργούν μια θολούρα για το τι θα γίνει του χρόνου.

Και αυτό δυσκολεύει και όσους θέλουν να ετοιμάζουν ασκήσεις για τα παιδιά.


What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr