Топ-100
Back

ⓘ Γλώσσα προγραμματισμού λέγεται μια τεχνητή γλώσσα που μπορεί να χρησιμοποιηθεί για τον έλεγχο μιας μηχανής, συνήθως ενός υπολογιστή. Οι γλώσσες προγραμματισμού ..



                                               

Smalltalk

Η Smalltalk είναι μια αμιγώς αντικειμενοστραφής γλώσσα προγραμματισμού. Σχεδιάστηκε από τους Alan Kay, Adele Goldberg, Dan Ingals, και τους συνεργάτες τους, στο ερευνητικό κέντρο της Xerox στο Palo Alto κατά τη διάρκεια της δεκαετίας του 1970. Αν και δεν ήταν η πρώτη αντικειμενοστραφής γλώσσα προγραμματισμού προηγήθηκε η Simula, από την οποία και επηρεάστηκε, θεωρείται πρότυπο για τις γλώσσες του είδους και αποτέλεσε σημαντική επιρροή στη σχεδίαση νέων γλωσσών. Βασίζεται σε ένα μοντέλο ενεργών αντικειμένων που ανταλλάσσουν μηνύματα το αντίστοιχο των μεθόδων σε άλλες γλώσσες κατά τη διάρκει ...

                                               

Simula

Η Simula είναι μια αντικειμενοστραφής γλώσσα προγραμματισμού που σχεδιάστηκε στο Κέντρο Υπολογιστών της Νορβηγίας, στο Όσλο, στα μέσα της δεκαετίας του 1960, από τον Ole-Johan Dahl, τον Bjørn Myhrhaug, και τον Kristen Nygaard. Συντακτικά αποτελεί υπερσύνολο της Algol 60 και, όπως υποδηλώνει το όνομα της, αρχικά σχεδιάστηκε για την προσομοίωση διακριτών συμβάντων. Αποτέλεσε την πρώτη γλώσσα προγραμματισμού που είχε αντικείμενα, κλάσεις, υποκλάσεις, εικονικές μεθόδους, συρρουτίνες, και προσομοίωση διακριτών συμβάντων ενώ χρησιμοποιούσε συλλογή απορριμμάτων. Για αυτούς τους λόγους, θεωρείται ...

                                               

Πασκάλ

Με το όνομα Pascal μπορεί να εννοείται: Ο μαθηματικός Μπλεζ Πασκάλ Blaise Pascal Η γλώσσα προγραμματισμού Pascal γλώσσα προγραμματισμού Η μονάδα πίεσης Πασκάλ Pa

                                               

Προγραμματιστικοί Μικρόκοσμοι

Οι Προγραμματιστικοί μικρόκοσμοι - μικρογλώσσες προγραμματισμού είναι προγραμματιστικά περιβάλλοντα κατάλληλα για την εκμάθηση του προγραμματισμού. Η βασική ιδέα των μικρόκοσμων microworlds και των μικρoγλωσσών mini-languages προγραμματισμού είναι η δημιουργία μιας γλώσσας προγραμματισμού που αποτελείται από ένα περιορισμένο ρεπερτόριο εντολών με απλή σύνταξη και σημασία. Οι μικρόκοσμοι είναι μικρά, αλλά σχετικά ολοκληρωμένα υποσύνολα αναπαράστασης του "πραγματικού" περιβάλλοντος, που αναπαριστούν ένα μέρος του θεωρητικού αυτού "κόσμου" και μπορούν να κατανοηθούν με ένα τρόπο εποπτικό, βιω ...

                                               

Τούρινγκ

Με το όνομα Τούρινγκ μπορεί να αναφέρονται: Βραβείο Τούρινγκ Βραβείο Turing Άλαν Τούρινγκ Alan Turing Μηχανή Τούρινγκ Μηχανή Turing Γλώσσα προγραμματισμού Τούρινγκ Γλώσσα προγραμματισμού Turing

                                               

ML (αποσαφήνιση)

