Προγραμματισμός σε Macromedia Flash. Απόδοση σκηνής στο Stencyl

Πρόγραμμα Kerish Doctor. 24.05.2019
Επισκόπηση προγράμματος Η έκδοση υπολογιστή του Microsoft Excel Viewer θα επιτρέψει...

Μην υποθέτετε ότι έχετε μάθει πώς να προγραμματίζετε μελετώντας το κεφάλαιο Εισαγωγή στο ActionScript και το κεφάλαιο ActionScript Elements for Creating Games Υπάρχει διαφορά ανάμεσα στο να μπορείτε να γράφετε κώδικα ActionScript και να έχετε εμπειρία προγραμματισμού.

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

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

Ανάλυση εργασιών

Ο προγραμματισμός είναι μια διαδικασία. Μεγάλο πρόγραμμαμπορεί να σπάσει σε κομμάτια. Αυτά τα μέρη μπορούν να αναλυθούν σε ακόμη μικρότερα μέρη κ.λπ. Για να γράψετε ένα πρόγραμμα, πρέπει να εξετάσετε το πρόβλημα που σας δίνεται και να το λύσετε μέρος-μέρος.

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

Πρώτα απ 'όλα, σκεφτείτε ποια στοιχεία θα αποτελείται το παιχνίδι σας: το πλοίο του παίκτη, τους εισβολείς, τα βλήματα που εκτοξεύει το πλοίο και τα βλήματα που εκτοξεύουν οι εισβολείς.

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

Συνεχίστε περαιτέρω το σκεπτικό σας. Πώς γνωρίζετε ότι ο χρήστης έχει πατήσει το αριστερό πλήκτρο βέλους; Πώς μετακινείτε το πλοίο προς τα αριστερά; Τι γίνεται με το δεξί πλήκτρο βέλους και τη μετακίνηση του πλοίου προς τα δεξιά; Λύνοντας αυτά τα μικρά προβλήματα, θα λύσετε και το μεγάλο πρόβλημα της μετακίνησης του πλοίου. Μετά από αυτό, μπορείτε να προχωρήσετε στο επόμενο μέρος του προγράμματος. Αυτή η διαδικασία απαιτεί υπομονή, η οποία είναι μια ουσιαστική πτυχή του προγραμματισμού. Θα πρέπει επίσης να είστε υπομονετικοί με τον εαυτό σας. Μέχρι να γίνετε ειδικός στο ActionScript, θα πρέπει να αφιερώνετε χρόνο από τον προγραμματισμό κατά καιρούς για να αναζητήσετε κάποια εντολή που δεν γνωρίζετε ή μελετάτε ακόμη νέο υλικό. Δεν θα μπορείτε να γράψετε πολύπλοκα προγράμματαχωρίς να συμπληρώσετε κάποια κενά στις γνώσεις σας.

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

Κανόνες προγραμματισμού

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

  • σχόλια- Θα πρέπει να συνηθίσετε να προσθέτετε σχόλια στον κώδικά σας. Ακόμη και οι γραμμές που φαίνονται σαφείς αυτή τη στιγμή μπορεί να γίνουν ασαφείς αν επιστρέψετε σε αυτές ένα μήνα αργότερα.
  • ονόματα μεταβλητών- Χρησιμοποιήστε ονόματα μεταβλητών που αντικατοπτρίζουν τον σκοπό τους. Θα συμπληρώσουν τα σχόλια και θα σας βοηθήσουν να κατανοήσετε τον κώδικα όταν επιστρέψετε σε αυτόν αργότερα.
  • ονόματα συναρτήσεων- όλα τα παραπάνω ισχύουν για τα ονόματα συναρτήσεων. Πρέπει να περιγράφουν τις ενέργειες που εκτελούν.
  • όσο πιο κοντό τόσο το καλύτερο- Το Flash δεν έχει όριο στη διάρκεια μιας λειτουργίας. Ωστόσο, εάν γράψετε μια συνάρτηση που έχει μήκος 100 γραμμές, θα δυσκολευτείτε να την επεξεργαστείτε αργότερα. Είναι καλύτερα να χωρίσετε τη συνάρτηση σε εργασίες και να τοποθετήσετε κάθε εργασία σε ξεχωριστή συνάρτηση.
  • συμπεριλάβετε επαναχρησιμοποιήσιμες λειτουργίες στον κώδικά σας- κατά τον προγραμματισμό, μην ξεχάσετε να σκεφτείτε πώς μπορείτε να εφαρμόσετε αυτήν ή εκείνη τη λειτουργία σε μια παρόμοια ή παρόμοια εργασία σε άλλο μέρος του προγράμματός σας. Ας υποθέσουμε ότι χρειάζεστε μια συνάρτηση που προσθέτει έναν πόντο στη βαθμολογία ενός παίκτη. Προσπαθήστε να χρησιμοποιήσετε μια παράμετρο σε αυτό που σας επιτρέπει να προσθέσετε όχι μόνο έναν, αλλά και οποιονδήποτε άλλο αριθμό πόντων στη βαθμολογία σας.
  • προσπαθήστε να αποφύγετε τη σκληρή κωδικοποίηση- Σκληρή κωδικοποίηση σημαίνει να συμπεριλάβετε συγκεκριμένους αριθμούς στον κώδικά σας. Ας πούμε να περιγράψουμε δεξιά πλευράτο πεδίο εργασίας στον κώδικά σας χρησιμοποιεί την τιμή 550, θα κωδικοποιηθεί σκληρά στο πρόγραμμα. Εάν αποφασίσετε να επεκτείνετε την περιοχή εργασίας στα 600 pixel, θα πρέπει να αλλάξετε κάθε χρήση της τιμής 550 στον κώδικα. Είναι καλύτερα να ορίσετε μια μεταβλητή που ονομάζεται screenRightSide στην αρχή 550 και να χρησιμοποιήσετε αυτήν τη μεταβλητή σε όλο το πρόγραμμα.
  • καλή οργάνωση- ένας καλός προγραμματιστής θα πρέπει αναμφίβολα να είναι σε θέση να οργανώσει διάφορα στοιχείαπρογράμματα. Για παράδειγμα, οι λειτουργίες δεν πρέπει να τοποθετούνται σε διαφορετικά καρέ, αλλά σε ένα καρέ του βίντεό σας. Επιπλέον, προσπαθήστε να ομαδοποιήσετε τις λειτουργίες σύμφωνα με τις εργασίες που εκτελούν.

Εντοπισμός σφαλμάτων

Όλοι οι προγραμματιστές πρέπει να διορθώσουν τα προγράμματα που δημιουργούν. Αδύνατον να επιτευχθεί τέλεια δουλειάπρόγραμμα κατά την πρώτη εκκίνηση. Ένας καλός ειδικός θα πρέπει να μπορεί να διορθώνει ένα πρόγραμμα.

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

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

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

Δοκιμές

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

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

Συνήθως, πριν από την επίσημη παρουσίαση σε ένα ευρύ κοινό, το παιχνίδι περνά από δύο στάδια επαλήθευσης. Στο πρώτο στάδιο (alpha testing), το παιχνίδι δοκιμάζεται από τους συναδέλφους ή τους φίλους σας. Η δοκιμή beta γίνεται από άτομα εκτός της εταιρείας ή του δικτύου σας. Και στις δύο φάσεις, θα πρέπει να λαμβάνετε ειδοποιήσεις για τυχόν προβλήματα που εντοπίστηκαν και να κυκλοφορήσετε ενημερωμένες εκδόσεις του παιχνιδιού καθώς επιδιορθώνονται.

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

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

Flash - Χρήση ActionScript 3.0

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

Τα τελευταία χρόνια, τα πιο δημοφιλή προγράμματα περιήγησης προσπαθούν να απαλλαγούν από αυτά χρησιμοποιώντας Flashυπέρ των δυνατοτήτων HTML5. Για παράδειγμα, πρόσφατα εκδόσεις GoogleΧρώμιο Πρόσθετο Adobe Flash Player έχει διακοπεί από προεπιλογή και σε ιστότοπους που χρησιμοποιούν Flash πρέπει να το ενεργοποιήσετε μη αυτόματα. Πολλές δημοφιλείς υπηρεσίες βίντεο, όπως το YouTube, έχουν επίσης εγκαταλείψει το Flash υπέρ της HTML5. Ωστόσο, τα παιχνίδια flash εξακολουθούν να είναι ιδιαίτερα δημοφιλή, όπου οι δυνατότητες της HTML5 εξακολουθούν να είναι σημαντικά κατώτερες.

