Αποστολέας Θέμα: Ερώτηση κρίσεως  (Αναγνώστηκε 5336 φορές)

MichaelP

  • Θαμώνας
  • ***
  • Μηνύματα: 34
  • ...Εγώ τους τα μαθαίνω χωρίς Απο...Έως ....
Απ: Ερώτηση κρίσεως
« Απάντηση #15 στις: 24 Ιαν 2009, 09:44:41 πμ »
Σερφάροντας στο site ένα πρωί του Σαββάτου έπεσα πάνω στο συγκεκριμένο θέμα συζήτησης και θα ήθελα, χωρίς να επαναφέρω το θέμα να διατυπώσω την άποψή μου.

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

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3023
  • to Iterate is human to Recurse divine
Απ: Ερώτηση κρίσεως
« Απάντηση #16 στις: 24 Ιαν 2009, 10:43:45 πμ »
δηλαδή στο πνεύμα του ότι σωστός κώδικας δεν είναι μόνο αυτός που παράγει ένα σωστό αποτέλεσμα αλλά αυτός που διευκολύνει την μετέπειτα συντήρησή του, στο ίδιο πνεύμα δηλαδή με τους λόγους κατάργησης της περίφημης GOTO.
Κατανοώ βεβαίως ότι αυτά είναι ψιλά γράμματα για το συγκεκριμένο επίπεδο.
Ακριβώς, είναι πολύ ψιλά γράμματα αλλά το θέμα δεν είναι αυτό. Το θέμα είναι ότι αυτό που θίγεις είναι εκτός του αναλυτικού προγράμματος σπουδών. Δεν ελέγχουμε τα παιδιά αν γράφουν σωστό κώδικα, απλά αν σκέφτονται σωστά και αν μπορούν να αποτυπώσουν τη σκέψη τους στο χάρτι σε κάποια αναπαράσταση αλγορίθμου. Προσπαθούμε δηλαδή να μην κάνουμε προγραμματισμό, απλά κάποιες βασικές έννοιες αλγορίθμων. Για παράδειγμα η έννοια του αποδοτικού αλγορίθμου είναι εκτός ύλης. Αν ο αλγόριθμος βγάζει σωστό αποτέλεσμα δεν υπάρχει πρόβλημα. Καλώς ή κακώς έτσι είναι.
    Στο πνεύμα λοιπόν αυτό και ενώ η χρήση goto ή η αλλαγή μετρητή μέσα στη Για παράγουν επίσης σωστό αποτέλεσμα εμείς τους λέμε ότι αυτό είναι κακό και να μην το κάνουν. Αυτό όμως δεν είναι ασυνεπές? Δεν μπορεί τη μια να λες αυτό και την άλλη να τα αλλάζεις. Λέμε δηλαδή αυτό που μας συμφέρει κάθε φορά για να καλύψουμε τις ασυνέπειες του βιβλίου.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

MichaelP

  • Θαμώνας
  • ***
  • Μηνύματα: 34
  • ...Εγώ τους τα μαθαίνω χωρίς Απο...Έως ....
Απ: Ερώτηση κρίσεως
« Απάντηση #17 στις: 24 Ιαν 2009, 01:05:26 μμ »
Ισχύει. Και σε πολλά σημεία μάλιστα. Δεν μπαίνω στο κόπο να αναφέρω σε πόσα γιατί ήδη γνωρίζετε !