Στο ml, υποδιαίρεση της μονάδας μέτρησης όγκου του ως m ili l itre που στα ελληνικά προφέρεται μιλιλίτρ. Στην mL, υποδιαίρεση της μονάδας μέτρησης φωτεινότητας ως mL. Στο μl, υποδιαίρεση της μονάδας μέτρησης όγκου του λίτρου ως microlitre.

Γλώσσα προγραμματισμού
                                     

ⓘ Γλώσσα προγραμματισμού

Γλώσσα προγραμματισμού λέγεται μια τεχνητή γλώσσα που μπορεί να χρησιμοποιηθεί για τον έλεγχο μιας μηχανής, συνήθως ενός υπολογιστή. Οι γλώσσες προγραμματισμού ορίζονται από ένα σύνολο συντακτικών και εννοιολογικών κανόνων, που ορίζουν τη δομή και το νόημα, αντίστοιχα, των προτάσεων της γλώσσας.

Οι γλώσσες προγραμματισμού χρησιμοποιούνται για να διευκολύνουν την οργάνωση και διαχείριση πληροφοριών, αλλά και για την ακριβή διατύπωση αλγορίθμων. Ορισμένοι ειδικοί χρησιμοποιούν τον όρο γλώσσα προγραμματισμού μόνο για τυπικές γλώσσες που μπορούν να εκφράσουν όλους τους πιθανούς αλγορίθμους. Μη-υπολογιστικές γλώσσες όπως η HTML ή τυπικές γραμματικές όπως η BNF δεν λέγονται συνήθως γλώσσες προγραμματισμού.

Υπάρχουν χιλιάδες διαφορετικές γλώσσες προγραμματισμού, και κάθε χρόνο δημιουργούνται περισσότερες.

                                     

1. Χαρακτηριστικά των γλωσσών προγραμματισμού

Κάθε γλώσσα προγραμματισμού έχει το δικό της σύνολο τυπικών προδιαγραφών ή κανόνων που αφορούν το συντακτικό, το λεξιλόγιο και το νόημα της. Για πολλές γλώσσες που χρησιμοποιούνται ευρέως και έχουν χρησιμοποιηθεί για αρκετό χρονικό διάστημα, υπάρχουν ειδικοί φορείς τυποποίησης, οι οποίοι μέσα από τακτές συναντήσεις δημιουργούν, τροποποιούν ή επεκτείνουν τις τυπικές προδιαγραφές που διέπουν τη χρήση μιας γλώσσας προγραμματισμού. Άλλες γλώσσες δεν περιγράφονται σε κάποιο επίσημο πρότυπο αλλά ορίζονται μόνο με βάση κάποια υλοποίησή τους που αποτελεί το ντε φάκτο πρότυπο, όπως η Python που περιγράφεται από την υλοποίηση CPython.

                                     

2. Κατηγοριοποίηση γλωσσών προγραμματισμού

Δεν υπάρχει απλός τρόπος να κατηγοριοποιηθούν οι γλώσσες προγραμματισμού. Αυτό συμβαίνει γιατί συνήθως κάθε γλώσσα προγραμματισμού περιέχει επιρροές από πολλές προηγούμενες γλώσσες, συνδυάζοντας θετικά στοιχεία και προσθέτοντας νέα. Χαρακτηριστικά που εμφανίζονται σε μια γλώσσα και έχουν θετική αποδοχή, συνήθως υιοθετούνται από μεταγενέστερες γλώσσες ακόμα και αν πρόκειται για γλώσσες που ανήκουν σε διαφορετική κατηγορία.

Η κατηγοριοποίηση είναι ακόμα πιο περίπλοκη για το λόγο ότι πολλές γλώσσες συνήθως ανήκουν σε παραπάνω από μία κατηγορίες. Για παράδειγμα, η Java είναι τόσο αντικειμενοστραφής όσο και παράλληλη γλώσσα, δεδομένου ότι υποστηρίζει την οργάνωση των δεδομένων και υπολογισμών σε αντικείμενα, αλλά επιτρέπει επίσης και την δημιουργία προγραμμάτων με ταυτόχρονα νήματα threads που εκτελούνται παράλληλα.