Το Flash έχει δύο πρόσωπα: αυτό που βλέπετε στην οθόνη και μια περίπλοκη μηχανή δέσμης ενεργειών που ονομάζεται ActionScript, που δεν βλέπετε. Ως γλώσσα σεναρίου ενσωματωμένη στο Flash, το ActionScript σάς επιτρέπει να δημιουργείτε διαδραστικές εμπειρίες. Απαιτείται κάθε βίντεο στο οποίο πρέπει να κάνετε κλικ, να σύρετε ή να διακόψετε κάτι χρησιμοποιώντας ActionScript, το οποίο θα πει στο Flash τι να κάνει. Το ActionScript είναι η βάση για όλη τη διαδραστικότητα και τη λογική που είναι ενσωματωμένη στο Flash.

Η κυκλοφορία του Flash CS3 παρουσίασε την ActionScript 3.0, μια πολύ βελτιωμένη γλώσσα δέσμης ενεργειών. Οι παλαιότερες εκδόσεις του ActionScript άργησαν να εκτελέσουν μεγάλα, πολύπλοκα σενάρια. Το ActionScript 3.0 το άλλαξε. Είναι σχεδόν 10 φορές πιο γρήγορο από το ActionScript 2.0 και έχει πολύ περισσότερη λειτουργικότητα.

Το ActionScript 3.0 υιοθέτησε μια αληθινή αντικειμενοστραφή προσέγγιση ανάπτυξης που επιτρέπει στις εφαρμογές Flash να ανταγωνιστούν λύσεις που έχουν αναπτυχθεί χρησιμοποιώντας Microsoft .NET (Silverlight) ή Java. Το ActionScript 3.0 βελτιώνει σημαντικά αυτό που μπορεί να επιτευχθεί αυξάνοντας την ταχύτητα της εργασίας Flash playerΠρόγραμμα αναπαραγωγής 9 και 10. Με το ActionScript 3.0 και το Flash Player 10.1 και νεότερες εκδόσεις, μπορείτε να δημιουργήσετε εφαρμογές για τα περισσότερα επιτραπέζιους υπολογιστές, συσκευές και συστήματα. Το ActionScript 3.0 είναι επί του παρόντος η προεπιλεγμένη γλώσσα δέσμης ενεργειών στο Flash CS5 και σε νεότερες εκδόσεις.

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

Χρήση αντικειμενοστρεφούς προγραμματισμού στο ActionScript

Αντικείμεναείναι το κλειδί για την κατανόηση αντικειμενοστραφής προγραμματισμός (OOP). Στο OOP, ένα αντικείμενο είναι τόσο πραγματικό όσο ένα συνηθισμένο αντικείμενο στον κόσμο μας. Για παράδειγμα, ένας σκύλος ή ακόμα και ένας υπολογιστής είναι αντικείμενα που υπάρχουν στον πραγματικό κόσμο. Αντικείμενα πραγματικό κόσμοΕίναι παρόμοια με τα αντικείμενα στον κόσμο των υπολογιστών από δύο απόψεις: έχουν μια συγκεκριμένη κατάσταση και συμπεριφορά. Για παράδειγμα, η κατάσταση ενός σκύλου μπορεί να περιγραφεί από ιδιότητες όπως το όνομά του, το χρώμα, τη ράτσα και το αν πεινάει. Η συμπεριφορά του σκύλου θα είναι το γάβγισμα, η αναζήτηση προσοχής και το κούνημα της ουράς του.

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

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

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

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

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

Ρύθμιση Flash για τον κινητήρα AVM 2.0

Flash Player- μια προσθήκη που είναι εγκατεστημένη στο πρόγραμμα περιήγησής σας για την αναπαραγωγή αρχείων SWF είναι το κλειδί της επιτυχίας κατά τη δημιουργία γρήγορων εφαρμογών. Για τη μεταγλώττιση και, στη συνέχεια, εκτέλεση οποιουδήποτε κώδικα ActionScript σε ταινίες, το Flash Player χρησιμοποιεί ένα εργαλείο που ονομάζεται ActionScript Virtual Machine (ActionScript Virtual Machine) ή AVM. Για το ActionScript 1.0 και 2.0, το Flash Player χρησιμοποιεί AVM 1.0. Το Flash Player 9 παρουσίασε τη νέα έκδοση AVM 2.0, η οποία χρησιμοποιείται για να λειτουργεί μόνο με αρχεία SWF ActionScript 3.0. Είναι αρκετά εύκολο να κυριαρχήσει.

Χρήση AVM 2.0. μπορείτε να δημιουργήσετε εφαρμογές που χαρακτηρίζονται από υψηλή ταχύτητακαι την πολυπλοκότητα των παραδοσιακών εφαρμογών επιφάνειας εργασίας. Παραδείγματα τέτοιων εφαρμογών περιλαμβάνουν το WorkFlow Lab της Adobe, ένα εργαλείο που σας επιτρέπει να αναπτύσσετε σύνθετες εφαρμογές ροής εργασίας και ανταγωνίζεται απευθείας το εργαλείο Visio της Microsoft. Το Adobe Story, ένα εργαλείο που σας επιτρέπει να δημιουργείτε σενάρια για παραγωγές πολυμέσων και βίντεο, και το Kuler, ένα εξελιγμένο εργαλείο διαχείρισης χρωμάτων. Η χρήση αυτών των εργαλείων παρέχει την ίδια απόκριση με τις παραδοσιακές εφαρμογές επιτραπέζιου υπολογιστή.

Η ανάπτυξη λύσεων στο ActionScript 3.0 που στοχεύουν τη μηχανή AVM 2.0 διασφαλίζει ότι βελτιστοποιείτε σημαντικά την εμπειρία σας Flash.

Το Flash Player 9 υποστηρίζει το AVM 1.0 για συμβατότητα προς τα πίσω με υπάρχον και παλαιού τύπου περιεχόμενο. Το Flash Player 7 και 8 υποστηρίζουν μόνο AVM 1.0. Ωστόσο, υπάρχουν ορισμένα ζητήματα συμβατότητας που πρέπει να γνωρίζετε. Ένα αρχείο SWF δεν μπορεί να συνδυάσει ActionScript 1.0 ή 2.0 με κώδικα έκδοσης 3.0, αλλά ο κώδικας μπορεί να φορτωθεί Αρχείο SWFμε εκδόσεις 1.0 ή 2.0, αλλά δεν μπορεί να έχει πρόσβαση σε μεταβλητές και λειτουργίες αρχείων (εκτός από τη δυνατότητα χρήσης εντολή loadMovieNum().και περάστε την παράμετρο επίπεδο). Εάν έχετε κωδικό έκδοσης 1.0 ή 2.0 και θέλετε να χρησιμοποιήσετε τον κωδικό έκδοσης 3.0, πρέπει να συμπεριλάβετε όλα τα παλιός κώδικαςστο ActionScript 3.0. Εάν θέλετε να χρησιμοποιήσετε συμπεριφορές, θα πρέπει να καταφύγετε στο ActionScript 2.0, καθώς οι συμπεριφορές δεν είναι διαθέσιμες για την έκδοση 3.0.

Εικονικές μηχανές και JavaScript

Τα προγράμματα περιήγησης ιστού χρησιμοποιούν εικονικές μηχανές για την εκτέλεση JavaScript, που είναι ο ξάδερφος του ActionScript. Και οι δύο τεχνολογίες βασίζονται σε διεθνής μορφή ECMA-262, ή ECMAScript, όπως συχνά αποκαλείται. Τα προγράμματα περιήγησης όπως Google Chrome, Safari, FireFox και Internet Explorer χρησιμοποιούν εικονικές μηχανές Σενάρια JavaScript (JavaScript Virtual Machines - JVM) για αναπαραγωγή περιεχομένου.

Πολλές από τις εταιρείες που δημιουργούν μηχανές προγράμματος περιήγησης τους δίνουν πολύχρωμα ονόματα: V8 για το Google Chrome, SquirrelFish για Safari και SpiderMonkey για FireFox. Αλλά ο νικητής στα πρωτότυπα ονόματα, φυσικά, μπορεί να δοθεί στη Microsoft - η δημιουργική της έμπνευση περιορίστηκε στο όνομα της εικονική μηχανή JS (για JavaScript).

Φυσικά, το AVM 2.0 από την Adobe παίρνει τη δεύτερη θέση εδώ. Υπάρχει περίπτωση η Adobe να δώσει στο AVM 3.0 ένα πιασάρικο όνομα;)

