Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Αλγοριθμική και Προγραμματισμός => Μήνυμα ξεκίνησε από: bugman στις 24 Οκτ 2020, 03:26:12 ΜΜ

Τίτλος: Αντικειμενοστρεφής ή Αντικειμενοστραφής Προγραμματισμός;
Αποστολή από: bugman στις 24 Οκτ 2020, 03:26:12 ΜΜ
Επειδή είδα τον Ευριπίδη στη CIE 2020 να αστειεύεται με το θέμα του ονόματος, και επειδή είναι γνωστό ότι η γλώσσα η ελληνική είναι δυναμική, δηλαδή με το καιρό διαμορφώνεται σε κάτι άλλο, καλύτερο ή όχι δεν έχει σημασία, ας δούμε τι συμβαίνει με την λέξη αυτή, βάσει της ταπεινής μου γνώμης!
1. Η χρήση των δυο λέξεων είναι δεδομένη. Δηλαδή υπάρχουν συγγράμματα και με τις δυο λέξεις.

2. Υπάρχει καθορισμός κατά ΕΛΟΤ/ΤΕ48/ΟΕ1.  http://www.eleto.gr/inforterm/greek/TE48-OE1.htm μετάφραση του object oriented programming ως αντικειμενοστρεφής προγραμματισμός.

Στην ουσία:
Η απόδοση του όρου από την αγγλική δεν μπορεί να γίνει με μια λέξη! Το εξηγώ αμέσως:
Αν μιλάμε για το programming, ως το τρόπο του προγραμματιστή, τότε ναι αυτό είναι στρεφόμενος στα αντικείμενα, είναι αντικειμενοστρεφής προγραμματισμός.
Αν μιλάμε για το προγραμματιστικό υπόδειγμα, ή παράδειγμα, ή ιδιότητα μιας γλώσσας προγραμματισμού, τότε μιλάμε για αντικειμενοστραφή προγραμματισμό. Δηλαδή η γλώσσα που ακολουθεί, ή έχει αντικείμενο, τα αντικείμενα, είναι μια αντικειμενοστραφής γλώσσα. Γιατί να μην είναι "Αντικειμενοστρεφής"; Γιατί η γλώσσα έχει ήδη στραφεί στα αντικείμενα ενσωματώνοντας τα στοιχεία αυτά που της δίνουν αυτήν την δυνατότητα.

Όταν κάνουμε προγραμματισμό σε μια αντικειμενοστραφή γλώσσα, τότε κάνουμε προγράμματα με αντικείμενα, και ο προγραμματισμός μας λέγεται αντικειμενοστρεφής (κατά τη γενικότερη έννοια, του τρόπου από την πλευρά του προγραμματιστή).

Το αντικειμενοστραφής έχει σχέση με το "στραμμένο" επειδή στη γλώσσα ήδη το αντικείμενό της είναι τα αντικείμενα!
Το αντικειμενοστρεφής έχει σχέση με το "στρεφόμενο" επειδή ο τρόπος μας, η ενέργειά μας, στρέφεται στα αντικείμενα.

Αν λοιπόν αναφέρω το προγραμματιστικό υπόδειγμα ή παράδειγμα, Αντικειμενοστραφής Προγραμματισμός, χρησιμοποιώ τη λέξη με το άλφα γιατί συζητώ για τη γλώσσα. Αν συζητώ για τη γλώσσα και τις δυνατότητές της, τότε θα συζητώ για τον αντικειμενοστραφή προγραμματισμό (της γλώσσας, τον ήδη καθορισμένο). Δεν υπάρχει "Αντικειμενοστράφεια". Υπάρχει το περιφραστικό Καθαρός Αντικειμενοστραφής Προγραμματισμός, και ο γενικός όρος χωρίς το Καθαρός.

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

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

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

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

ΓΚ
Τίτλος: Απ: Αντικειμενοστρεφής ή Αντικειμενοστραφής Προγραμματισμός;
Αποστολή από: thaaanos στις 28 Οκτ 2020, 11:31:53 ΜΜ
με κάλυψες έτσι το νιώθω και εγώ αλλά δεν ήξερα πως να το εκφράσω