05
Ιολ.
13

Γλώσσες προγραμματισμού και Python.

Οι γλώσσες προγραμματισμού χρειάζονται κατ’ανάγκη, μιά και δεν έχει απ’ όσο ξέρω εφευρεθεί ακόμα ο υπολογιστής που θα καταλαβαίνει την ανθρώπινη γλώσσα. Τα προγράμματα γράφονται σε μιά γλώσσα που καταλαβαίνει ο υπολογιστής. Γιά την ακρίβεια μετατρέπονται σε μιά γλώσσα που καταλαβαίνει, την λεγόμενη γλώσσα μηχανής (machine language). Αυτή είναι η» μητρική γλώσσα» κάθε υπολογιστή που είναι ένα σετ ενσωματωμένων, πρωτόγονων εντολών. Οι εντολές αυτές έχουν τη μορφή δυαδικού κώδικα. Γιά παράδειγμα για να προστεθούν δύο αριθμοί πρέπει να γράψουμε μιά εντολή στον δυαδικό κώδικα, κάτι δηλαδή σαν:  1101101010011010. Μάλλον πολύπλοκο γιά την καθημερινότητα με τα super pc, τα mac και τα κάθε είδους tablets. Γιά τον λόγο αυτό, κατά τους ιστορικούς χρόνους των υπολογιστών φτιάχτηκε η γλώσσα assembly που απετέλεσε την εναλλακτική οδό του δυαδικού κομφούζιου. Η assembly χρησιμοποιεί μιά ..λέξη που περιγράφει κάθε εντολή που πρέπει να εκτελεστεί. Για παράδειγμα το add σημαίνει ότι πρέπει να προστεθούν δύο αριθμοί και το sub ότι πρέπει να αφαιρεθούν. Έτσι ένα μοναδικής έμπνευσης πρόγραμμα σε assembly θα ήταν:  add 2, 3, result.

Γλώσσα assembly

Γλώσσα assembly

Βέβαια η assembly εξυπηρετεί τον προγραμματιστή καί όχι τον ανεγκέφαλο υπολογιστή. Έτσι χρησιμοποιήθηκε ο λεγόμενος assembler, ένα άλλο πρόγραμμα, που στην ουσία μεταφράζει σε γλώσσα μηχανής τα προγράμματα που έχουν γραφτεί σε assembly. Το να γράφει κάποιος κώδικα σε assembly είναι βέβαια ευκολώτερο απ’ ότι σε γλώσσα μηχανής αλλά παρόλα αυτά είναι επίπονη εργασία. Κάθε εντολή σε assembly αντιστοιχεί σε μία εντολή σε machine code και προϋποθέτει καλή γνώση από τον προγραμματιστή της λειτουργίας της cpu του υπολογιστή. Η assembly είναι μιά low-level γλώσσα, μιά και είναι κοντά στη φύση (τρόπος του λέγειν, όταν έχουμε να κάνουμε με υλικά κατασκευάσματα) της γλώσσας μηχανής και εξαρτάται από τον κάθε υπολογιστή.

