
Οι γλώσσες προγραμματισμού χωρίζονται σε δύο διαφορετικές οικογένειες: συντάχθηκε και ερμηνεύεται. Μια μεταγλωττισμένη γλώσσα κωδικοποιείται από έναν άνθρωπο, τότε αυτός ο πηγαίος κώδικας μεταφράζεται σε γλώσσα συναρμολόγησης, έτσι ώστε το πρόγραμμα-στόχος να εκτελείται και να επιστρέφει ένα επιθυμητό αποτέλεσμα. Μια ερμηνευμένη γλώσσα, ωστόσο, καταρτίζεται σε πραγματικό χρόνο όταν εκτελείται, και συχνά χρησιμοποιεί απλούστερη και πιο φιλική προς τον άνθρωπο σύνταξη για την κωδικοποίηση. Η επιλογή μιας μεταγλωττισμένης και ερμηνευμένης γλώσσας δεν πρέπει να αποτελεί σημαντικό παράγοντα όταν σκέφτεστε να μάθετε μια νέα γλώσσα προγραμματισμού.
Τι είναι μια μεταγλωττισμένη γλώσσα;
Σκεφτείτε ένα απλό πρόγραμμα, helloworld.c, γραμμένο στη γλώσσα προγραμματισμού C: #include
int main ()
{
printf («Γεια σας Κόσμος»);
}
Το C είναι ένα παράδειγμα μιας μεταγλωττισμένης γλώσσας. Για να εκτελέσετε τον παραπάνω κώδικα, πρέπει να τον περάσετε από έναν μεταγλωττιστή C – ένα πρόγραμμα που ερμηνεύει τον κώδικά σας για να δημιουργήσει ένα δυαδικό πρόγραμμα. Για να συντάξετε ένα απλό πρόγραμμα C στο Linux, χρησιμοποιήστε το gcc μεταγλωττιστής: gcc helloworld.c -o γεια
Η παραπάνω εντολή μετατρέπει τον κώδικα από αναγνώσιμη από τον άνθρωπο μορφή σε κώδικα μηχανήματος που ο υπολογιστής μπορεί να τρέχει εγγενώς. Ένα μεταγλωττισμένο πρόγραμμα εκτελείται εκτελώντας το όνομα του μεταγλωττισμένου προγράμματος από το κέλυφος:
Δυνατά σημεία και αδυναμίες
Τα οφέλη από τη χρήση ενός μεταγλωττιστή για τη μεταγλώττιση του κώδικα είναι ότι το τελικό προϊόν τρέχει γενικά πιο γρήγορα από τον ερμηνευμένο κώδικα, επειδή δεν χρειάζεται να μεταγλωττιστεί εν κινήσει κατά την εκτέλεση της εφαρμογής. Το μεταγλωττισμένο πρόγραμμα ελέγχθηκε για σφάλματα κατά τη σύνταξη. Εάν υπάρχουν εντολές που δεν αρέσει στον μεταγλωττιστή, τότε θα αναφερθούν. Αυτός ο έλεγχος σφαλμάτων σάς βοηθά να διορθώσετε όλα τα σφάλματα κωδικοποίησης προτού αποκτήσετε ένα τελικό προϊόν που λειτουργεί καλά. Ακριβώς επειδή ένα πρόγραμμα έχει μεταγλωττιστεί με επιτυχία δεν σημαίνει ότι θα εκτελεστεί με τον τρόπο που περιμένετε, επομένως πρέπει να δοκιμάσετε την αίτησή σας. Ωστόσο, ένα πρόγραμμα C που καταρτίζεται σε υπολογιστή Linux δεν θα εκτελείται σε υπολογιστή Windows, επειδή ο μεταγλωττιστής περιλαμβάνει τα απαραίτητα εργαλεία για την εκτέλεση της εφαρμογής σε μια συγκεκριμένη πλατφόρμα – συνήθως, την πλατφόρμα στην οποία συντάχθηκε. Για να εκτελεστεί το ίδιο πρόγραμμα C σε υπολογιστή με Windows, πρέπει να μεταγλωττίσετε ξανά το πρόγραμμα χρησιμοποιώντας έναν μεταγλωττιστή C σε υπολογιστή Windows.
Τι είναι μια ερμηνευμένη γλώσσα;
Η Python είναι μια δημοφιλής ερμηνευμένη γλώσσα. εκτύπωση («γειά σου κόσμος»)
Ο παραπάνω κώδικας είναι ένα πρόγραμμα python που θα εμφανίζει τις λέξεις Γειά σου Κόσμε όταν εκτελείται. Για να εκτελέσουμε τον κώδικα δεν χρειάζεται να τον μεταγλωττίσουμε πρώτα. Αντ ‘αυτού, μπορούμε απλά να εκτελέσουμε την ακόλουθη εντολή: python helloworld.py
Εναλλακτικά, απλώς πληκτρολογήστε το από τον διαδραστικό διερμηνέα Python. Αυτό το μικροσκοπικό πρόγραμμα μιας γραμμής δεν χρειάζεται να μεταγλωττιστεί πρώτα, αλλά απαιτεί την εγκατάσταση του Python σε οποιοδήποτε μηχάνημα που εκτελεί το σενάριο. Ο διερμηνέας Python παίρνει τον αναγνώσιμο από τον άνθρωπο κώδικα και τον μετατρέπει σε κάτι άλλο προτού το κάνει κάτι που μπορεί να διαβάσει η μηχανή. Όλα αυτά συμβαίνουν πίσω από τα παρασκήνια και ως χρήστης, το μόνο που βλέπετε είναι οι λέξεις Γειά σου Κόσμε τυπωμένο στην τυπική έξοδο.
Δυνατά σημεία και αδυναμίες
Σε γενικές γραμμές, ο ερμηνευμένος κώδικας τρέχει πιο αργά από τον μεταγλωττισμένο κώδικα, επειδή ο διερμηνέας μεταφράζει το πρόγραμμα on-the-fly σε κάτι που μπορεί να χειριστεί το μηχάνημα. Παρόλο που αυτή η επιτυχία φαίνεται να είναι μειονέκτημα, οι ερμηνευμένες γλώσσες είναι χρήσιμες για διάφορους λόγους. Πρώτον, είναι πολύ πιο εύκολο να τρέξετε ένα πρόγραμμα στο Python σε Linux, Windows και macOS. Το μόνο που χρειάζεται να κάνετε είναι να βεβαιωθείτε ότι το Python είναι εγκατεστημένο στον υπολογιστή που θέλετε να εκτελέσετε το σενάριο. Ένα άλλο πλεονέκτημα είναι ότι ο κώδικας είναι πάντα διαθέσιμος για ανάγνωση και μπορεί εύκολα να αλλάξει για να λειτουργήσει με τον τρόπο που θέλετε. Με τον μεταγλωττισμένο κώδικα, πρέπει να βρείτε πού διατηρείται ο κωδικός, να τον αλλάξετε, να τον μεταγλωττίσετε και να αναδιατάξετε το πρόγραμμα. Με ερμηνευμένο κώδικα, ωστόσο, ανοίγετε το πρόγραμμα, το αλλάζετε και είναι έτοιμο να ξεκινήσει.