Δεδομένης της δυσκολίας στην κατηγοριοποίηση, μπορούμε να κατηγοριοποιήσουμε τις γλώσσες προγραμματισμού με διάφορους τρόπους. Οι συνηθέστεροι τρόποι είναι:

  • με βάση τον τρόπο οργάνωσης του προγράμματος
  • με βάση τον τρόπο που περιγράφουν το ζητούμενο αποτέλεσμα
  • με βάση τον στόχο που έχει η γλώσσα

Στην πρώτη περίπτωση προκύπτουν κατηγορίες όπως:

  • Διαδικαστικές γλώσσες procedural όπου το πρόγραμμα είναι οργανωμένο σε διαδικασίες, που αποτελούνται από σειρές εντολών που περιγράφουν αλγορίθμους. Παραδείγματα γλωσσών που ανήκουν σε αυτή την κατηγορία είναι η Pascal ή η C.
  • Αντικειμενοστραφείς γλώσσες object-oriented όπου το πρόγραμμα είναι οργανωμένο σε αντικείμενα. Ένα αντικείμενο είναι μια μονάδα που αποτελείται από την περιγραφή κάποιων δεδομένων και την περιγραφή των αλγορίθμων που τα επεξεργάζονται. Ένα αντικειμενοστραφές πρόγραμμα αποτελείται από διάφορα αντικείμενα που αλληλεπιδρούν μεταξύ τους. Παραδείγματα αντικειμενοστραφών γλωσσών είναι η Java ή η C++.
  • Συναρτησιακές γλώσσες functional όπου οι υπολογισμοί εκφράζονται ως εφαρμογές μαθηματικών συναρτήσεων, σε αντίθεση με τα άλλα είδη προγραμματισμού όπου οι υπολογισμοί εκφράζονται ως σειρές εντολών, όπου η κάθε μία αλλάζει με κάποιο τρόπο την κατάσταση του συστήματος. Θεωρητικό τους υπόβαθρο είναι ο λ-λογισμός. Χαρακτηριστικές συναρτησιακές γλώσσες είναι η Lisp, η Haskell και η OCaml.