Στη συνέχεια φτιάχτηκαν οι λεγόμενες high-level γλώσσες προγραμματισμού. Γύρω στη δεκαετία του πενήντα. Γράφοντας το πρόγραμμά σου σε μιά γλώσσα υψηλού επιπέδου απευθύνεσαι σε μιά ευρύτερη γκάμα – πλατφόρμα υπολογιστών. Οι γλώσσες αυτές μοιάζουν με την αγγλική και οι εντολές δεν είναι ακαταλαβίστικες ακολουθίες πλήκτρων, που και ο πιό computer freak θα δυσκολευόταν να θυμηθεί. Ένα παράδειγμα: area = 5 * 5 * 3.1415 μας δίνει την επιφάνεια κύκλου ακτίνας 5 μονάδων. (Γλώσσες υψηλού επιπέδου είναι η Basic, μιά εύκολη γλώσσα γιά αρχαρίους στον προγραμματισμό, η C, που αναπτύχθηκε στα εργαστήρια Bell, η C++ που είναι μιά αντικειμενοστραφής (object oriented) γλώσσα βασισμένη στην C. Επίσης η C #, ένα υβρίδιο Java και C++. Ομοίως η Cobol, η Fortran, η Pascal γιά εφαρμογές επαγγελματικές, επιστημονικές και εκπαιδευτικές αντίστοιχα. Η γνωστή Java φτιαγμένη από την Sun, γιά εφαρμογές στο internet και η Python, μιά δυνατή γλώσσα γιά κάθε χρήση. Φυσικά και άλλες.).

πρόγραμμα σε basic

πρόγραμμα σε basic

κώδικας σε python

κώδικας σε python

Ένα πρόγραμμα γραμμένο σε high-level γλώσσα λέγεται και πηγαίος κώδικας. Επειδή ο υπολογιστής πάλι δεν είναι σε θέση να καταλάβει κανέναν τέτοιο κώδικα, χρειάζεται να μεταφραστεί αυτός σε γλώσσα μηχανής γιά να εκτελεστεί. Η εργασία αυτή γίνεται από ένα πρόγραμμα που λέγεται interpreter (διερμηνέας) ή compiler (μεταγλωττιστής). Ο interpreter διαβάζει κάθε «πρόταση» του πηγαίου κώδικα, την μεταφράζει σε γλώσσα μηχανής και την εκτελεί. Ο compiler μεταφράζει όλον τον πηγαίο κώδικα σε ένα αρχείο γλώσσας μηχανής, το οποίο στη συνέχεια εκτελείται.  Στην Python ο κώδικας εκτελείται με interpreter, ενώ οι περισσότερες άλλες γλώσσες χρησιμοποιούν compilers.

η διαδρομή

η διαδρομή

Μπορεί κάποιος να πεί «καλά όλα αυτά, εγώ τί γλώσσα να μάθω;» Αν ρωτήσει κανείς δέκα προγραμματιστές θα λάβει διαφορετικές απαντήσεις! Αυτό που συμβαίνει είναι πως ανάλογα με τί προγράμματα επιθυμεί κανείς να γράψει και σε τί περιβάλλον (εργασιακό) κινείται αντίστοιχη γλώσσα θα επιλέξει. Αν επιθυμεί ας πούμε κάποιος να γράφει εφαρμογές γιά iPhone ή iPad επιλέγει objective C. Γιά προγράμματα σε περιβάλλον Android επιλέγει να μάθει Java.Γιά web εφαρμογές μαθαίνει HTML, CSS και JavaScript. Βέβαια, όταν λέμε προγραμματιστής (τί όρος και αυτός) εννοούμε πάντα κάποιον που γνωρίζει πολλές γλώσσες προγραμματισμού και τις οποίες αργά ή γρήγορα πρέπει να μάθει. Η απάντηση στην ερώτηση του wannabe προγραμματιστή είναι λοιπόν να ασχοληθεί με οποιαδήποτε mainstream γλώσσα, που χρησιμοποιείται αρκετά, που έχει καλή τεκμηρίωση και είναι φιλική στον αρχάριο. Δεν χρειάζεται να ξέρει κανείς μαθηματικά ή να έχει φοβερή μνήμη γιά τα πρώτα βήματα. Τέτοια γλώσσα είναι η Python. Είναι γλώσσα γενικής χρήσης, με interpreter και object oriented. Η γλώσσα αυτή χρησιμοποιείται από τη μηχανή Google, από τη Nasa, και στο NYSE. Με την προϋπόθεση ότι έχουμε εγκαταστήσει τη γλώσσα στον υπολογιστή, είτε αυτός τρέχει σε windows, σε linux ή σε MacOS, γράφουμε Python στη γραμμή εντολών (στο dos prompt, ή στο terminal) ή στο IDLE (Interactive Development Environment), που είναι ένα περιβάλλον γιά τη γλώσσα. Εκεί ανοίγουμε, δημιουργούμε, σώζουμε τα προγράμματά μας.  Με το που ξεκινάει η γλώσσα θα δούμε το σύμβολο >>> (ένα  prompt) που περιμένει εντολές. Αν γράψουμε  print («Hello WordPress») και πατήσουμε enter, θα δούμε γραμμένο το Hello WordPress στην οθόνη.  Με άλλα λόγια η «λειτουργία» print μας έδωσε το κείμενο στην οθόνη. Αυτό ήταν το πρώτο πρόγραμμα. Από εδώ μέχρι να φτιάξει κάποιος προγράμματα γιά τη λύση  σκακιστικών προβλημάτων θέλει μελέτη και επιμονή. Κάτι σαν την εκμάθηση μιάς ξένης γλώσσας.


0 Σχόλια to “Γλώσσες προγραμματισμού και Python.”



  1. Σχολιάστε

Ευχαριστώ για το σχόλιό σας!


Το Twitter μου