Χρήση ActionScript 3.0

Το ActionScript 3.0 έχει υποστεί σημαντικές αλλαγές σε σύγκριση με τις προηγούμενες εκδόσεις. Αυτό δεν σημαίνει ότι αν έχετε εργαστεί με το ActionScript 1.0 ή 2.0 θα δυσκολευτείτε. Απλώς, η εκμάθηση νέων τρόπων χρήσης κώδικα θα πάρει χρόνο.

Κατανόηση του ActionScript 3.0

Το ActionScript 3.0 είναι αξιόπιστο μοντέλοπρογραμματισμού (πλήρως ενημερωμένος με την τελευταία έκδοση του προτύπου ECMAScript), εξοικειωμένος σε προγραμματιστές με βασικές γνώσεις OOP. Εάν έχετε ήδη χρησιμοποιήσει άλλες γλώσσες προγραμματισμού, όπως Java, C++ ή C#, τότε θα πρέπει να γνωρίζετε τι σημαίνει αυτός ο όρος.

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

Ας δούμε τις κύριες αλλαγές που θα χρειαστούν λίγο χρόνο για να συνηθίσουμε:

    Το ActionScript βρίσκεται στα αρχεία της τάξης ή στη γραμμή χρόνου.

    Ο σχεδιασμός κώδικα είναι πραγματικά αντικειμενοστραφής.

    Δεν μπορείτε να προσθέσετε το ActionScript απευθείας σε κλιπ ταινιών ή παρουσίες κουμπιών.

    Η ενεργοποίηση συμβάντος έχει υποστεί αλλαγές.

    Η XML αντιμετωπίζεται διαφορετικά.

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

Εργασία με ActionScript 3.0

Υπάρχουν δύο τρόποι για να εργαστείτε με το ActionScript. Το πρώτο είναι να προσθέσετε το ActionScript στη γραμμή χρόνου. Αυτό θα είναι γνωστό στους μακροχρόνιους προγραμματιστές του Flash. Συνιστάται να έχετε ένα επίπεδο σε αυτό το χρονοδιάγραμμα αφιερωμένο μόνο στην εργασία με το ActionScript. Η Adobe συνιστά να το χαρακτηρίσετε ως ενέργειες. Το κλείδωμα αυτού του επιπέδου θα αποτρέψει την κατά λάθος προσθήκη κλιπ ταινιών σε αυτό.

Η δεύτερη μέθοδος είναι να εισαγάγετε το ActionScript σε αρχεία Flash με ένα αρχείο Class. Τα αρχεία της τάξης έχουν μακρά ιστορίαστον κόσμο της ανάπτυξης. Με τη βοήθειά τους, μπορείτε να καθορίσετε τόσο δημόσιες όσο και ιδιωτικές τάξεις. Λέξη-κλειδί Ιδιωτικήπεριορίζει τη χρήση ενός χαρακτηριστικού που ορίζεται μόνο σε αυτήν την κλάση και δεν είναι κοινόχρηστο με άλλες κλάσεις. Αυτό είναι χρήσιμο όταν αναπτύσσετε οδηγίες που πρέπει να συμπληρωθούν σε ξεχωριστό χώρο, ιδιωτικά.

Αλλος σημαντικές αλλαγέςπαρατίθενται παρακάτω:

    Ανάπτυξη κτιριακών λύσεων με μοντέλο συμβάντα DOM 3.

    Χρήση χώρων ονομάτων στα έργα σας.

    Διαχείριση δεδομένων.

    Διαχείριση κειμένου.

    Σχέδιο χρησιμοποιώντας την κλάση Shape.

    Δυνατότητα εύκολης εργασίας με εξωτερικές βιβλιοθήκες ActionScript.

Ομοιότητες μεταξύ ActionScript 2.0 και 3.0

Παρά όλες τις αλλαγές στο ActionScript 3.0 σε σύγκριση με το 2.0, είναι σημαντικό να θυμάστε ότι υπάρχουν πολλές λειτουργίες που είναι οι ίδιες και στις δύο εκδόσεις. Για παράδειγμα, μπορείτε ακόμα να χρησιμοποιήσετε τα ακόλουθα στοιχεία με τον ίδιο τρόπο: μεταβλητές, αντικείμενο Math, εντολές if/else, εντολές διακόπτη, συμβολοσειρές, ημερομηνίες, πίνακες και booleans.

Ο παρακάτω κώδικας λειτουργεί τόσο στο ActionScript 2.0 όσο και στο 3.0:

Var str1:String = new String("Hello, "); var str2:String = new String("world"); trace(str1 + str2);

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

Επέκταση ActionScript με ανοιχτές βιβλιοθήκες

Ο πυρήνας του ActionScript 3.0 είναι ότι μπορεί να επεκταθεί εύκολα. Για να το κάνετε αυτό, μπορείτε να χρησιμοποιήσετε δεκάδες μεγάλες βιβλιοθήκες ανοιχτού κώδικα που επεκτείνουν τη λειτουργικότητα του Flash. Αξιόλογα παραδείγματα είναι:

    Box2D Physics Engine;

    CoreLib – μια συλλογή βασικών βοηθητικών προγραμμάτων, όπως κατακερματισμός MD5, σειριοποίηση JSON και προηγμένη ανάλυση δεδομένων.

    Syndication Library – μια βιβλιοθήκη που διευκολύνει την ανάλυση βασικά κανάλια ATOM και RSS.

    Το Alive PDF είναι μια βιβλιοθήκη που σας επιτρέπει να μετατρέψετε περιεχόμενο οθόνης από Flash σε μορφή PDF.

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

Ποιες λειτουργίες επιτελούν τα προγράμματα υπολογιστών;

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

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

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

Με μια γενική έννοια, πρόγραμμα υπολογιστή- Αυτό οδηγίες βήμα προς βήμα, τα οποία δίνονται στον υπολογιστή από τον χειριστή και τα οποία ο υπολογιστής εκτελεί το ένα μετά το άλλο. Κάθε μεμονωμένη οδηγία καλείται οδηγίες. Στο ActionScript, κάθε πρόταση ακολουθείται από ένα ερωτηματικό.

Στην ουσία, όλες οι λειτουργίες μιας μεμονωμένης εντολής προγράμματος καταλήγουν στον έλεγχο πολλών bits πληροφοριών που είναι αποθηκευμένες στη μνήμη του υπολογιστή. Ένα απλό παράδειγμαείναι η προσθήκη δύο αριθμών και η αποθήκευση του αποτελέσματος στη μνήμη του υπολογιστή. Περισσότερο σύνθετο παράδειγμαείναι να σχεδιάσετε ένα ορθογώνιο στην οθόνη του υπολογιστή και να δημιουργήσετε ένα πρόγραμμα για να μετακινήσετε αυτό το ορθογώνιο σε άλλη θέση στην οθόνη. Ορισμένες πληροφορίεςσχετικά με το ορθογώνιο αποθηκεύεται στη μνήμη του υπολογιστή: x, y συντεταγμένες της θέσης του ορθογωνίου, πλάτος και μήκος των πλευρών, χρώμα κ.λπ. Κάθε κομμάτι αυτής της πληροφορίας αποθηκεύεται στη μνήμη του υπολογιστή. Ο αλγόριθμος του προγράμματος για τη μετακίνηση ενός ορθογωνίου σε διαφορετική θέση στην οθόνη περιλαμβάνει ενέργειες όπως η ρύθμιση της συντεταγμένης x στο 200 και της συντεταγμένης y σε 150. Με άλλα λόγια, πρέπει να αντιστοιχίσετε νέες τιμές στις συντεταγμένες x και y. Ο υπολογιστής εκτελεί ορισμένες λειτουργίες σε αυτά τα δεδομένα, κρυμμένα από τον χρήστη, για να μετατρέψει πραγματικά αυτούς τους αριθμούς σε μια εικόνα που εμφανίζεται στην οθόνη του υπολογιστή. Ωστόσο, σε βασικό επίπεδο, αρκεί να γνωρίζουμε ότι η διαδικασία μετακίνησης ενός ορθογωνίου στην οθόνη περιλαμβάνει μόνο την αλλαγή των bits δεδομένων στη μνήμη του υπολογιστή.

Μεταβλητές και σταθερές

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

Τιμή 1 + τιμή 2

Όταν εκτελείτε αυτά τα βήματα στην πράξη, ο υπολογιστής βρίσκει τις τιμές για κάθε μεταβλητή και τις αθροίζει.

