Ένα σενάριο είναι γενικά μια σειρά προγραμμάτων ή εντολών, τα οποία πρέπει να εκτελούνται σε άλλο πρόγραμμα ή εφαρμογή. Όπως γνωρίζουμε ότι ο ιστός λειτουργεί σε περιβάλλον πελάτη-διακομιστή. Το σενάριο από την πλευρά του πελάτη εκτελεί τον κώδικα στην πλευρά του πελάτη, ο οποίος είναι ορατός στους χρήστες ενώ ένα σενάριο πλευράς διακομιστή εκτελείται στο τέλος του διακομιστή, το οποίο δεν μπορούν να δουν οι χρήστες.
Συγκριτικό διάγραμμα
Βάση σύγκρισης | Σάρωση διακομιστή | Σεναριοποίηση από την πλευρά του πελάτη |
---|---|---|
Βασικός | Λειτουργεί στο πίσω μέρος, το οποίο δεν θα μπορούσε να είναι ορατό στο τέλος του πελάτη. | Τα έργα στο μπροστινό μέρος και το σενάριο είναι ορατά στους χρήστες. |
Επεξεργασία | Απαιτεί αλληλεπίδραση διακομιστή. | Δεν χρειάζεται αλληλεπίδραση με το διακομιστή. |
Οι σχετικές γλώσσες | PHP, ASP.net, Ruby on Rails, ColdFusion, Python κ.ά. | HTML, CSS, JavaScript, κλπ. |
Επηρεάζουν | Θα μπορούσε να προσαρμόσει αποτελεσματικά τις ιστοσελίδες και να παρέχει δυναμικές ιστοσελίδες. | Μπορεί να μειώσει το φορτίο στο διακομιστή. |
Ασφάλεια | Σχετικά ασφαλές. | Ανασφαλής |
Ορισμός της δέσμης ενεργειών από πλευράς διακομιστή
Το scripting από την πλευρά του διακομιστή είναι μια τεχνική προγραμματισμού για την παραγωγή του κώδικα που μπορεί να τρέξει λογισμικό από την πλευρά του διακομιστή, με απλά λόγια κάθε δέσμη ενεργειών ή προγραμματισμός που μπορεί να τρέξει στον εξυπηρετητή ιστού είναι γνωστός ως server scripting. Οι λειτουργίες όπως η προσαρμογή ενός ιστότοπου, η δυναμική αλλαγή στο περιεχόμενο του ιστότοπου, η παραγωγή απαντήσεων στα ερωτήματα του χρήστη, η πρόσβαση στη βάση δεδομένων κ.ο.κ. εκτελούνται στο τέλος του διακομιστή.
Η δέσμη ενεργειών διακομιστή δημιουργεί μια σύνδεση επικοινωνίας μεταξύ ενός διακομιστή και ενός πελάτη (χρήστης). Νωρίτερα, η δέσμη ενεργειών διακομιστή υλοποιείται από τα γραφήματα CGI (Common Gateway Interface) . Το CGI σχεδιάστηκε για να εκτελέσει τα σενάρια από γλώσσες προγραμματισμού όπως το C ++ ή το Perl στις ιστοσελίδες.
Η πλευρά του διακομιστή περιλαμβάνει τρία μέρη: διακομιστή, βάση δεδομένων, λογισμικό API και back-end web που αναπτύχθηκε από τη γλώσσα προγραμματισμού της σελίδας διακομιστή. Όταν ένα πρόγραμμα περιήγησης στέλνει ένα αίτημα στον διακομιστή για μια ιστοσελίδα που αποτελείται από scripting από την πλευρά του διακομιστή, ο διακομιστής web επεξεργάζεται τη δέσμη ενεργειών πριν την προβολή της σελίδας στο πρόγραμμα περιήγησης. Εδώ η επεξεργασία ενός σεναρίου θα μπορούσε να περιλαμβάνει την εξαγωγή πληροφοριών από μια βάση δεδομένων, την πραγματοποίηση απλών υπολογισμών ή την επιλογή του κατάλληλου περιεχομένου που θα εμφανίζεται στο τέλος του πελάτη. Το σενάριο επεξεργάζεται και η έξοδος αποστέλλεται στο πρόγραμμα περιήγησης. Ο διακομιστής ιστού αφαιρεί τα σενάρια από τον τελικό χρήστη μέχρι την προβολή του περιεχομένου, γεγονός που καθιστά τα δεδομένα και τον πηγαίο κώδικα πιο ασφαλή.
Γλώσσες δέσμης ενεργειών από την πλευρά του διακομιστή:
Μετά την εμφάνιση του CGI, αναπτύχθηκαν πολλαπλές γλώσσες προγραμματισμού όπως PHP, Python, Ruby, ColdFusion, C #, Java, C ++ κ.ο.κ. για scripting από πλευράς server, μεταξύ των οποίων μερικές από αυτές περιγράφονται παρακάτω:
PHP: Είναι η πιο διαδεδομένη γλώσσα του διακομιστή που χρησιμοποιείται στον ιστό και έχει σχεδιαστεί για να εξάγει και να χειρίζεται πληροφορίες στη βάση δεδομένων. Η γλώσσα χρησιμοποιείται σε συνδυασμό με τη γλώσσα SQL για τη βάση δεδομένων. Χρησιμοποιείται σε Facebook, WordPress και Wikipedia.
Python: Η γλώσσα είναι γρήγορη και περιέχει μικρότερο κώδικα. Είναι καλό για αρχάριους, καθώς επικεντρώνεται στην αναγνωσιμότητα και την απλότητα του κώδικα. Η Python λειτουργεί καλά στο αντικειμενοστραφή περιβάλλον και χρησιμοποιείται σε διάσημους ιστότοπους όπως το Youtube, το Google κ.λπ.
Ruby: Περιέχει σύνθετη λογική η οποία πακετάρει το back-end με βοηθητικό πρόγραμμα βάσης δεδομένων το οποίο μπορεί επίσης να παρέχεται από PHP και SQL.
Ορισμός της δέσμης ενεργειών από την πλευρά του πελάτη
Η δέσμη ενεργειών από την πλευρά του πελάτη εκτελείται για τη δημιουργία ενός κώδικα που μπορεί να εκτελεστεί στο τέλος του προγράμματος-πελάτη (browser) χωρίς να χρειάζεται η επεξεργασία της πλευράς του διακομιστή. Βασικά, αυτοί οι τύποι σεναρίων τοποθετούνται μέσα σε ένα έγγραφο HTML. Οι δέσμες ενεργειών από την πλευρά του πελάτη μπορούν να χρησιμοποιηθούν για να εξετάσουν τη φόρμα του χρήστη για τα σφάλματα πριν την υποβληθεί και για την αλλαγή του περιεχομένου ανάλογα με την είσοδο του χρήστη. Όπως ανέφερα προηγουμένως, ο ιστός απαιτεί τρία στοιχεία για τη λειτουργία του, τα οποία είναι πελάτης, βάση δεδομένων και διακομιστής.
Το αποτελεσματικό scripting από την πλευρά του πελάτη μπορεί να μειώσει σημαντικά το φορτίο του διακομιστή . Έχει σχεδιαστεί για να λειτουργεί ως γλώσσα δέσμης ενεργειών χρησιμοποιώντας ένα πρόγραμμα περιήγησης ιστού ως πρόγραμμα φιλοξενίας. Για παράδειγμα, όταν ένας χρήστης υποβάλλει ένα αίτημα μέσω του προγράμματος περιήγησης για μια ιστοσελίδα στον διακομιστή, απλά έστειλε το HTML και το CSS ως απλό κείμενο και το πρόγραμμα περιήγησης προβάλλει και μετατρέπει το περιεχόμενο ιστού στο τέλος του πελάτη.
Γλώσσες δέσμης ενεργειών από την πλευρά του υπολογιστή:
HTML : Είναι τα θεμελιώδη δομικά στοιχεία του web προγραμματισμού που παρέχει το πλαίσιο στην ιστοσελίδα. Περιγράφει τη διάταξη του περιεχομένου.
CSS : Το CSS παρέχει τον τρόπο σχεδιασμού των γραφικών στοιχείων που βοηθούν στην πιο ελκυστική εμφάνιση της εφαρμογής στο διαδίκτυο.
JavaScript : Είναι επίσης μια γλώσσα προγραμματισμού από την πλευρά του πελάτη, η οποία ουσιαστικά σχεδιάστηκε για τον συγκεκριμένο σκοπό, αλλά επί του παρόντος υπάρχουν διάφορα πλαίσια της JavaScript που χρησιμοποιούνται ως τεχνολογία scripting από πλευράς διακομιστή.
Διαφορές κλειδιών μεταξύ της δέσμης ενεργειών διακομιστή και της δέσμης ενεργειών από την πλευρά του υπολογιστή-πελάτη
- Το scripting από την πλευρά του διακομιστή χρησιμοποιείται στο backend, όπου ο πηγαίος κώδικας δεν είναι ορατός ή κρυμμένος στην πλευρά του προγράμματος-πελάτη (browser). Από την άλλη πλευρά, το script-side client χρησιμοποιείται στο μπροστινό μέρος, το οποίο μπορούν να δουν οι χρήστες από το πρόγραμμα περιήγησης.
- Όταν επεξεργάζεται μια δέσμη ενεργειών διακομιστή, επικοινωνεί με το διακομιστή. Αντιθέτως, η δέσμη ενεργειών από πλευράς πελάτη δεν χρειάζεται αλληλεπίδραση διακομιστή.
- Η γλώσσα δέσμης ενεργειών από την πλευρά του πελάτη περιλαμβάνει γλώσσες όπως HTML, CSS και JavaScript. Σε αντίθεση, οι γλώσσες προγραμματισμού όπως PHP, ASP.net, Ruby, ColdFusion, Python, C #, Java, C ++ κλπ.
- Το scripting από την πλευρά του διακομιστή είναι χρήσιμο για την προσαρμογή των ιστοσελίδων και την υλοποίηση των δυναμικών αλλαγών στους ιστότοπους. Αντίθετα, το σενάριο της πλευράς πελάτη μπορεί να ελαχιστοποιήσει αποτελεσματικά το φορτίο στο διακομιστή.
- Η δημιουργία σε δέσμες ενεργειών από πλευράς διακομιστή είναι πιο ασφαλής από τη δημιουργία σε δέσμες ενεργειών από πλευράς πελάτη, καθώς οι δέσμες ενεργειών διακομιστή συνήθως αποκρύπτονται από το τέλος του υπολογιστή-πελάτη, ενώ ένα script-side client είναι ορατό στους χρήστες.
συμπέρασμα
Το scripting από την πλευρά του πελάτη και το scripting από την πλευρά του διακομιστή λειτουργούν με συντονισμένο τρόπο μεταξύ τους. Ωστόσο, και οι δύο τεχνικές δέσμης ενεργειών είναι πολύ διαφορετικές, όπου το scripting από την πλευρά του πελάτη δίνει έμφαση στην πιο ελκυστική και λειτουργική διεπαφή της εφαρμογής ή της ιστοσελίδας. Αντιστρόφως, η δέσμη ενεργειών διακομιστή δίνει έμφαση στις μεθόδους πρόσβασης δεδομένων, τον χειρισμό σφαλμάτων και την ταχεία επεξεργασία κ.λπ.