Skip to main content

Τι είναι οι γενιές γλωσσών προγραμματισμού;

Οι γενιές γλωσσών προγραμματισμού είναι ένας τρόπος ταξινόμησης των γλωσσών προγραμματισμού υπολογιστών ανάλογα με τη συνολική απόσταση τους από τον πραγματικό κώδικα μηχανής που δημιουργείται και, κατά κάποιο τρόπο, την ευκολία χρήσης τους από έναν προγραμματιστή.Υπάρχουν τρεις γενικά αποδεκτές γενιές γλωσσών προγραμματισμού και μερικοί των οποίων οι ορισμοί δεν συμφωνούνται σαφώς.Μια γλώσσα προγραμματισμού ηλεκτρονικών υπολογιστών πρώτης γενιάς είναι ευθεία κώδικας μηχανής χωρίς αφαίρεση.Οι γλώσσες δεύτερης γενιάς είναι αφηρημένοι κώδικες μηχανής, όπως η γλώσσα συναρμολόγησης, που συνδέονται με μια συγκεκριμένη αρχιτεκτονική του συστήματος, αλλά είναι ανθρώπινες αναγνώσιμες και πρέπει να καταρτιστούν.Οι γλώσσες τρίτης γενιάς είναι η πιο συνηθισμένη μορφή, συμπεριλαμβανομένων των τυποποιημένων γλωσσών, όπως η Java reg, ενώ οι γλώσσες που είναι τέταρτες γενιές ή έχουν ποικίλους ορισμούς. Όταν ο προγραμματισμός γενεών γλωσσών δημιουργήθηκε για πρώτη φορά για να περιγράψει τις γλώσσες, ο όρος ήταν ως επί το πλείστον ότι ήταν κυρίωςχρησιμοποιείται για να υποδεικνύει γλώσσες τρίτης γενιάς.Αυτό σημαίνει ότι οι γλώσσες πρώτης και δεύτερης γενιάς ταξινομήθηκαν μόνο ως τέτοιες για να επισημανθούν οι δυνατότητες των γλωσσών τρίτης γενιάς.Η τέταρτη και η πέμπτη γενιά γλωσσών προγραμματισμού χρησιμοποιήθηκαν σε μεγάλο βαθμό ως όροι σε σχέση με το μάρκετινγκ για γλώσσες που βρίσκονταν σε εξέλιξη.Στο μάρκετινγκ και σε ορισμένους ακαδημαϊκούς τομείς, οι υψηλότερες γενιές γλωσσών χρησιμοποιούνται με μη τυποποιημένο τρόπο για να υποδείξουν ότι μια γλώσσα είναι νεότερη ή έχει περισσότερα χαρακτηριστικά από ένα άλλο.

Η πρώτη από τις γενιές γλωσσών προγραμματισμού υποδεικνύει κώδικα μηχανής.Αυτό σημαίνει ότι γράφετε ένα πρόγραμμα ως ακολουθία bytes ή, σε ακραίες περιπτώσεις, bits που μπορούν να εκτελεστούν άμεσα από έναν υπολογιστή.Στις περισσότερες περιπτώσεις, αυτό αναφέρεται σε ένα σύστημα που δέχεται εισροές μέσω σκληρών κωδικοποιημένων διακόπτη ή άλλων φυσικών μηχανισμών.Αυτές είναι γλώσσες που είναι γραμμένες με κώδικα και εντολές που είναι αναγνώσιμοι από τον άνθρωπο και εντολές που εξακολουθούν να συνδέονται με συγκεκριμένες αρχιτεκτονικές συστήματος, αλλά παρουσιάζουν ένα ευκολότερο περιβάλλον ανάπτυξης και κάποια αφαίρεση.Οι γλώσσες συναρμολόγησης δεν σταμάτησαν ποτέ, από το 2011 και δεν είναι μόνο εξαιρετικά ισχυρές αλλά και μπορούν να χρησιμοποιηθούν ως ενσωματωμένες δηλώσεις σε γλώσσες προγραμματισμού υψηλότερου επιπέδου, καθιστώντας ψευδής την ιδέα ότι η δημιουργία μιας γλώσσας ισοδυναμεί με την ταχύτητα ή τη δύναμη της.

Οι γλώσσες προγραμματισμού τρίτης γενιάς αποσυνδέθηκαν τον κώδικα από τον επεξεργαστή σε ακόμη μεγαλύτερο βαθμό, επιτρέποντας την ανάπτυξη κώδικα που χρησιμοποίησε πιο ευανάγνωστες δηλώσεις.Επιπλέον, αναπτύχθηκαν μεταγλωττιστές που θα μπορούσαν να μετατρέψουν μία μόνο γραμμή κώδικα σε πολλαπλές δηλώσεις συναρμολόγησης σε πολλαπλές πλατφόρμες και, τελικά, σε δεκάδες ή περισσότερες οδηγίες κώδικα μηχανής.Σχεδόν όλες οι γλώσσες υπολογιστών που μπορούν να συντάξουν τα εγγενή δυαδικά εκτελέσιμα και βιβλιοθήκες θεωρούνται γλώσσες τρίτης γενιάς. Γενικά, μια γλώσσα τέταρτης γενιάς θεωρείται ως γλώσσα που προορίζεται να χρησιμοποιήσει κάποιο είδος γλώσσας προγραμματισμού που είναι πολύ φυσική για τον χρήστη.Μπορεί επίσης να οριστεί ως γλώσσα που χρησιμοποιεί οπτικά στοιχεία για την κατασκευή του τελικού προγράμματος.Ένας τρίτος ορισμός είναι μια γλώσσα προγραμματισμού που είναι κατασκευασμένη για συγκεκριμένο σκοπό, όπως μια γλώσσα προγραμματισμού βάσεων δεδομένων ή μια γλώσσα ανάπτυξης ταχείας εφαρμογής (RAD).Παρουσιάστε τον υπολογιστή με ένα πρόβλημα που προσπαθεί στη συνέχεια να λύσει.Οι περισσότερες γλώσσες που αναφέρονται ως γλώσσα πέμπτης γενιάς είναι ως επί το πλείστον ακαδημαϊκή.Άλλες γενιές γλωσσών προγραμματισμού, όπως το έκτο και το έβδομο, έχουν χρησιμοποιηθεί από τους κατασκευαστές εμπορικών γλωσσών για σκοπούς μάρκετινγκ.