Στο ActionScript 3.0, μια μεταβλητή έχει στην πραγματικότητα τρία διαφορετικά μέρη:

    όνομα μεταβλητής

    τύπος δεδομένων που μπορούν να αποθηκευτούν σε μια μεταβλητή

    πραγματική τιμή που είναι αποθηκευμένη στη μνήμη του υπολογιστή

Εξέτασε πώς ο υπολογιστής χρησιμοποιεί ένα όνομα ως σύμβολο κράτησης θέσης για μια τιμή. Ο τύπος δεδομένων είναι εξίσου σημαντικός. Όταν δημιουργείτε μια μεταβλητή στο ActionScript, καθορίζετε έναν συγκεκριμένο τύπο δεδομένων που θα αποθηκευτεί. Από εδώ και στο εξής, κατά την εκτέλεση εντολών προγράμματος, μόνο οι τιμές αυτού του τύπου δεδομένων μπορούν να αποθηκευτούν σε μια μεταβλητή. Μπορείτε να χειριστείτε την τιμή χρησιμοποιώντας ορισμένα χαρακτηριστικά που σχετίζονται με αυτόν τον τύπο δεδομένων. Για να δημιουργήσετε μια μεταβλητή στο ActionScript (αυτή η διαδικασία ονομάζεται επίσης δήλωση ή έργομεταβλητή) χρησιμοποιείται η εντολή var:

Var value1:Number;

Αυτό το παράδειγμα ορίζει εντολές για τη δημιουργία μιας μεταβλητής τιμής1 που μπορεί να αποθηκεύσει μόνο τιμές τύπου Number. (Ο αριθμός είναι ένας συγκεκριμένος τύπος δεδομένων στο περιβάλλον ActionScript.) Μπορείτε επίσης να αποθηκεύσετε την τιμή απευθείας σε μια μεταβλητή:

Var value2:Number = 17;

Adobe Flash Professional

Το Flash Professional έχει έναν άλλο τρόπο για να ορίσετε μια μεταβλητή. Όταν τοποθετείτε ένα σύμβολο κλιπ ταινίας, σύμβολο κουμπιού ή σύμβολο πλαισίου κειμένου στη σκηνή, μπορείτε να του δώσετε ένα όνομα παρουσίας στο Property inspector. Στην κρυφή λειτουργία, το Flash Professional δημιουργεί μια μεταβλητή με το ίδιο όνομα με το όνομα της παρουσίας. Αυτό το όνομα μπορεί να χρησιμοποιηθεί στον κώδικα ActionScript για να αναπαραστήσει αυτό το στοιχείο στη σκηνή. Για παράδειγμα, ας υποθέσουμε ότι υπάρχει ένα σύμβολο κλιπ ταινίας στη σκηνή και του δίνετε το όνομα της παρουσίας rocketShip . Όταν χρησιμοποιείτε τη μεταβλητή rocketShip στον κώδικα ActionScript, στην πραγματικότητα ελέγχετε το κλιπ της ταινίας.

Συνεχήςπαρόμοια με μια μεταβλητή. Αυτό είναι ένα όνομα που αντιπροσωπεύει μια τιμή ενός δεδομένου τύπου δεδομένων στη μνήμη του υπολογιστή. Η διαφορά είναι ότι σε μια σταθερά εκχωρείται μια τιμή μόνο μία φορά κατά την εκτέλεση της εφαρμογής ActionScript. Μόλις εκχωρηθεί μια τιμή σε μια σταθερά, δεν αλλάζει πλέον στην εφαρμογή. Η σύνταξη για τον ορισμό μιας σταθεράς είναι σχεδόν ίδια με τη σύνταξη για τον ορισμό μιας μεταβλητής. Η μόνη διαφορά είναι ότι αντ' αυτού χρησιμοποιείται η λέξη-κλειδί const λέξη-κλειδί var:

Const SALES_TAX_RATE:Αριθμός = 0,07;

Μια σταθερά χρησιμοποιείται για να ορίσει μια τιμή που εμπλέκεται σε πολλά στάδια ενός έργου και που δεν αλλάζει υπό κανονικές συνθήκες. Η χρήση σταθερών αντί για κυριολεκτικές τιμές κάνει τον κώδικα πιο ευανάγνωστο. Για παράδειγμα, εξετάστε δύο εκδόσεις του ίδιου κώδικα. Ένας κωδικός χρησιμοποιείται για τον πολλαπλασιασμό της τιμής με την τιμή της μεταβλητής SALES_TAX_RATE. Ένας άλλος κωδικός χρησιμοποιείται για τον πολλαπλασιασμό της τιμής επί 0,07. Η έκδοση που χρησιμοποιεί τη σταθερά SALES_TAX_RATE είναι πιο κατανοητή. Επιπλέον, υποθέστε ότι η τιμή που καθορίζεται από τη σταθερά αλλάζει. Εάν το έργο σας χρησιμοποιεί μια σταθερά για να αναπαραστήσει μια τιμή, μπορείτε να αλλάξετε την τιμή σε ένα σημείο (τη δήλωση σταθερής). Αντίθετα, θα χρειαστεί να το αλλάξετε σε διάφορα σημεία όταν χρησιμοποιείτε προγραμματισμένες κυριολεκτικές τιμές.

Τύποι Δεδομένων

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

    Γραμμές: τιμές κειμένου, όπως το όνομα ή το κείμενο ενός κεφαλαίου βιβλίου

    Numeric: Το ActionScript 3.0 περιλαμβάνει τρεις συγκεκριμένους τύπους αριθμητικών δεδομένων:

    • Αριθμός: τυχόν ακέραιες ή κλασματικές αριθμητικές τιμές

      int: ακέραιοι αριθμοί χωρίς κλάσματα

      uint: ανυπόγραφοι (μη αρνητικοί) ακέραιοι αριθμοί

    Boolean: τιμές true-false, όπως καταστάσεις διακόπτη ή ισότητα ή ανισότητα δύο τιμών

Οι απλοί τύποι δεδομένων αντιπροσωπεύουν μεμονωμένα κομμάτια πληροφοριών: για παράδειγμα, έναν αριθμό ή ένα μεμονωμένο κείμενο. Ωστόσο, οι περισσότεροι από τους τύπους δεδομένων που ορίζονται στο περιβάλλον ActionScript είναι σύνθετοι τύποι δεδομένων. Αντιπροσωπεύουν ένα σύνολο τιμών σε ένα δοχείο. Για παράδειγμα, μια μεταβλητή με τύπο δεδομένων Ημερομηνία αντιπροσωπεύει μια μεμονωμένη τιμή (ένα χρονικό σημείο). Ωστόσο, μια τιμή ημερομηνίας περιλαμβάνει πολλές τιμές: ημέρα, μήνα, έτος, ώρες, λεπτά, δευτερόλεπτα, κ.λπ., οι οποίες είναι μεμονωμένοι αριθμοί. Συνήθως, μια ημερομηνία αντιμετωπίζεται ως μεμονωμένη τιμή και μπορεί να αντιμετωπιστεί ως μία τιμή δημιουργώντας μια μεταβλητή Ημερομηνία. Ωστόσο, σε έναν υπολογιστή, μια ημερομηνία θεωρείται μια ομάδα πολλών τιμών που μαζί ορίζουν μια ενιαία ημερομηνία.

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

    MovieClip: σύμβολο κλιπ ταινίας

    Πεδίο κειμένου: δυναμικό ή πεδίο κειμένου εισαγωγής

    SimpleButton: σύμβολο κουμπιού

    Ημερομηνία: πληροφορίες για ένα μόνο χρονικό σημείο (ημερομηνία και ώρα)

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

    Ο τύπος δεδομένων της myVariable είναι Number.

    Η μεταβλητή myVariable είναι μια εμφάνιση του Number.

    Η μεταβλητή myVariable είναι ένα αντικείμενο Number.

    Η μεταβλητή myVariable είναι μια εμφάνιση της κλάσης Number.

Μία από τις επιλογές για τη χρήση της τεχνολογίας Flash είναι η δημιουργία μεγάλες εφαρμογέςστην πλευρά του πελάτη. Για παράδειγμα, το άρθρο εξετάζει τη δημιουργία μιας αριθμομηχανής σε μια τοποθεσία Web για τον υπολογισμό της ασφάλισης αυτοκινήτου.

