6.1 Γλώσσες και εργαλεία προγραμματισμού
Γλώσσες προγραμματισμού
Οι εντολές των προγραμμάτων γράφονται από τους προγραμματιστές σε τεχνητές γλώσσες που ονομάζονται γλώσσες προγραμματισμού. Οι γλώσσες προγραμματισμού εξελίσσονται με την πάροδο του χρόνου και οποιαδήποτε εφαρμογή βλέπετε στον υπολογιστή σας έχει αναπτυχθεί με χρήση μιας από αυτές.
Κάθε υπολογιστής μπορεί να κατανοήσει και να εκτελέσει εντολές που είναι διατυπωμένες με έναν καθορισμένο τρόπο, ο οποίος έχει σχέση με τον επεξεργαστή του. Οι γλώσσες προγραμματισμού, στις οποίες γράφονται οι εντολές αυτές, ονομάζονται γλώσσες μηχανής, και αποτελούνται από μια ακολουθία δυαδικών ψηφίων (0 και 1). Τα προγράμματα που είναι γραμμένα σε γλώσσα μηχανής προορίζονται μόνο για τον υπολογιστή για τον οποίο δημιουργήθηκαν, μιας και κάθε τύπος υπολογιστή (με διαφορετικό επεξεργαστή) έχει τη δική του γλώσσα μηχανής. Μια γλώσσα μηχανής διακρίνεται για την άμεση και γρήγορη εκτέλεση των εντολών από τον επεξεργαστή του υπολογιστή, αλλά ταυτόχρονα είναι δύσκολη η χρήση της, ο εντοπισμός και η διόρθωση τυχόν λαθών.
Για τη διευκόλυνση της εργασίας του προγραμματισμού δημιουργήθηκαν οι συμβολικές γλώσσες ή γλώσσες χαμηλού επιπέδου, όπου οι εντολές είναι συντομογραφίες λέξεων της Αγγλικής γλώσσας. Οι συμβολικές γλώσσες είναι και αυτές στενά συνδεδεμένες με την αρχιτεκτονική των υπολογιστών, και έτσι ένα πρόγραμμα γραμμένο για έναν τύπο υπολογιστή δεν μπορεί να μεταφερθεί και να εκτελεστεί σε άλλο τύπο υπολογιστή. Ένα πρόγραμμα γραμμένο σε συμβολική γλώσσα, για να εκτελεστεί από έναν υπολογιστή, πρέπει να μεταφραστεί στη γλώσσα μηχανής του με ένα ειδικό πρόγραμμα που ονομάζεται συμβολομεταφραστής.
Η ανάγκη για ακόμα ευκολότερη συγγραφή, διόρθωση και συντήρηση προγραμμάτων, ανεξάρτητων από τον τύπο του υπολογιστή στον οποίο θα εκτελεστούν, οδήγησε στη δημιουργία των γλωσσών υψηλού επιπέδου. Οι γλώσσες υψηλού επιπέδου μοιάζουν με τη φυσική μας γλώσσα και έχουν το δικό τους αλφάβητο, λεξιλόγιο και συντακτικό. Μερικές από τις πιο δημοφιλείς γλώσσες για ανάπτυξη γενικών ή εξειδικευμένων εφαρμογών είναι η C, η C++, η Java, η PHP, η C#, η Python, η JavaScript, η Perl, η Visual Basic, η Ruby, η Lisp, η Pascal, η Prolog και η MATLAB. Ανάλογα με το είδος της εφαρμογής που θέλουμε να αναπτύξουμε (γενικής χρήσης, εμπορική, επιστημονική, τεχνητής νοημοσύνης, παιχνίδι κ.λπ.) επιλέγουμε την κατάλληλη γλώσσα προγραμματισμού.