Κατι …βασικο

Τοσο στην Πληροφορικη του ΕΚΠΑ, αλλα και στο Πολυτεχνειο δινονται σαν συγγραματα προγραμματισμου, βιβλια του καθηγητη του ΕΚΠΑ Ν.Μισυρλη. Δεν θελω να σχολιασω την ποιοτητα των βιβλιων γιατι παρολο που εχω ακουσει γενικα αρνητικα σχολια, δεν τα εχω χρησιμοποιησει σαν συγγραματα. Ομως εχει τυχει να πεσουν στα χερια μου μεσω της κοπελας μου και το πιο αξιοπεριεργο με αυτα τα βιβλια ειναι πως ο κωδικας C που περιεχουν ειναι σε greeklish!

Γραφω με αφορμη το οτι σε μια προσφατη δικτυακη κουβεντα καποιοι πρωτοετεις φοιτητες ελεγαν οτι τα greeklish τους βοηθησαν γιατι ευρισκαν τον κωδικα ευκολοτερο στο διαβασμα. Διαφωνω καθετως, οριζοντιως και διαγωνιως. Ο προγραμματισμος, οπως και τα μαθηματικα, δεν ειναι προζα. Μπορει κατα βαση να μην ειναι κατι περισσοτερο απο κειμενακι το οποιο το δινουμε στον compiler και μας το κανει γλωσσα μηχανης αλλα ενα εξισου σημαντικο χαρακτηριστικο του κωδικα ειναι οτι πρεπει να μπορει να διαβαζεται και απο αλλους ανθρωπους εκτος απο εκεινον που τον εγραψε. Και στην συγχρονη δικτυακη εποχη που χουμε, αυτοι οι αλλοι ανθρωποι μπορει να βρισκονται στην αλλη ακρη του πλανητη. Αρα, οπως στα μαθηματικα γραφουμε sin, cos, div, rot και grad, ετσι και στον προγραμματισμο πρεπει να τηρουμε τους κανονες και να χρησιμοποιουμε την lingua franca, δηλαδη τα αγγλικα.

Τα greeklish περα απο το οτι ειναι ασχημα, δυσαναγνωστα και εκνευριστικα ειναι εξ’ορισμου παρα πολυ κακος προγραμματισμος. Και το βασικο λαθος ειναι στη χρησιμοποιηση της ελληνικης γλωσσας μεσα σε προγραμμα. Θα ηταν το ιδιο λαθος ακομα και αν ο compiler της εκαστοτε γλωσσας υποστηριζε πραγματικα ελληνικα. Αλλωστε υπαρχει αυτη η δυνατοτητα, οχι με τον gcc βεβαια, αλλα με τον javac, τον compiler της Java, o οποιος υποστηριζει πληρως Unicode. Επιτρεπει δηλαδη ο compiler να γραψουμε ενα προγραμμα που θα οριζει για παραδειγμα μεταβλητες σαν “int μεταβλητή”.

Ειναι ευκολο να καταλαβει κανεις γιατι ειναι λαθος να γραφει κωδικα σε γλωσσα αλλη απο τα αγγλικα. Ο παρακατω trivial Java κωδικας, ειναι γραμμενος εξολοκληρου στα ρωσικα (με την ευγενικη χορηγια τυχαιων λεξεων απο την εφημεριδα Πραβντα). Κανει μια χαρα compile με τον javac 1.6. Εχοντας ενα αρχειο Лавров.java το περναμε στον javac και καταληγουμε με ενα Лавров.class. Αυτο τωρα μπορουμε να το εκτελεσουμε με “java Лавров” και να παρουμε μια ωραιοτατη εκτυπωση του αριθμου 42, που εκτος των αλλων ειναι και η απαντηση στο Ερωτημα για τη Ζωη, το Συμπαν και τα Παντα.

class Лавров {
      private int смогли, соблюдать;
      private boolean  тоМоскве;

      public Лавров(int наращивают) {
           this.смогли = наращивают ;
           this.соблюдать = 1;
           this.тоМоскве = false ;
     }

     public int дальности (int наращивают, Лавров уже){
          Лавров решил = уже;
          return наращивают++;
     }

     public static void main(String args[]){
          Лавров уже = new Лавров(5);
          System.out.println(уже.дальности(41, уже));
     }
}

ΟΚ, το παραδεχομαι οτι φαινεται πραγματικα πολυ κουλ, σαν να ειναι βγαλμενο απο κομικ του Μπιλαλ. Αλλα εκτος και κανεις ξερει Ρωσικα, κωδικας γραμμενος ετσι ειναι περα για περα αχρηστος…

Κατι …βασικο

2 thoughts on “Κατι …βασικο

  1. cherouvim says:

    Κώδικας και βάσεις με μη-Αγγλικά λεκτικά == σίγουρα προβλήματα σε βάθος χρόνου.

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s