Η Macromedia () με το Flash της κατέκτησε με επιτυχία τις προσδοκίες της αγοράς και δημιούργησε ένα εξαιρετικό προϊόν. Ωστόσο, το θέμα δεν είναι σε ένα, έστω και πολύ καλό, πρόγραμμα. Σήμερα, η ζωή απαιτεί συχνά έναν επαγγελματία στο χώροπληροφορικής επιλέξτε εργαλεία ανάλογα με την εργασία που έχετε στο χέρι και μερικές φορές πρέπει να το κατακτήσετε μέσα σε λίγες μόνο ημέρεςή ένα νέο προϊόν λογισμικού. Οι μέθοδοι που προτείνονται παρακάτω για την επίλυση ορισμένων προβλημάτων στον τομέα της δημιουργίας ιστοσελίδων δεν απαιτούν πολλή μελέτη.

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

ενδιαφέρουσα ερώτηση

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

Πού να χρησιμοποιήσετε το Flash

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

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

χρησιμοποιώντας Flash . Ας συζητήσουμε πότε να χρησιμοποιήσουμε αυτήν την τεχνολογία και πότε είναι καλύτερο να στραφούμε σε παραδοσιακές μεθόδους JavaScript, Java, VBScript.; Τα μέσα εργασίας με χορδές είναι πολύ μέτρια. Στην έκδοση 5, η γλώσσα έχει αλλάξει δραματικά και έχει γίνει παρόμοια με τις περισσότερες άλλες γλώσσες προγραμματισμού για το Διαδίκτυο, αλλά προς το παρόν θα δούμε ένα παράδειγμα που έγινε στην έκδοση 4 του ActionScript, καθώς αυτή η έκδοση είναι πιο εύκολη για αρχάριους προγραμματιστές και σχεδιαστές Ιστού να καταλάβεις. Ταυτόχρονα, η μετάβαση στην πέμπτη έκδοση μετά την απόκτηση κάποιας εμπειρίας δεν θα προκαλέσει προβλήματα.

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

Η χρήση του Flash για τέτοιες εφαρμογές ανοίγει πολλές δυνατότητες στον σχεδιαστή (περιορίζεται μόνο από τη φαντασία του) όταν δημιουργεί διεπαφή χρήστη. Αντί να συνδυάζετε πολλές τεχνολογίες για να λύσετε ένα πρόβλημα, μπορείτε να κάνετε τα πάντα σε ένα πρόγραμμα - το πρόγραμμα επεξεργασίας ταινιών Flash και να διορθώσετε αμέσως το αποτέλεσμα. Επιπλέον, σύμφωνα με τη Macromedia, σχεδόν το 95% των χρηστών του Διαδικτύου έχουν ήδη εγκατεστημένο πρόγραμμα αναπαραγωγής για την αναπαραγωγή ταινιών Flash. Τώρα ας προχωρήσουμε σε ένα συγκεκριμένο παράδειγμα που μπορεί να καταδείξει τη χρήση της τεχνολογίας Flash για την ανάπτυξη μιας συγκεκριμένης εφαρμογής.

Δήλωση του προβλήματος

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

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

Κατά την επιλογή ενός εργαλείου υλοποίησης, ελήφθησαν υπόψη οι ακόλουθες συνθήκες.

  • Οι μαθηματικοί υπολογισμοί ήταν αρκετά απλοί και συνοψίστηκαν στην εκτέλεση αριθμητικών πράξεων, τον έλεγχο των συνθηκών, τη στρογγυλοποίηση σε έναν ακέραιο αριθμό κ.λπ.
  • Ήταν επιθυμητό να απομακρυνθούμε από την παραδοσιακή διεπαφή των εντύπων ερωτηματολογίου που επικρατεί στο Διαδίκτυο. Ήταν απαραίτητο να δοθεί η ευκαιρία στον χρήστη να «παίξει» με τη διεπαφή, αλλάζοντας τις αρχικές τιμές υπολογισμού όσες φορές ήθελε και να πάρει αμέσως το αποτέλεσμα. Συνιστάται η άμεση επεξεργασία όλων των σφαλμάτων.
  • Ήταν επιθυμητό να αποφευχθεί η αλληλεπίδραση με τον διακομιστή κατά την εκτέλεση υπολογισμών.
  • Φυσικά, έπαιξε ρόλο και ο παράγοντας ότι ο συγγραφέας αυτών των γραμμών ήταν ήδη αρκετά εξοικειωμένος με την τεχνολογία Flash και είχε εμπειρία στον προγραμματισμό στο ActionScript.

Η ικανότητα να δημιουργείς πλήρως ανεξάρτητη εφαρμογήμε μια μοναδική διεπαφή φαινόταν τόσο δελεαστική που δεν υπήρχε λόγος να διστάζετε για μεγάλο χρονικό διάστημα στην επιλογή ενός εργαλείου. Έτσι επιλέξαμε το Flash.

Δημιουργία εφαρμογής

Δομή και αλγόριθμος προγράμματος

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


Ρύζι. 1. Γενική άποψη του εντύπου υπολογισμού ασφάλισης αυτοκινήτου.

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



Ρύζι. 2. Επιλογή μάρκας αυτοκινήτου.

Το αντίστοιχο παράθυρο μενού φαίνεται στο Σχ. 2. Για να απλοποιήσουμε την επιλογή και να αποκρύψουμε την εσωτερική λογική του προγράμματος, χρησιμοποιούμε διαφορετικό κουμπί για κάθε μάρκα αυτοκινήτου. Όταν κάνετε κλικ σε αυτό το κουμπί, εκτελείται ο ακόλουθος κώδικας:

Ενεργό (Απελευθέρωση) Αρχή ειδοποίησης στόχου ("/") Ρύθμιση μεταβλητής: "AvtoTypeText" = "VAZ 2115" Ορισμός μεταβλητής: "CarsGroup" = 1 Τέλος ειδοποίησης στόχου Μετάβαση και διακοπή (HideWin) Τέλος ενεργό

Εδώ ορίζεται αμέσως η μεταβλητή AvtoTypeText, η οποία αργότερα χρησιμοποιείται για έξοδο σε ένα δυναμικό πεδίο κειμένου για την εμφάνιση της επιλεγμένης επωνυμίας. Επιπλέον, καθιερώνεται η ομάδα στην οποία εμπίπτει το αυτοκίνητο. Αυτές οι δηλώσεις εσωκλείονται σε ένα μπλοκ Tell Target. Το σύμβολο "/" υποδεικνύει ότι οι μεταβλητές βρίσκονται στο κύριο επίπεδο, το οποίο περιέχει όλα τα άλλα κλιπ.

Χειριστής Μετάβαση και διακοπή (HideWin)ορίζει τη φόρμα σε μια αόρατη κατάσταση μετά το κλικ στο κουμπί, δηλαδή κάνοντας κλικ στο κουμπί ταυτόχρονα κλείνει το παράθυρο. Αυτό δικαιολογείται, αφού η επιλογή της μάρκας του αυτοκινήτου είναι ξεκάθαρη.

Δημιουργία μοναδικών στοιχείων διεπαφής

Εδώ θα πρέπει να διευκρινίσουμε λίγο για όσους δεν είναι ακόμα εξοικειωμένοι με τον προγραμματισμό flash: μία από τις κύριες τεχνικές αυτής της τεχνολογίας είναι η χρήση σταθερών καταστάσεων του κλιπ. Δεν θα δώσουμε ορισμούς όρων που βρίσκονται στα αρχεία Βοήθειας και στα σχολικά βιβλία.

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

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

Από το Σχ. 3 μπορείτε να δείτε ότι αυτό το κλιπ περιέχει δύο επίπεδα. Τα αντικείμενα και ο κώδικας χωρίζονται σε διαφορετικά επίπεδα για λόγους ευκολίας. Αυτό δεν έχει καμία επίδραση στην εκτέλεση του προγράμματος.


Ρύζι. 3. Τα αντικείμενα και ο κώδικας χωρίζονται σε διαφορετικά επίπεδα.

Επειδή μιλάμε για σταθερές καταστάσεις, θα υποδείξουμε αμέσως ένα άλλο αντικείμενο στο οποίο χρησιμοποιείται αυτή η τεχνική. Αυτό είναι ένα κουμπί επιλογής (στοιχείο CheckBox). Υπάρχουν πολλά από αυτά σε αυτό το πρόγραμμα. Ένα τέτοιο στοιχείο υλοποιείται πολύ απλά και ταυτόχρονα, οι δυνατότητες σχεδιασμού για να δώσουν σε αυτά τα στοιχεία μια μοναδική εμφάνιση είναι απεριόριστες, σε αντίθεση με άλλες τεχνολογίες.

