Παράλληλη Αναζήτηση

Αναζήτηση

Βρες
Εμφάνιση

Άρθρα :: Ελεύθερο ρεπορτάζ

( ατελείωτες ουρές για το όνειρο του τζακ ποτ :: 8/3/2006 18:24:03) 

Δεν είναι λίγοι εκείνοι που ποντάρουν ακόμη και 500 ευρώ στη σημερινή κλήρωση του Τζόκερ (με τζακ ποτ 3,8 εκατ. ευρώ), που θα γίνει στις 8.50 το βράδυ και αναμένεται να προσελκύσει το ενδιαφέρον χιλιάδων Ελλήνων.

6.7 Προγραμματιστικά περιβάλλοντα

Τζόκερ: Αλαλούμ στα πρακτορεία λόγω αλλαγής του λογισμικού για το νέο ΠΡΟΠΟ

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

Ατελείωτες ουρές για το όνειρο του τζακ ποτ

Η μετατροπή αυτή επιτυγχάνεται με τη χρήση ειδικών μεταφραστικών προγραμμάτων.

Του ΚΩΣΤΑ ΚΟΥΚΟΥΜΑΚΑ

Υπάρχουν δύο μεγάλες κατηγορίες τέτοιων προγραμμάτων, οι μεταγλωττιστές (compilers) και οι διερμηνευτές (interpreters).

Μπάχαλο, εκνευρισμός και ατελείωτες ουρές χθες στα πρακτορεία του ΟΠΑΠ. Από νωρίς το πρωί εκατοντάδες πολίτες έσπευσαν να παίξουν ένα δελτίο Τζόκερ, αφού σήμερα κληρώνεται το τζακ ποτ των 3,8 εκατ. ευρώ.

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

Εκτός όμως από την κοσμοσυρροή, τα νεύρα πελατών και πρακτόρων έσπασαν με τα συνεχόμενα προβλήματα στις τερματικές μηχανές των πρακτορείων, εξαιτίας των πρόσφατων αλλαγών στο ΠΡΟΠΟ.

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

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

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

"Δεν προβλέφτηκαν όμως τα προβλήματα και οι ανωμαλίες που θα δημιουργούνταν από αυτήν την αλλαγή.

Το αρχικό πρόγραμμα λέγεται πηγαίο πρόγραμμα (source), ενώ το πρόγραμμα που παράγεται από το μεταγλωττιστή λέγεται αντικείμενο πρόγραμμα (object).

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

Το αντικείμενο πρόγραμμα είναι μεν σε μορφή κατανοητή από τον υπολογιστή, αλλά συνήθως δεν είναι σε θέση να εκτελεστεί.

Έχουν αλλάξει κωδικοί και δεν μπορούμε να δουλέψουμε", λέει ο ιδιοκτήτης πρακτορείου στη Θεσσαλονίκη Γιώργος Τσέντος.

Χρειάζεται να συμπληρωθεί και να συνδεθεί με άλλα τμήματα προγράμματος απαραίτητα για την εκτέλεσή του, τμήματα που είτε τα γράφει ο προγραμματιστής είτε βρίσκονται στις βιβλιοθήκες (libraries) της γλώσσας.

Ούτε τα δελτία!

Το πρόγραμμα που επιτρέπει αυτή τη σύνδεση ονομάζεται συνδέτης ­ φορτωτής (linker loader).

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

Το αποτέλεσμα του συνδέτη είναι η παραγωγή του εκτελέσιμου προγράμματος (executable), το οποίο είναι το τελικό πρόγραμμα που εκτελείται από τον υπολογιστή.

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

Για το λόγο αυτό η συνολική διαδικασία αποκαλείται μεταγλώττιση και σύνδεση.

Όλες οι παραπάνω ανωμαλίες στη λειτουργία των καταστημάτων κάνουν τους πράκτορες επιφυλακτικούς για το αν και κατά πόσο το σημερινό τζακ ποτ θα ξεπεράσει τα 4 εκατ. ευρώ, παρά τη μεγάλη κίνηση και το ενδιαφέρον του κόσμου.

Η δημιουργία του εκτελέσιμου προγράμματος γίνεται μόνο στην περίπτωση, που το αρχικό πρόγραμμα δεν περιέχει λάθη.

"Έχει κίνηση, αλλά δεν μπορώ να πω με σιγουριά ότι θα ξεπεράσει τα 4 εκατ. ευρώ.

Τις περισσότερες φορές κάθε πρόγραμμα αρχικά θα έχει λάθη.

Ο κόσμος βλέπει ότι δεν λειτουργούν οι τερματικές μηχανές και φεύγει" λέει ο κ. Τσέντος.

Τα λάθη του προγράμματος είναι γενικά δύο ειδών, λογικά και συντακτικά.

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

Τα λογικά λάθη εμφανίζονται μόνο στην εκτέλεση, ενώ τα συντακτικά λάθη στο στάδιο της μεταγλώττισης.

Η κίνηση στα πρακτορεία αναμένεται να κορυφωθεί το μεσημέρι.

Σχ. 6.5. Μεταγλώττιση και σύνδεση προγράμματος

Υπενθυμίζεται ότι το μεγαλύτερο τζακ ποτ σημειώθηκε ήταν τον περασμένο Νοέμβριο και έφθασε στο αστρονομικό ποσό των 11 εκατ. ευρώ.

Εκτενής παρουσίαση των λαθών και των τρόπων που αντιμετωπίζονται γίνεται σε επόμενο κεφάλαιο.

Δύο ήταν τα τυχερά δελτία που κέρδισαν τότε το "χρυσό" Τζόκερ.

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

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

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

Σχ. 6.6. Διαδικασία μετάφρασης και εκτέλεσης ενός προγράμματος

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

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

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

Το κάθε προγραμματιστικό περιβάλλον έχει φυσικά διαφορετικά εργαλεία και ιδιότητες. Για παράδειγμα ένα περιβάλλον οπτικού (visual) προγραμματισμού πρέπει να περιέχει οπωσδήποτε και ειδικό συντάκτη που να διευκολύνει τη δημιουργία γραφικών αντικειμένων (για παράδειγμα φόρμες, λίστες, παράθυρα διαλόγου) παρέχοντας στον προγραμματιστή τα αντίστοιχα γραφικά εργαλεία.