Στην περίπτωση που η κατηγοριοποίηση των γλωσσών προγραμματισμού γίνει με βάση το στόχο που έχει η γλώσσα, υπάρχουν οι παρακάτω κατηγορίες:

  • Γλώσσες ειδικών εφαρμογών. Σε αυτή την κατηγορία ανήκουν γλώσσες που αναπτύχθηκαν ειδικά για μια συγκεκριμένη εφαρμογή. Για παράδειγμα, η γλώσσα PostScript είναι σχεδιασμένη ειδικά για να περιγράφονται με λεπτομέρεια κείμενα προς εκτύπωση, ενώ η γλώσσα Matlab είναι σχεδιασμένη για την επεξεργασία πινάκων από αριθμητικά δεδομένα.
  • Παράλληλες ή κατανεμημένες γλώσσες. Στη συγκεκριμένη κατηγορία ταξινομούνται γλώσσες που επιτρέπουν τη ανάπτυξη παράλληλων προγραμμάτων, όπου πολλές εντολές εκτελούνται ταυτόχρονα σε πολλούς υπολογιστές, έτσι ώστε το τελικό αποτέλεσμα να προκύψει γρηγορότερα. Οι παράλληλες γλώσσες προσφέρουν συνήθως εύκολους τρόπους επικοινωνίας μεταξύ των νημάτων που εκτελούνται παράλληλα, καθώς και τρόπους ώστε να δημιουργούνται καινούριες παράλληλες εκτελέσεις. Παραδείγματα γλωσσών που ανήκουν και σε αυτή την κατηγορία είναι η Go, η Java, η Erlang, η MultiLisp ή η Cilk.
  • Εκπαιδευτικά προγραμματιστικά περιβάλλοντα. Σε αυτή την κατηγορία ανήκουν εκπαιδευτικές; γλώσσες προγραμματισμού οι οποίες απευθύνονται σε αρχάριους προγραμματιστές για την κατασκευή μικροεφαρμογών. Είναι κατάλληλες για την εκμάθηση προγραμματισμού σε μικρές ηλικίες. Παραδείγματα τέτοιων γλωσσών είναι η LOGO, το Game Maker και το App Inventor.
  • Γλώσσες γενικής χρήσης. Σε αυτήν την κατηγορία ταξινομούνται γλώσσες που δημιουργήθηκαν για τον προγραμματισμό γενικών εφαρμογών, καθώς και πολλές εκπαιδευτικές γλώσσες που αποδείχτηκαν χρήσιμες για την ανάπτυξη γενικών εφαρμογών, όπως η Pascal.
  • Γλώσσες προγραμματισμού συστημάτων, που χρησιμοποιούνται συνήθως για τον προγραμματισμό λειτουργικών συστημάτων ή οδηγών drivers υλικού, όπου χρειάζεται πολλές φορές ο προγραμματιστής να έχει έλεγχο και γνώση του πως λειτουργεί το υλικό. Η πιο συχνά χρησιμοποιούμενη γλώσσα προγραμματισμού συστημάτων είναι η C.
  • Γλώσσες σεναρίων scripting. Αυτές οι γλώσσες χρησιμοποιούνται συνήθως για τη γρήγορη ανάπτυξη μικρών προγραμμάτων, σε περιπτώσεις που ο χρόνος του προγραμματιστή είναι πιο πολύτιμος από την ταχύτητα εκτέλεσης του προγράμματος, όπως για παράδειγμα συμβαίνει όταν το πρόγραμμα απλά αυτοματοποιεί απλές λειτουργίες. Παραδείγματα γλωσσών σεναρίων scripting είναι η Perl, η Python, η Ruby ή τα κελύφη του λειτουργικού συστήματος Unix shells.

Τέλος, στην περίπτωση που η κατηγοριοποίηση γίνεται με βάση τον τρόπο που περιγράφεται το ζητούμενο, υπάρχουν οι παρακάτω κατηγορίες:

  • Προστακτικές γλώσσες προγραμματισμού imperative είναι οι γλώσσες που περιγράφουν το ζητούμενο αποτέλεσμα κατασκευαστικά, δίνοντας μια σειρά εντολών που όταν εκτελεστούν παράγουν το ζητούμενο αποτέλεσμα. Τέτοιες γλώσσες είναι η C, η Java αλλά και η OCaml.
  • Δηλωτικές γλώσσες προγραμματισμού declarative είναι οι γλώσσες που περιγράφουν το ζητούμενο αποτέλεσμα χρησιμοποιώντας τις ιδιότητες που έχει, και όχι τον τρόπο με τον οποίο υπολογίζεται. Παραδείγματα δηλωτικών γλωσσών είναι η Haskell, η SQL και η Prolog.
                                     

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

κατ αλφαβητική σειρά:

Η παραπάνω λίστα είναι ενδεικτική και σε καμία περίπτωση δεν εξαντλεί το εύρος και την ποικιλία των χιλιάδων γλωσσών που χρησιμοποιούνται στην πράξη.

                                     

4. Περαιτέρω διάβασμα

  • Fundamental Concepts in Programming Languages βασικές έννοιες των γλωσσών προγραμματισμού Αγγλικά
  • Εφαρμογές Πληροφορικής Διαδραστικά σχολικά βιβλία
Free and no ads
no need to download or install

Pino - logical board game which is based on tactics and strategy. In general this is a remix of chess, checkers and corners. The game develops imagination, concentration, teaches how to solve tasks, plan their own actions and of course to think logically. It does not matter how much pieces you have, the main thing is how they are placement!

online intellectual game →