Για να δημιουργήσετε έναν διακόπτη, πρέπει να δημιουργήσετε δύο αντικείμενα Button. Κάθε ένα από αυτά θα αντιπροσωπεύει μία από τις σταθερές καταστάσεις του διακόπτη (Εικ. 4).


Ρύζι. 4. Δύο καταστάσεις των κουμπιών διακόπτη.

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

Ενεργοποίηση (Απελευθέρωση) Αναπαραγωγή Τέλος Ενεργοποίηση

Αυτό είναι όλο. Όταν κάνετε κλικ σε οποιοδήποτε από τα κουμπιά, θα συμβεί μια μετάβαση σε ένα πλαίσιο. Εμφάνισητο κλιπ θα αλλάξει ανάλογα. Στα πλαίσια κλιπ, μπορείτε να ορίσετε κάποια μεταβλητή που αποθηκεύει την κατάσταση του διακόπτη, για παράδειγμα: checked=1 για επιλεγμένες και checked=0 για μη επιλεγμένες καταστάσεις. Αυτή θα είναι μια τοπική μεταβλητή για το κλιπ. Για να αποκτήσετε πρόσβαση σε αυτό από άλλα κλιπ, πρέπει να καθορίσετε το πλήρες ή σχετική διαδρομή. Εάν χρησιμοποιείτε την τιμή μέσα σε ένα κλιπ, χρειάζεται μόνο να καθορίσετε το όνομα.

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

Ας επιστρέψουμε στον αλγόριθμο του προγράμματός μας. Εδώ χρησιμοποιούνται οι διακόπτες που μόλις εξετάσαμε. Το παράθυρο για την επιλογή ασφαλιστικών κινδύνων περιέχει πέντε τέτοιους διακόπτες. Κάθε κίνδυνος έχει τον δικό του διακόπτη (Εικ. 5).

Όταν επιλέγετε το στοιχείο Auto Casco, όλα τα άλλα πλαίσια ελέγχου διαγράφονται. Η επιλογή τεσσάρων κινδύνων (δηλαδή, όλων εκτός από την ασφάλιση αυτοκινήτου) έχει ως αποτέλεσμα την επιλογή του στοιχείου ασφάλισης αυτοκινήτου και την επαναφορά όλων των άλλων. ΣΕ σε αυτό το παράδειγμαη ενημέρωση εκτελείται μετά το κλείσιμο του παραθύρου. Με άλλα λόγια, όλη αυτή η λογική δεν είναι ορατή στον χρήστη, αλλά όλος ο κώδικας επεξεργασίας διάφορες καταστάσειςσυλλέγεται σε ένα κουμπί για να κλείσει το παράθυρο. Ήταν δυνατό να γίνει άμεσα ορατή η αλλαγή κατάστασης, διανέμοντας τον κωδικό στα κουμπιά επιλογής. Εδώ τα κουμπιά επιλογής έχουν μικτή συμπεριφορά - τόσο το CheckBox όσο και το RadioButton, και οποιαδήποτε επιλογή είναι δυνατή. Η δεύτερη επιλογή εφαρμόζεται σε άλλο παράθυρο διαλόγου («Τοποθεσία αποθήκευσης αυτοκινήτου»). Εκεί, όλες οι πολιτείες είναι αμοιβαία αποκλειόμενες και τα κουμπιά επιλογής συμπεριφέρονται όπως τα RadioButtons.


Ρύζι. 5. Παράθυρο επιλογής κινδύνων με πέντε διακόπτες.

Παρακάτω είναι πλήρης κωδικόςκουμπιά στον πίνακα επιλογής κινδύνου:

Όλα εδώ είναι αρκετά απλά και ο κώδικας είναι κατανοητός ακόμη και για αρχάριους. Αρχικά, ορίζεται η τιμή της μεταβλητής συμβολοσειράς /:InsStr, η οποία σχετίζεται με ένα δοκιμαστικό δυναμικό πεδίο που εμφανίζει τους επιλεγμένους κινδύνους. Εάν δεν έχουν επιλεγεί κίνδυνοι, τότε αυτή θα είναι η τιμή της γραμμής μετά το κλείσιμο της φόρμας. Εάν γίνει η επιλογή, η οποία καθορίζεται αθροίζοντας τις σημαίες για όλους τους κινδύνους και ελέγχοντας τη μεταβλητή klop, τότε στο /:InsStr εκχωρείται μια κενή συμβολοσειρά, στην οποία θα προστεθούν οι γραμμές που αντιστοιχούν στους επιλεγμένους κινδύνους. Αυτό γίνεται στα μπλοκ If()...End If. Στη συνέχεια ελέγχεται η περίπτωση επιλογής όλων των κινδύνων και ρυθμίζεται η σωστή θέση των σημαιών του διακόπτη. Όταν ανοίξει ξανά το πλαίσιο διαλόγου, οι διακόπτες θα βρίσκονται στη νέα κατάσταση. Αυτό γίνεται από κάθε διακόπτη ανεξάρτητα από την τιμή της σημαίας του (μεταβλητές /:CheckUgon, /:CheckDTP, /:CheckBurst, /:CheckCrim).

Ακολουθεί ο γνωστός τελεστής μετάβασης, ο οποίος κλείνει το παράθυρο. Και τέλος, κάτι νέο - στο μπλοκ απομόνωσης Tell Target() καλείται ο τελεστής Κλήση()στο κύριο χρονοδιάγραμμα. Αυτή είναι μια κλήση διαδικασίας. Στο Flash έχει αρκετές δυνατότητες σε σχέση με άλλες γλώσσες. Πρώτον, οι διαδικασίες συνδέονται με πλαίσια και ο κωδικός διαδικασίας είναι ο κωδικός ενός συγκεκριμένου πλαισίου. Δεύτερον, ο χειριστής κλήσηδεν περνά παραμέτρους. Η έκφραση σε παρένθεση είναι η ετικέτα πλαισίου με τον κωδικό διαδικασίας. κλήσηΤρίτον, ο χειριστής

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

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

  1. Αυτή η συγκεκριμένη γραμμή διαγράφει το παράθυρο αποτελεσμάτων κάθε φορά που γίνεται προσπάθεια αλλαγής των δεδομένων προέλευσης για τον υπολογισμό.
  2. Δεν χρειάζεται να εξετάσετε λεπτομερώς άλλα παράθυρα διαλόγου. Ο κώδικας τους είναι απλούστερος από τους παραπάνω. Ας αναφέρουμε απλώς αυτά τα παράθυρα και ας μιλήσουμε εν συντομία για το περιεχόμενό τους.
  3. Το παράθυρο "Car Storage Location" περιέχει τρεις διακόπτες τύπου RadioButton και ένα κουμπί για το κλείσιμο του παραθύρου.
  4. Το παράθυρο "Anti-theft" περιέχει τρεις διακόπτες τύπου CheckBox και ένα κουμπί για το κλείσιμο του παραθύρου.
  5. Ένα παράθυρο μηνύματος που υποδεικνύει την επιτυχή ολοκλήρωση του υπολογισμού με οδηγίες για την εκτύπωση της φόρμας.

Για να εισαγάγετε ορισμένες παραμέτρους, το παράθυρο δεν είναι απαραίτητο - αυτό είναι το έτος κατασκευής του αυτοκινήτου, η εμπειρία οδήγησης, η εκτιμώμενη αξία του αυτοκινήτου και η περίοδος ισχύος της ασφάλισης. Κατά την είσοδο πεδία κειμένουείναι απαραίτητο να ελεγχθεί η ορθότητα των δεδομένων και η συμμόρφωση του αριθμού με το καθορισμένο εύρος, το οποίο καθορίζεται από τις αρχικές συνθήκες. Για παράδειγμα: ο χρόνος ασφάλισης μπορεί να είναι μόνο ακέραιος, όχι μικρότερος από 1 και όχι μεγαλύτερος από 12 (μήνες). Αυτοί οι έλεγχοι είναι απλοί δηλώσεις υπό όρουςκαι χρησιμοποιώντας τη συνάρτηση στρογγυλοποίησης int(). Εάν η τιμή είναι εκτός του αποδεκτού εύρους, τότε εκχωρείται μια προεπιλεγμένη τιμή. Έτσι αποφεύγουμε να έχουμε προφανώς λανθασμένα αποτελέσματα.

Χαρακτηριστικά Υλοποίησης

