Προστακτικός προγραμματισμός
From Wikipedia, the free encyclopedia
Στην πληροφορική καλούμε προστακτικό προγραμματισμό (Αγγλικά: Imperative programming), σε αντίθεση με το δηλωτικό προγραμματισμό, ένα προγραμματιστικό υπόδειγμα όπου το ζητούμενο κατασκευάζεται / υπολογίζεται αλλάζοντας την κατάσταση του υπολογιστή μέσω εντολών. Η ιδέα είναι ότι έχουμε εντολές/statements που συνήθως μοιράζονται κοινές μεταβλητές. [1]
Το υπόδειγμα αυτό ακολουθούν οι διαδικαστικές γλώσσες προγραμματισμού, όπως η Pascal, η C , η Fortran, κ.α., αλλά και πολλές αντικειμενοστρεφείς γλώσσες όπως η Java, η C++, η C#, κ.α. Η ιδέα του προστακτικού προγραμματισμού απορρέει από την αρχιτεκτονική φον Νόιμαν η οποία σχεδιάστηκε την δεκαετία 1940. Κατά την αρχιτεκτονική αυτή η κάθε εντολή (γλώσσας μηχανής) εκτελείται διαδοχικά (σε κάθε κύκλο λειτουργίας του επεξεργαστή). Η μετέπειτα ανάπτυξη των γλωσσών προγραμματισμού υψηλού επιπέδου (όπως για παράδειγμα η Pascal ή η C) βασίστηκαν στην αρχιτεκτονική φον Νόιμαν και υλοποίησαν το υπόδειγμα του προστατικού προγραμματισμό όπου ο προγραμματισμός γίνεται σε γλώσσα υψηλού επιπέδου. [2]
Σε μια γλώσσα προστακτινού προγραμματισμού (σε σύγκριση με μια γλώσσα συναρτησιακού προγραμματισμού) έχουμε πολύπλοκη σημασιολογία, πολύπλοκο συντακτικό και η αποδοτική εκτέλεση του προγράμματος είναι ευθύνη του προγραμματιστή. Στην περίπτωση που θέλουμε το πρόγραμμα να εκτελεστεί ταυτόχρονα σε περισσότερους πυρήνες ο προγραμματιστής πρέπει να το σχεδιάσει το πρόγραμμα και την ταυτόχρονη εκτέλεση, σε αντίθεση σε ένα πρόγραμμα συναρτησιακού προγραμματισμού το οποίο μπορεί να εκτελεστεί ταυτόχρονα χωρίς παραπάνω σχεδίαση από τον προγραμματιστή (λόγω των αναδρομικών κλήσεων συναρτήσεων κλπ). [3]