Τώρα ας δούμε ένα άλλο σημαντικό σημείο. Πού αποθηκεύουμε τις τιμολογιακές αξίες; Το γεγονός είναι ότι η έκδοση 4 του Flash δεν έχει κατασκευές για την περιγραφή πινάκων. Η λύση είναι είτε να αποθηκεύσετε δεδομένα σε απλές μεταβλητές είτε να προσπαθήσετε να προσομοιώσετε πίνακες. Οι πίνακες είναι χρήσιμοι όταν χρησιμοποιείτε βρόχους. ΣΕ σε αυτή την περίπτωσηΔεν υπάρχουν βρόχοι και μπορείτε να τα βγάλετε πέρα ​​με συνηθισμένες μεταβλητές. Η μέθοδος δεν είναι πολύ κομψή, αλλά απλή και αξιόπιστη. Οι μεταβλητές αρχικοποιούνται όταν η εφαρμογή ξεκινά στο πρώτο καρέ της κύριας γραμμής χρόνου (στην ίδια τη σκηνή). Υπάρχει ένας άλλος τρόπος για να περιγράψουμε τις μεταβλητές - in αρχείο κειμένου. Τα δεδομένα καταγράφονται σε απλή μορφή:

Var01="value01"&var02="value02"&var03="value03"

Αυτό ταιριάζει τακτική εγγραφήτης μορφής «κλειδί=τιμή». Το αρχείο μεταφορτώνεται από τον χειριστή Φόρτωση μεταβλητών("filename.txt", "/targetClip").

Εδώ είναι απαραίτητο να πούμε λίγα λόγια για το σχηματισμό ονομάτων μεταβλητών. Ο σχηματισμός ονομάτων του ίδιου τύπου είναι σημαντικός εάν είναι απαραίτητο να χρησιμοποιηθούν ορισμένοι αριθμητικοί δείκτες για πρόσβαση σε μια συγκεκριμένη μεταβλητή. Όπως αναφέρθηκε ήδη, το Flash 4.0 δεν σας επιτρέπει να δημιουργήσετε πίνακες, αλλά αυτό το μειονέκτημα μπορεί να επιλυθεί. Θα σχηματίσουμε ονόματα δυναμικά. Ας πούμε στη γραμμή τροχαίου ατυχήματος ονομάζουμε τις μεταβλητές DTP1, DTP2...DTP12. Μπορείτε να αντιστοιχίσετε αυτές τις μεταβλητές με τον συνήθη τρόπο:

Ορισμός μεταβλητής "DTP1"=6

και ομοίως για όλους τους άλλους. Αλλά για να εξαγάγετε την τιμή, γνωρίζοντας τον αριθμό της γραμμής και της στήλης, πρέπει να κάνετε αυτό:

Ορισμός μεταβλητής "Temp"=eval("DTP"&n)

όπου n είναι ο αριθμός της στήλης. Αυτό είναι ακριβώς ισοδύναμο με την έκφραση:

Ορίστε τη μεταβλητή "Temp" = DTP1

Λίγο έμεινε - καθαρή αριθμητική. Ο κωδικός χωρίζεται σε διάφορα πλαίσια διαδικασίας, στα οποία η πρόσβαση γίνεται μέσω του χειριστή κλήση. Όλα αυτά τα καρέ βρίσκονται στην ίδια τη σκηνή. Έχοντας τον αριθμό της ομάδας και τη διάρκεια ζωής, προσδιορίζουμε τον αριθμό στήλης στον πίνακα τιμολογίων. Στη συνέχεια, ελέγχουμε τους σημειωμένους κινδύνους και συνοψίζουμε τις τιμολογιακές τιμές.

Ελέγχουμε την εκπλήρωση των προϋποθέσεων για εκπτώσεις, ανάλογα με την τοποθεσία αποθήκευσης και την ύπαρξη αντικλεπτικών συστημάτων) και επιλέγουμε τον κατάλληλο συντελεστή διόρθωσης. Στη συνέχεια, λαμβάνεται υπόψη ο χρόνος ασφάλισης του νεκρού σημείου και γίνεται έλεγχος για να διαπιστωθεί εάν το εύρος είναι εκτός του εύρους (στην περίπτωση αυτή όχι περισσότερο από 30%). Το μόνο που μένει είναι να πολλαπλασιάσουμε τα πάντα και να έχουμε το αποτέλεσμα. Όλες οι κλήσεις προς τις διαδικασίες κλήσης() συγκεντρώνονται στο κουμπί "Υπολογισμός".Εάν όλα τα απαραίτητα στοιχεία ήταν σωστά, η αξία της πληρωμής της ασφάλισης εμφανίζεται στο παράθυρο αποτελεσμάτων. Εάν έγινε κάποιο σφάλμα κάπου, θα εμφανιστεί ένα παράθυρο προειδοποίησης εξαίρεσης. Ωστόσο, σε ορισμένες περιπτώσεις το αποτέλεσμα θα εξακολουθήσει να λαμβάνεται: για παράδειγμα, εάν τα αριθμητικά δεδομένα εισήχθησαν λανθασμένα και το πρόγραμμα αντικατέστησε την προεπιλεγμένη τιμή. Μετά από αυτό, αρκεί να εισαγάγετε σωστά

επιθυμητή τιμή

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

λειτουργικότητα

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

γεμίσματα κλίσης

. Με αυτήν την εκτύπωση, ο χρήστης μπορεί να έρθει στο γραφείο της εταιρείας και να υποβάλει αίτηση για ασφάλιση. Αποτέλεσμαέχει όγκο περίπου 40 KB και μετά τη λήψη δεν απαιτεί καμία σύνδεση με τον διακομιστή. Ο αριθμός των υπολογισμών είναι απεριόριστος. Ο χρήστης μπορεί να αλλάξει τα δεδομένα πηγής όσο θέλει και να πάρει άμεσα αποτελέσματα. Το δυνητικό κοινό που μπορεί να επωφεληθεί από αυτό το πρόγραμμα είναι περίπου το 95% των χρηστών του Διαδικτύου. Και ταυτόχρονα, είμαστε πρακτικά απαλλαγμένοι από διενέξεις μεταξύ εκδόσεων προγραμμάτων περιήγησης, συστημάτων και πλατφορμών. Η τεχνολογία Flash είναι σήμερα μια τεχνολογία ενός προμηθευτή, η οποία απλοποιεί το έργο του προγραμματιστή. Η διεπαφή φόρμας είναι εντελώς μοναδική, και ταυτόχρονα το κόστος για το γραφικό μέρος είναι ελάχιστο. Πιστεύω ότι τα πλεονεκτήματα είναι αρκετά για να χρησιμοποιηθούν στο μέλλον για παρόμοιες εργασίες Τεχνολογία Flashαπό τη Macromedia.

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

Τι έγινε ActionScript? Πώς μπορείτε να γράψετε κώδικα λάμψη? Πώς μπορείτε να προγραμματίσετε πλήρως λάμψη? Ποια είναι τα καλύτερα εργαλεία που πρέπει να χρησιμοποιήσετε για αυτό; Αυτό το άρθρο παρέχει απαντήσεις σε τέτοιες ερωτήσεις.

Αυτό το άρθρο θα χρησιμεύσει καλή ηγεσίανέος στον προγραμματισμό λάμψηεπί ActionScript 3.0και να σε βοηθήσουν να διαλέξεις καλύτερα εργαλείαγια αυτό.

Τι είναι το ActionScript;

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

Μπορείτε να χρησιμοποιήσετε το Action Script για να δημιουργήσετε διαδραστικές εφαρμογές πολυμέσων, παιχνίδια και ιστότοπους.

Εάν εργάζεστε με περιβάλλον ανάπτυξης γραφικών Flash IDE(για παράδειγμα, Adobe Flash Professional CS5), αλλά ποτέ δεν σας ενδιέφερε πού μπορείτε να γράψετε κώδικα προγράμματος, τότε πιθανότατα ανησυχείτε ήδη για την ερώτηση "Πού κρύβεται, αυτό το AS3;"

AS3 στο Flash IDE.

Ας δημιουργήσουμε ένα νέο έργο Αρχείο - Νέο - ActionScript 3.0 (Εικ. 1).

Εικ. 1. Δημιουργία νέου έργου AS3.

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

Ας γράψουμε τον παρακάτω κώδικα στο παράθυρο που ανοίγει:

ActionScript

var s: String = "is my AS3 code trace!"; ίχνη(α);

var s : String = "είναι το ίχνος του κωδικού AS3 μου!" ;

ίχνη(α);

Ρύζι. 2. Κωδικός γραμμένος στο Flash IDE.

Τώρα μπορείτε να ξεκινήσετε τη μονάδα flash ( Ctrl+Enter). Αυτός ο κώδικας δημιουργεί μια μεταβλητή μικρότύπος Σειρά(συμβολοσειρά) και την εκχωρεί αρχική τιμή- η γραμμή" είναι το ίχνος του κωδικού μου AS3!". Στη συνέχεια, η συνάρτηση ίχνος(), το όρισμα της οποίας είναι μια μεταβλητή που δημιουργήθηκε πρόσφατα, αυτή η συμβολοσειρά (ή μάλλον η τιμή της μεταβλητής μικρό) εμφανίζεται στην καρτέλα παραγωγή, το οποίο από προεπιλογή είναι μέσα Διεπαφή IDEπου βρίσκεται δίπλα στην καρτέλα χρονοδιάγραμμα.


Με αυτόν τον τρόπο μπορείτε να ανοίξετε και να κλείσετε (με F9) επεξεργαστές κώδικα για οποιοδήποτε πλαίσιο της εφαρμογής Flash.

Φαίνεται ότι η εικόνα δεν είναι κακή - μπορείτε να δημιουργήσετε διαφορετικά αντικείμενα με κινούμενα σχέδια ( MovieClip), ή στατικές εικόνες ( Ξωτικό) και κάθε αντικείμενο θα έχει πλαίσια και σε κάθε καρέ μπορείτε να προγραμματίσετε οτιδήποτε θέλετε. Φαίνεται άνετο και ευέλικτο. Αλλά αυτό είναι μόνο με την πρώτη ματιά. Φανταστείτε ότι έχετε δεκάδες αντικείμενα με δεκάδες πλαίσια και όλα πρέπει να περιγραφούν σε κώδικα με διαφορετική ή παρόμοια λογική συμπεριφοράς. Στη δεύτερη περίπτωση (παρόμοια λογική) - αυτό σημαίνει γενικά εκατοντάδες παρόμοιες γραμμές κώδικα που μπορεί να είναι ακόμη και κουραστικό να αντιγράψετε από πλαίσιο σε πλαίσιο. Φανταστείτε ότι κατά τη διαδικασία ανάπτυξης πρέπει να αλλάξετε κάτι. Όχι - δεν είναι έτσι! Δεν είναι αυτό το χάος για το οποίο σχεδιάστηκε το AS3!

Επιπλέον, εάν εργάζεστε ως επεξεργαστής κώδικα Flash IDE και, για παράδειγμα, έχετε εργαστεί σε κάποιο άλλο περιβάλλον προγραμματισμού (Delphi, Visual Studio), θα παρατηρήσετε αμέσως ότι αυτό το πρόγραμμα επεξεργασίας, για να το θέσω ήπια, είναι καταθλιπτικό επειδή είναι άβολο και ημιτελές.

Τι να κάνεις, ρωτάς; Αναζητήστε προγράμματα επεξεργασίας κώδικα τρίτων.

Εναλλακτικοί επεξεργαστές κώδικα.

Η καλύτερη επιλογή για λειτουργικό σύστημα Windows είναι FlashDevelop(FD). Μπορείτε να κατεβάσετε την πιο πρόσφατη έκδοση από τον ιστότοπο.

Για το iOS, μια καλή εναλλακτική είναι FDT. Μπορείτε να το βρείτε στο γραφείο. δικτυακός τόπος.

FlashDevelop.

Επειδή Αυτήν τη στιγμή ζω κυρίως σε Windows, οπότε θα σας πω για το πρόγραμμα επεξεργασίας ειδικά για αυτό το λειτουργικό σύστημα. Στο μέλλον, όταν αποκτήσω εμπειρία στο FDT, θα γράψω για αυτό.

Δεν υπάρχει τίποτα περίπλοκο στην εγκατάσταση, κατεβάστε την πιο πρόσφατη έκδοση από το γραφείο. τοποθεσία και εγκατάσταση. Το πρόγραμμα επεξεργασίας είναι εντελώς δωρεάν και χρησιμοποιεί το Flex SDK για μεταγλώττιση. Κατά την διάρκεια τυπική εγκατάστασηΗ FD θα φροντίσει η ίδια να εγκαταστήσει το τελευταίο. Το μόνο που χρειάζεται να εγκαταστήσετε μόνοι σας για το FD είναι Ιάβα.

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

Μετά την εγκατάσταση, μπορείτε να δημιουργήσετε ένα νέο έργο (Έργο - Νέο Έργο...), θα ανοίξει το παράθυρο διαλόγου δημιουργίας έργου, όπως φαίνεται στην Εικ. 4.


Όπως μπορείτε να δείτε, το FD σάς επιτρέπει να δημιουργείτε όχι μόνο έργα AS3. Αλλά τώρα μας ενδιαφέρει το έργο AS3, προτιμώ να επιλέξω ένα κενό για το έργο με Προφόρτωση-ohm, που επιλέχθηκε για ρύζι. 4. Στη συνέχεια, εισαγάγετε το όνομα του έργου (πεδίο Ονομα) και αντιστοιχίστε τον κατάλογο του έργου (πεδίο Τοποθεσία), εάν έχει επιλεγεί "Δημιουργία καταλόγου για το έργο", τότε θα δημιουργηθεί ένας φάκελος με το όνομα του έργου (Όνομα) στον κατάλογο Τοποθεσία και τα αρχεία του έργου θα χωρούν ήδη σε αυτόν, εάν το πλαίσιο ελέγχου δεν είναι επιλεγμένο, τότε τα αρχεία θα τοποθετηθούν στον καθορισμένο κατάλογο Τοποθεσίας.

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


Ας προσπαθήσουμε να γράψουμε κάποιο κώδικα, για παράδειγμα περίπου τον ίδιο που δοκιμάσαμε Flash IDE. Μπορείτε να γράψετε μετά τη γραμμή που σχολιάστηκε "//σημείο εισόδου"επειδή αυτό είναι το σημείο όπου η σκηνή έχει ήδη δημιουργηθεί με ακρίβεια. ας γράψουμε μια εντολή ίχνος(), στο Σχ. 5. Έχω ήδη επιτρέψει στον εαυτό μου αυτήν την πράξη:]

Τώρα μπορείτε να μεταγλωττίσετε το έργο ( F8) ή τρέξτε αμέσως για δοκιμή ( F5), αφού τρέξετε στο παράθυρο Παραγωγήθα δείτε το αποτέλεσμα της συνάρτησης ίχνος()— έξοδος γραμμής.

Αποτελέσματα ομάδας ίχνος()μπορεί να παρατηρηθεί μόνο όταν η εφαρμογή εκκινηθεί από το IDE στο οποίο έχει μεταγλωττιστεί και εκτελεστεί ο κώδικας.
Όταν εκτελείτε ένα αρχείο .swf σε ένα πρόγραμμα περιήγησης ή σε ένα κανονικό πρόγραμμα αναπαραγωγής flash, το αποτέλεσμα (δηλαδή η εμφάνιση του παραθύρου εξόδου) δεν θα είναι ορατό σε κανέναν.

Τώρα είμαι σίγουρος ότι ανυπομονείς να κάνεις το πρώτο σου έργο στο AS3! Και για να το κάνετε αυτό πρέπει να αρχίσετε να μαθαίνετε την ίδια τη γλώσσα.

Εκμάθηση της γλώσσας AS3.

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

Καλύτερο βιβλίο: Κόλιν Μουκ — .

Ωραία προσθήκηστη γνώση: Τζόι Λοτ — .

Διάβασα και αυτό το βιβλίο εκείνη την εποχή: Rich Shoop— . Αν και δεν είναι γραμμένο πολύ και λεπτομερώς, θα κάνει για αρχάριους αν δεν έχετε Muk στο χέρι.

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

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

Για περαιτέρω ανάπτυξη, για μια καλή κατανόηση του OOP και των μοτίβων σχεδίασης (και αυτό είναι πολύ σημαντικό για μια καλή δομή OOP), το ακόλουθο βιβλίο θα είναι απαραίτητο για εσάς: William Sanders, Chandima Kumaranatung — .

Σε αυτόν τον ιστότοπο θα βρείτε επίσης αρκετές πτυχές του προγραμματισμού AS3, συσσωρευμένες από την εμπειρία μου.

Ή προσπαθήστε να φτιάξετε το πρώτο σας πρόγραμμα προφόρτωσης διαβάζοντας το άρθρο: Do-it-yourself Preloader.

Όλα τα καλύτερα και επιτυχημένα έργα!



Συνιστούμε να διαβάσετε

Κορυφή