Αυτό το φύλλο εργασίας αναπτύχθηκε στα πλαίσια της Ώρας του Κώδικα. Οι μαθητές αναπτύσσουν μια απλή εφαρμογή με όνομα GuardDog. Η εφαρμογή αποτελεί επέκταση του γνωστού εισαγωγικού παραδείγματος HelloPurr. Οι μαθητές έρχονται σε επαφή με τα χαρακτηριστικά του περιβάλλοντος και βασικές λειτουργίες που θα τους φανούν χρήσιμες και στη συνέχεια. Το φύλλο εργασίας περιγράφει αναλυτικά τα βήματα που θα πρέπει να ακολουθηθούν, με τις περιγραφές να περιέχουν σταδιακά λιγότερες λεπτομέρειες. Στο site του Συλλόγου Εκπαιδευτικών Πληροφορικής Χίου (http://goo.gl/zAqZar) παρέχονται επίσης τα συνοδευτικά αρχεία ήχου και εικόνας που είναι απαραίτητα.
Πληροφορική Γ' Γυμνασίου
Σημειώσεις Logo με ασκήσεις και θέματα θεωρίας
Από το συνάδελφο Λευτέρη Δουκέρη
Συμπληρωματικές ασκήσεις-θέματα και λύσεις ασκήσεων από τη Δήμητρα Αδαμίδου
2ο Γυμνάσιο Κορωπίου
Πληροφορική Γ' Γυμνασίου
Σημειώσεις Logo με ασκήσεις και θέματα θεωρίας
Από το συνάδελφο Λευτέρη Δουκέρη
Συμπληρωματικές ασκήσεις-θέματα και λύσεις ασκήσεων από τη Δήμητρα Αδαμίδου
2ο Γυμνάσιο Κορωπίου
Παρουσίαση που χρησιμοποιήθηκε σε Webinar καθηγητών πληροφορικής Σερρών, Κιλκίς και Δήμων Βόλβης – Λαγκαδά, που διδάσκουν το μάθημα «Εφαρμογές Πληροφορικής» σε ΓΕΛ ή ΕΠΑΛ.
FingerPainting -- Φύλλο Εργασίας για το AppInventorGeorge Boukeas
Αυτό το φύλλο εργασίας αναπτύχθηκε στα πλαίσια της Ώρας του Κώδικα. Οι μαθητές αναπτύσσουν μια εφαρμογή ζωγραφικής με όνομα FingerPainting, παραλλαγή του παραδείγματος PaintPot. Βασίζονται στις έννοιες που έμαθαν στο εισαγωγικό παράδειγμα GuardDog για να υλοποιήσουν πιο σύνθετες λειτουργίες. Το φύλλο εργασίας παρέχει σαφείς οδηγίες, υποθέτοντας όμως στοιχειώδη εξοικείωση με το περιβάλλον του AppInventor. Στο site του Συλλόγου Εκπαιδευτικών Πληροφορικής Χίου (http://goo.gl/zAqZar) παρέχονται επίσης τα συνοδευτικά αρχεία εικόνας που είναι απαραίτητα.
Β4.2.8 Εφέ Εναλλαγής Διαφανειών και Προκαθορισμένες Κινήσεις Αντικειμένων
Να προσθέτουμε, να αφαιρούμε και να τροποποιούμε εφέ εναλλαγής μεταξύ διαφανειών
Να προσθέτουμε, να αφαιρούμε και να τροποποιούμε προκαθορισμένες κινήσεις στα αντικείμενα μιας διαφάνειας
Να αντιγράφουμε και να μετακινούμε διαφάνειες εντός της παρουσίασης και μεταξύ ανοικτών παρουσιάσεων
Να διαγράφουμε μια ή περισσότερες διαφάνειες.
A7-1-M1-Algorithmic-Thinking-Programming and Modern Computer Applicationspapettas
A7.1.M1 Αλγοριθμική Σκέψη, Προγραμματισμός και Σύγχρονες Εφαρμογές Πληροφορικής - Πώς Δημιουργούμε Ένα Πρόγραμμα για τον Υπολογιστή
Ποια βήματα πρέπει να ακολουθήσουμε για να δημιουργήσουμε ένα πρόγραμμα
Βιβλίο παρουσίασης του προγραμματιστικού περιβάλλοντος GameMaker καθώς και της γλώσσας προγραμματισμού του, της GML.
Συγγραφέας : Mark Overmars
Μετάφραση : Σπύρος Σιούτας
Ελληνική μετάφραση της Unplugged δραστηριότητας Εγκλεισμός (Locked In) από το teachinglondoncomputing.org. Συνοδεύεται από το φυλλάδιο "Αναζητώντας τα Λόγια" (Searching to Speak).
Ένα Διδακτικό Σενάριο για το Ελεύθερο ΛογισμικόGeorge Boukeas
Παρόλο που το ελεύθερο λογισμικό δεν συμπεριλαμβάνεται στα υφιστάμενα προγράμματα σπουδών πληροφορικής, θεωρούμε ότι μια δομημένη επαφή με τις αρχές του μπορεί να είναι ιδιαίτερα γόνιμη για τους μαθητές. Στην εργασία αυτή παρουσιάζουμε ένα διδακτικό σενάριο για το ελεύθερο λογισμικό. Περιγράφουμε τους στόχους του σεναρίου, τη δομή του και τις μαθησιακές δραστηριότητες που περιλαμβάνει, ενώ στη συνέχεια αναλύουμε τα συμπεράσματα που προέκυψαν από την υλοποίησή του και την συμπλήρωση ερωτηματολογίων από μαθητές και εκπαιδευτικούς. Το σενάριο απευθύνεται κυρίως σε μαθητές της Γ' Γυμνασίου ή της Α' Λυκείου και αποτελείται από δύο σχετικά ανεξάρτητα τμήματα. Το πρώτο προσεγγίζει με βιωματικό τρόπο τις έννοιες και τις αρχές που σχετίζονται με το ελεύθερο λογισμικό, ενώ το δεύτερο περιλαμβάνει μικρές ομαδικές εργασίες που σχετίζονται με την επίλυση πραγματικών προβλημάτων και προσανατολίζεται σε περισσότερο πρακτικές ικανότητες.
Φώτα και Τύμπανα: μια δραστηριότητα σε στυλ UnpluggedGeorge Boukeas
Περίληψη: Στη δραστηριότητα αυτή, κάθε ομάδα καλείται να μεταδώσει στις υπόλοιπες ένα μήνυμα, χρησιμοποιώντας διαφορετικό κώδικα (ο οποίος είναι γνωστός στους παραλήπτες), αλλά και διαφορετικό μέσο μετάδοσης. Στόχος της δραστηριότητας είναι η εξοικείωση με την έννοια της αναπαράστασης, και ειδικότερα με την ψηφιακή δυαδική αναπαράσταση. Ταυτόχρονα, το σκέλος της μετάδοσης εισάγει προβληματισμούς σε σχέση με το ρόλο που διαδραματίζει τόσο η επιλογή των συμβόλων σε κάθε κώδικα, όσο και η φυσική υπόσταση του μέσου που χρησιμοποιείται για την μετάδοση ή την αποθήκευση της πληροφορίας.
Το πακέτο περιλαμβάνει το σκεπτικό και τους στόχους της δραστηριότητας, αναλυτική περιγραφή των βημάτων της, φύλλα εργασίας και ο,τιδήποτε χρειάζεται να διαμοιραστεί στους μαθητές για την υλοποίησή της.
Διάρκεια: τουλάχιστον 30 λεπτά
Lights and Drums: an Unplugged-style ActivityGeorge Boukeas
Summary: In this unplugged-style activity, each group will transmit a message to the other groups, using a different code (known to the recipients) and a different communication medium. The aim is to familiarize the participants with the concept of information representation and especially digital binary representation. At the same time, the part of the activity pertaining to message transmission introduces important issues regarding the role of symbols in each code, as well as the role of the physical carrier used for transmitting or storing information.
Goals: Associate representations that employ the symbols 0 and 1 with other, more familiar, binary representations, thus establishing a view of the former as yet another binary representation. Highlight the physical form of information in the systems that transmit, store or process this information.
Duration: at least 30 minutes
Η Πληροφορική στην Εκπαίδευση (για μη-μυημένους)George Boukeas
Στις 2/7/2013 ο Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου διοργάνωσε μια Ανοιχτή Συζήτηση με κεντρικό ομιλητή τον Αριστοτέλη Τύμπα, αναπληρωτή καθηγητή της Σχολής Θετικών Επιστημών του Εθνικού και Καποδιστριακού Πανεπιστημίου Αθηνών.
Το θέμα της ομιλίας του ήταν: Η κριτική κατανόηση των εννοιών της Πληροφορικής ως κρίσιμο προαπαιτούμενο μιας σύγχρονης εκπαίδευσης πολιτών: Η διάκριση ψηφιακό-αναλογικό και η σχέση ιδιωτικό-δημόσιο.
http://www.sepchiou.gr/index.php/draseis/46-discussion-tympas
Στα πλαίσια αυτής της εκδήλωσης έκανα μια σύντομη ομιλία, απευθυνόμενος σε κοινό που δεν αποτελούνταν αποκλειστικά από εκπαιδευτικούς Πληροφορικής. για τη φύση της Πληροφορικής, την σημασία της διδασκαλίας της και τη θέση που κατέχει αυτή την στιγμή στην εκπαίδευση.
Βασικές Έννοιες Πληροφορικής για ένα Μάθημα Γενικής ΠαιδείαςGeorge Boukeas
[7ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής, 2013] Στην παρούσα εργασία διερευνούμε το εννοιολογικό υπόβαθρο στο οποίο θα μπορούσε να στηριχθεί ένα μάθημα Πληροφορικής γενικής παιδείας στο Λύκειο. Για τον σκοπό αυτό, και με δεδομένη την ιδιαίτερη φύση ενός τέτοιου μαθήματος, στρεφόμαστε σε ορισμένο είδος πηγών και συγκεκριμένα σε βιβλία που απευθύνονται με προσιτό τρόπο σε μη-εξειδικευμένο κοινό, με σκοπό να το φέρουν σε επαφή με τις βασικές έννοιες της Πληροφορικής. Διαπιστώνουμε ότι παρά την ετερογένεια των πηγών διαγράφεται με σαφήνεια ένας πυρήνας εννοιών που απαντώνται συστηματικά. Επιχειρούμε λοιπόν να καταγράψουμε αυτές τις έννοιες και να τις συνδέσουμε σε μια ενιαία αφήγηση. Επιπροσθέτως, επιβεβαιώνουμε ότι οι έννοιες αυτές στηρίζονται ως βασικές και από την ευρύτερη βιβλιογραφία και καταλήγουμε προτείνοντας συγκεκριμένες διδακτικές προσεγγίσεις.
Βασικές Έννοιες Πληροφορικής για ένα Μάθημα Γενικής ΠαιδείαςGeorge Boukeas
[7ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής. 2013] Στην παρούσα εργασία διερευνούμε το εννοιολογικό υπόβαθρο στο οποίο θα μπορούσε να στηριχθεί ένα μάθημα Πληροφορικής γενικής παιδείας στο Λύκειο. Για τον σκοπό αυτό, και με δεδομένη την ιδιαίτερη φύση ενός τέτοιου μαθήματος, στρεφόμαστε σε ορισμένο είδος πηγών και συγκεκριμένα σε βιβλία που απευθύνονται με προσιτό τρόπο σε μη-εξειδικευμένο κοινό, με σκοπό να το φέρουν σε επαφή με τις βασικές έννοιες της Πληροφορικής. Διαπιστώνουμε ότι παρά την ετερογένεια των πηγών διαγράφεται με σαφήνεια ένας πυρήνας εννοιών που απαντώνται συστηματικά. Επιχειρούμε λοιπόν να καταγράψουμε αυτές τις έννοιες και να τις συνδέσουμε σε μια ενιαία αφήγηση. Επιπροσθέτως, επιβεβαιώνουμε ότι οι έννοιες αυτές στηρίζονται ως βασικές και από την ευρύτερη βιβλιογραφία και καταλήγουμε προτείνοντας συγκεκριμένες διδακτικές προσεγγίσεις.
Η Κληρονομιά της Τεχνολογίας Επικοινωνιών στα Μαθήματα ΠληροφορικήςGeorge Boukeas
Παρουσίαση από το 6ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής (2012): Το μάθημα της Τεχνολογίας Επικοινωνιών διδάχθηκε φέτος στην Τεχνολογική Κατεύθυνση της Β' Τάξης Γενικού Λυκείου για τελευταία φορά. Στην εργασία αυτή θα προσπαθήσουμε να στοιχειοθετήσουμε οτι ορισμένες από τις διδακτέες ενότητες πραγματεύονταν έννοιες με ιδιαίτερη επιστημονική ή παιδαγωγική σημασία, οι οποίες συνδέονται άμεσα με την Πληροφορική. Στόχος μας είναι να δείξουμε οτι η ενσωμάτωση τέτοιων εννοιών σε μαθήματα Πληροφορικής θα παρείχε ουσιαστικό όφελος, προσφέροντας μια ανανεωμένη και ευρεία θεώρηση της Πληροφορικής ως επιστήμη. Συγκεκριμένα, θα εστιάσουμε στις έννοιες που συνδέονται με το καθολικό υπόδειγμα συστημάτων, το υπόδειγμα συστημάτων επικοινωνίας, τις αλλαγές στα συστήματα επικοινωνίας και τις αρχές που χρησιμοποιούνται στα συστήματα επικοινωνίας. Σε κάθε ενότητα προτείνουμε επεκτάσεις που θεωρούμε οτι συμπληρώνουν τον τρόπο προσέγγισης των συγκεκριμένων εννοιών και αναδεικνύουν τη σύνδεσή τους με την Πληροφορική.
Από το 6ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής (2012): Η επιστήμη της Πληροφορικής σχετίζεται άμεσα με την τρέχουσα τεχνολογία, αλλά βασίζεται σε έννοιες. Καθώς οι έννοιες αυτές διαπερνούν σταδιακά όλες τις πτυχές της ανθρώπινης δραστηριότητας, θεωρούμε ότι η διδασκαλία της Πληροφορικής δεν μπορεί παρά να απευθύνεται σε όλους τους μαθητές. Στην εργασία αυτή αντλούμε υλικό από τις σχετικές πηγές και επιχειρηματολογούμε υπέρ της διδασκαλίας της Πληροφορικής σε όλους τους μαθητές της δευτεροβάθμιας εκπαίδευσης. Εξετάζουμε πως η σημασία της Πληροφορικής για την κοινωνία, την οικονομία, τις επιστήμες, αλλά και για τις ικανότητες των ίδιων των μαθητών στοιχειοθετεί την ανάγκη αναβάθμισης της διδασκαλίας της στα σχολεία.
Επισκόπηση των δραστηριοτήτων του Unplugged και σύντομη παρουσίαση δύο δραστηριοτήτων που μόλις μεταφράστηκαν στα ελληνικά: Ο Φτωχός Χαρτογράφος και Το Έξυπνο Χαρτί (http://goo.gl/vZYKh).
Με αφορμή την Ημέρα Ασφαλούς Διαδικτύου 2012, ο Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου, σε συνεργασία με το Γραφείο Σχολικών Δραστηριοτήτων της ΔΔΕ Χίου, διοργανώνει ημερίδα την Τετάρτη 8 Φεβρουαρίου στις 18.30 στο Ομήρειο με τίτλο "Ανακαλύψτε τον ψηφιακό κόσμο μαζί… με ασφάλεια!". Αυτό είναι και το σύνθημα της φετινής Ημέρας Ασφαλούς Διαδικτύου, που εστιάζει στη σύγκλιση των γενεών.
Καλούμε λοιπόν μαθητές, γονείς και εκπαιδευτικούς στην ημερίδα, η οποία περιλαμβάνει τις εξής ομιλίες:
Ο Γιώργος Χατζηνικολάκης, εκπαιδευτικός Πληροφορικής, θα μιλήσει για τον γονικό έλεγχο, και θα παρουσιάσει πρακτικές και εργαλεία που επιτρέπουν στους γονείς να θέτουν όρια στη χρήση του διαδικτύου.
Ο Στράτος Τσουκάρης, κλινικός ψυχολόγος στο Κέντρο Πρόληψης Χίου, θα εστιάσει στην εξάρτηση από το διαδίκτυο και θα μιλήσει για τα χαρακτηριστικά της και το ρόλο της πρόληψης.
Οι μαθήτριες του Γυμνασίου Καλαμωτής Ένη Μίχαι, και Αργυρώ Κάνιου, σε συνεργασία με τον καθηγητή τους Δημήτρη Αντωνόγλου, θα παρουσιάσουν στους μαθητές καλές πρακτικές που θα τους επιτρέψουν να απολαύσουν με ασφάλεια όσα μπορεί να τους προσφέρει το διαδίκτυο.
Ο Αστυνόμος Α´ Γιώργος Κεβόπουλος, Διοικητής του τμήματος Δίωξης Ναρκωτικών στην Αστυνομική Διεύθυνση Χίου, θα μιλήσει για το ηλεκτρονικό έγκλημα και την αντιμετώπισή του.
Επίσης, στις 20.00 θα προβληθεί το ντοκιμαντέρ "Η νέα γενιά του Ίντερνετ", από τους Πρωταγωνιστές του Σταύρου Θεοδωράκη. Έχει διάρκεια 50 λεπτά και πραγματεύεται πολλά από τα παραπάνω θέματα.
Διδακτέα - Εξεταστέα ύλη για το μάθημα "Οικονομία" (ΑΟΘ) της Γ τάξης του Επαγγελματικού λυκείου. Μπορείτε να δείτε και αναλυτικά την ύλη του μαθήματος επιλέγοντας τον παρακάτω σύνδεσμο:
https://view.genially.com/6450d17ad94e2600194eb286
Weatherman 1-hour Speed Course for Web [2024]Andreas Batsis
Εκλαϊκευμένη Διδασκαλία Μετεωρολογίας. Η συγκεκριμένη παρουσίαση παρέχει συνοπτικά το 20% της πληροφορίας σχετικά με το πως λειτουργεί ο καιρός, η οποία πληροφορία θα παρέχει στον αναγνώστη τη δυνατότητα να ερμηνεύει το 80% των καιρικών περιπτώσεων με τη χρήση ιντερνετικών εργαλείων. Η λογική της παρουσίασης βασίζεται κατά κύριο λόγο στην εφαρμογή και δευτερευόντως στην επιστημονική ερμηνεία η οποία περιορίζεται στα απολύτως απαραίτητα.
1. GuardDog
Φύλλο Εργασίας
Προγραμματισμός Εφαρμογής στο AppInventor
http://ai2.appinventor.mit.edu
Ακολουθώντας τα βήματα αυτού του φύλλου εργασίας, θα αναπτύξουμε μια
μικρή εφαρμογή για Android συσκευές (κινητά ή tablets), η οποία θα μας
εξοικειώσει με χρήσιμες λειτουργίες που θα αξιοποιήσουμε και στη συνέχεια.
Θα αναπτύξουμε σταδιακά μια εφαρμογή «συναγερμό», χρησιμοποιώντας
έναν σκύλο που δεν θα επιτρέπει σε κανέναν να πειράζει την συσκευή μας.
Η εφαρμογή που θα κατασκευάσουμε είναι απλή, πρόκειται για ένα εισαγωγικό
παράδειγμα. Οι οδηγίες που ακολουθούν είναι αναλυτικές, με σκοπό να προσφέρουν μια στοιχειώδη εξοικείωση με το περιβάλλον του AppInventor.
Βήμα 1
Δημιουργία νέου project
Ξεκινώντας, δημιουργούμε ένα καινούργιο project...
τελευταία τροποποίηση:
11/12/2013
2. ...το οποίο ονομάζουμε GuardDog.
Αρχικά, βρισκόμαστε στην ενότητα Designer, στην οποία σχεδιάζουμε τη
διεπαφή (interface) της εφαρμογής μας, προσθέτοντας τα απαραίτητα
συστατικά (components) και ορίζοντας ιδιότητες (properties) για αυτά.
Το μοναδικό συστατικό μέχρι στιγμής, είναι η οθόνη (Screen1). Προτού προσθέσουμε άλλα συστατικά, κάνουμε ορισμένες απαραίτητες τροποποιήσεις
στις ιδιότητες της οθόνης, που βρίσκονται στο πλαίσιο Properties, στα δεξιά.
Επιλέγουμε το χρώμα του φόντου (BackgroundColor) να είναι μαύρο.
Η ιδιότητα Scrollable δεν πρέπει να είναι επιλεγμένη. Στον τίτλο (Title) προσθέτουμε το όνομα της ομάδας μας, τα ονόματά μας ή τα αρχικά μας.
Οι τροποποιήσεις στις ιδιότητες της οθόνης Screen1 συνοψίζονται ως εξής:
επιλέγουμε το
μεταβάλλουμε τις
Screen1
BackgroundColor: Black
Scrollable: No
Title: GuardDog by ...
συστατικό
ιδιότητες
2/11
3. Βήμα 2
Προσθήκη του καμβά
Στο βήμα αυτό θα προσθέσουμε το συστατικό που θα αποτελέσει το χώρο
όπου θα κινείται ο σκύλος και θα καθορίσουμε τις ιδιότητες του χώρου αυτού.
Designer
Ο καμβάς (Canvas) είναι μια ορθογώνια επιφάνεια, εντός της οποίας μπορούμε
να χειριζόμαστε φιγούρες (Sprites) ή να σχεδιάζουμε αγγίζοντάς την.
Προκειμένου να ορίσουμε μια περιοχή στην οποία θα είναι δυνατή η μετακίνηση της φιγούρας του σκύλου, θα προσθέσουμε στην οθόνη μας έναν καμβά.
Σέρνουμε λοιπόν από την παλέτα αριστερά (Palette), από την ομάδα πλακιδίων
Drawing and Animation, το συστατικό Canvas, και το αποθέτουμε στην οθόνη.
Είναι σημαντικό (αλλά όχι υποχρεωτικό), να ονομάζουμε τα συστατικά που
χρησιμοποιούμε με τέτοιο τρόπο, ώστε να τα αναγνωρίζουμε ευκολότερα. Γι’
αυτό το λόγο, μετονομάζουμε τον καμβά Canvas1 σε DogCanvas.
Παρατήρηση: Τα ονόματα των συστατικών πρέπει να αποτελούνται από λατινικούς
χαρακτήρες, αριθμούς ή κάτω παύλες και πρέπει να ξεκινάνε με χαρακτήρα, οπότε
δεν μπορούμε να χρησιμοποιήσουμε π.χ. ελληνικούς χαρακτήρες ή κενά.
3/11
4. Τέλος, μεταβάλλουμε τις ιδιότητες του καμβά DogCanvas ως εξής:
από την
μεταφέρουμε το
του δίνουμε το
μεταβάλλουμε τις
ομάδα
συστατικό
όνομα
ιδιότητες
Drawing and
Animation
Canvas
DogCanvas
Width: Fill Parent
Height: Fill Parent
BackgroundImage: Grass.jpg
Η επιλογή Fill Parent για τις ιδιότητες Width και Height του καμβά του
επιτρέπει να επεκταθεί και να καταλάβει όλο το διαθέσιμο χώρο. Έτσι, ο
σκύλος θα μπορεί να κινείται κατά μήκος και κατά πλάτος όλης της οθόνης.
Για να χρησιμοποιηθεί ως φόντο του καμβά DogCanvas η εικόνα με το γρασίδι
(Grass.jpg), θα πρέπει πρώτα αυτή να «ανέβει» στο project μας. Κάνουμε κλικ
στην ιδιότητα BackgroundImage, επιλέγουμε Upload File...
...μετά Αναζήτηση... (Browse…) κι επιλέγουμε το αρχείο Grass.jpg.
Παρόμοιες κινήσεις κάνουμε για κάθε αρχείο εικόνας ή ήχου που σκοπεύουμε
να χρησιμοποιήσουμε στο project, ενώ στο Βήμα 5 περιγράφεται κι ένας
εναλλακτικός τρόπος να ανεβάζουμε αρχεία στο project μας.
4/11
5. Βήμα 3
Προσθήκη του σκύλου
Στο βήμα αυτό θα προσθέσουμε τη φιγούρα του σκύλου-φύλακα.
Designer
Οι φιγούρες τοποθετούνται εντός του καμβά και μπορούν να αλληλεπιδρούν
με τον καμβά, με άλλες φιγούρες εντός του καμβά και φυσικά να αντιδρούν
στις δικές μας ενέργειες.
Προκειμένου να προσθέσουμε τον σκύλο, σέρνουμε μια φιγούρα (ImageSprite)
μέσα στον καμβά. Μέσω της ιδιότητας Picture της φιγούρας, ορίζουμε σαν
εικόνα της την ήρεμη εκδοχή του σκύλου, κατά παρόμοιο τρόπο με το Βήμα 2.
του δίνουμε το
μεταβάλλουμε τις
συστατικό
όνομα
ιδιότητες
ImageSprite
DogSprite
Interval: 10
Picture: SleepyDog.jpg
Rotates: no
από την
μεταφέρουμε το
ομάδα
Drawing and
Animation
Αν ο σκύλος φαίνεται πολύ μεγάλος, μπορούμε να αλλάξουμε τις διαστάσεις
του σε pixel, μέσω των ιδιοτήτων Width και Height.
Βήμα 4
Γάβγισμα!
Στο βήμα αυτό θα προσθέσουμε τον ήχο του γαβγίσματος, καθώς και τις
πρώτες μας εντολές, ώστε ο σκύλος να γαβγίζει όταν αγγίζουμε την οθόνη.
Designer
Όταν η εφαρμογή μας χρησιμοποιεί ήχους τότε χρειάζεται να προσθέσουμε
τους ήχους αυτούς, καθώς και τα συστατικά ήχου (Sound) που αναλαμβάνουν
την αναπαραγωγή τους.
Για να μπορεί ο σκύλος να γαβγίζει, προσθέτουμε ένα συστατικό Sound της
ομάδας Media, σέρνοντάς το στην οθόνη. Αυτό θα αναπαράγει τον ήχο, όταν
το θελήσουμε. Παρατηρούμε ότι δεν εμφανίζεται εντός της οθόνης, αλλά κάτω
από αυτήν, αποτελώντας για τον χρήστη της εφαρμογής ένα μη-ορατό
συστατικό (non-visible component). Το μετονομάζουμε και ορίζουμε ως πηγή
του ήχου το αρχείο Bark.mp3, μέσω της ιδιότητας Source:
του δίνουμε το
μεταβάλλουμε τις
συστατικό
όνομα
Sound
DogBarkingSound
Source: Bark.mp3
MinimumInterval: 300
από την
μεταφέρουμε το
ομάδα
Media
ιδιότητες
5/11
6. Η ιδιότητα MinimumInterval είναι ο ελάχιστος χρόνος πριν την επανάληψη του
ήχου. Αν λοιπόν θέσουμε MinimumInterval: 300 msec (0,3 sec) τότε ο ήχος δεν
θα μπορεί να ξαναπαίξει προτού περάσουν τουλάχιστον 0,3 δευτερόλεπτα.
Παρατήρηση: Το συστατικό Sound, ακόμα κι αν δεν ορίσουμε συγκεκριμένο αρχείο
ήχου για αναπαραγωγή, είναι απαραίτητο, αν θέλουμε η συσκευή να δονείται σαν
αποτέλεσμα κάποιας ενέργειας.
Blocks
Μέχρι στιγμής, στο Designer έχουμε σχεδιάσει ένα μέρος της «οθόνης» της
εφαρμογής μας, αλλά δεν έχουμε ορίσει καθόλου την συμπεριφορά της.
Μεταβαίνουμε λοιπόν στο Blocks (το κουμπί μετάβασης βρίσκεται πάνω δεξιά)
για να συσχετίσουμε ενέργειες με γεγονότα και, ουσιαστικά, να προγραμματίσουμε, προσθέτοντας τις κατάλληλες εντολές.
Στα αριστερά της οθόνης διακρίνουμε τρεις ομάδες πλακιδίων (blocks). Πρώτα
βρίσκουμε τα ενσωματωμένα (built-in) πλακίδια, την λειτουργία των οποίων θα
εξετάσουμε αργότερα.
Στη συνέχεια, βλέπουμε τα πλακίδια που αφορούν τα συστατικά που έχουμε
προσθέσει στην εφαρμογή μας.
Ακολουθεί η τελευταία ομάδα, που δε θα μας απασχολήσει εδώ.
Όταν προγραμματίζουμε μια συγκεκριμένη συμπεριφορά για την εφαρμογή
μας πρακτικά συναρμολογούμε πλακίδια εντολών (και όχι μόνο). Για κάθε
πλακίδιο που θέλουμε να προσθέσουμε ανατρέχουμε στην κατάλληλη ομάδα
στα αριστερά της οθόνης, ανοίγει το αντίστοιχο «συρτάρι» με τις διαθέσιμες
6/11
7. εντολές, αναζητούμε και επιλέγουμε το πλακίδιο που χρειαζόμαστε και το
σέρνουμε στον χώρο σύνταξης των προγραμμάτων.
Στην συγκεκριμένη περίπτωση, θέλουμε να ακούγεται ο ήχος του γαβγίσματος
DogBarkingSound κάθε φορά που ο χρήστης αγγίζει τον καμβά DogCanvas.
Επιλέγουμε λοιπόν το συστατικό DogCanvas, ανοίγει το αντίστοιχο συρτάρι και
μεταφέρουμε το πλακίδιο when DogCanvas.TouchDown.
Στη συνέχεια επιλέγουμε το συστατικό DogBarkingSound, εντοπίζουμε το
πλακίδιο call DogBarkingSound.Play και το «κουμπώνουμε» μέσα στο
προηγούμενο πλακίδιο.
Ας διαβάσουμε τα πλακίδια που συναρμολογήσαμε. Δίνουν τις εντολές που
είναι απαραίτητες έτσι ώστε η εφαρμογή μας να κάνει αυτό που θέλουμε.
Όταν ο χρήστης αγγίξει τον καμβά DogCanvas, τότε αναπαράγεται ο ήχος
DogBarkingSound.
Παρατήρηση: Σημειώστε ότι το πλακίδιο when DogCanvas.TouchDown επιστρέφει και
δύο νούμερα, τα x και y. Αυτά τα νούμερα προσδιορίζουν που ακριβώς ακούμπησε το
δάχτυλό του ο χρήστης στην οθόνη και θα τα χρησιμοποιήσουμε στο Βήμα 6.
7/11
8. Βήμα 5
Αλλαγή της μορφής του σκύλου
Στο βήμα αυτό θα επεκτείνουμε την συμπεριφορά του σκύλου έτσι ώστε να
αλλάζει μορφή και να αγριεύει όταν τον αγγίζουμε.
Designer
Προσθέτουμε στο project τη θυμωμένη εκδοχή του σκύλου (AngryDog.png). Στο
το πλαίσιο Media πατάμε Upload File…
στη συνέχεια Browse… και επιλέγουμε το αρχείο AngryDog.png.
Blocks
Εδώ θέλουμε η φιγούρα του σκύλου DogSprite να αλλάζει μορφή όταν ο
χρήστης την αγγίζει και να επανέρχεται όταν η επαφή σταματά. Όλα τα
πλακίδια αφορούν την μορφή DogSprite και θα τα βρούμε στο συρτάρι που
εμφανίζεται όταν την επιλέξουμε.
Αρχικά, εντοπίζουμε και συναρμολογούμε τα παρακάτω πλακίδια:
Παρατηρούμε ότι οι εντολές μας είναι ελλιπείς. Πώς θα προσδιορίσουμε την
εικόνα που θα έχει η φιγούρα DogSprite όταν αγγιχθεί; Θα πρέπει να
παρέχουμε το αντίστοιχο όνομα αρχείου. Ανατρέχουμε λοιπόν στην ενσωματωμένη ομάδα πλακιδίων Text και επιλέγουμε το πλακίδιο του κενού κειμένου...
8/11
9. ...στο οποίο συμπληρώνουμε το όνομα του αρχείου εικόνας “AngryDog.png” και
το προσθέτουμε στις εντολές μας.
Αναλόγως προσδιορίζουμε την εικόνα στην οποία θα επανέρχεται ο σκύλος
όταν σταματάει η επαφή.
Όταν ο χρήστης αγγίξει τη φιγούρα DogSprite, τότε αυτή παίρνει την μορφή
AngryDog.png. Όταν σταματήσει η επαφή με την φιγούρα DogSprite τότε αυτή
παίρνει την μορφή SleepyDog.png.
Βήμα 6
Προσοχή στα δάχτυλα
Στο βήμα αυτό θα κάνουμε τον φύλακά μας λίγο πιο επιθετικό. Όταν ο
χρήστης αγγίζει την οθόνη τότε ο σκύλος θα κινείται προς το σημείο επαφής.
Blocks
Εδώ θέλουμε όταν ο χρήστης αγγίζει τον καμβά DogCanvas η φιγούρα DogSpite
να στρέφεται και να κινείται προς το σημείο επαφής. Στο Βήμα 4 είχαμε
προσδιορίσει πως όταν ο χρήστης ακουμπά τον καμβά DogCanvas τότε
ακούγεται ο ήχος του γαβγίσματος.
Διαθέτουμε λοιπόν ήδη το when DogCanvas.TouchDown,
το οποίο προσδιορίζει και το σημείο στο οποίο έγινε η
επαφή, δηλαδή την οριζόντια απόσταση x από το
αριστερό άκρο του καμβά και την κάθετη απόσταση y
από το πάνω άκρο του καμβά. Οι αριθμοί x και y
ονομάζονται και συντεταγμένες του σημείου επαφής.
Στο βήμα αυτό θα χρησιμοποιήσουμε τις συντεταγμένες x
και y όπου έγινε η επαφή, για να καθορίσουμε προς τα
που πρέπει να στραφεί ο σκύλος.
9/11
10. Αρχικά, προσθέτουμε το πλακίδιο call DogSprite.PointInDirection, το οποίο
στρέφει τη φιγούρα προς ένα συγκεκριμένο σημείο.
Για να πάρουμε την τιμή της x στην οποία έγινε η επαφή αφήνουμε το δείκτη
του ποντικιού πάνω από την ετικέτα x κι εμφανίζεται το πλακίδιο get x...
...το οποίο σέρνουμε και κουμπώνουμε στο x της PointInDirection. Το ίδιο
κάνουμε και για την y.
Τώρα απομένει να ασχοληθούμε με την κίνηση του σκύλου. Θα πρέπει, όταν ο
χρήστης ακουμπά τον καμβά, να τροποποιήσουμε την ταχύτητά του με το
πλακίδιο set DogSprite.Speed.
Χρειάζεται ένας αριθμός για να προσδιορίσουμε την ταχύτητα. Ανατρέχουμε
λοιπόν στην ενσωματωμένη ομάδα πλακιδίων Math κι επιλέγουμε το πλακίδιο
με τον αριθμό 0...
10/11
11. ...τον οποίο τροποποιούμε σε 40 και κουμπώνουμε στην set DogSprite.Speed.
Εισάγουμε πλέον ολόκληρη την εντολή στην when DogCanvas.TouchDown.
Όταν ο χρήστης αγγίξει τον καμβά DogCanvas, τότε αναπαράγεται ο ήχος
DogBarkingSound, η φιγούρα DogSprite στρέφεται προς το σημείο επαφής (με
συντεταγμένες x και y και κινείται με ταχύτητα 40.
Με παρόμοιο τρόπο, μηδενίζουμε την ταχύτητα του σκύλου όταν το δάχτυλο
του χρήστη δεν είναι πια σε επαφή με την οθόνη.
Όταν ο χρήστης παύει να αγγίζει τον καμβά DogCanvas η φιγούρα DogSprite
ακινητοποιείται.
Αυτό το φύλλο εργασίας βασίζεται στο παράδειγμα HelloPurr και διατίθεται με άδεια
Creative Commons Αναφορά Δημιουργού 3.0 (http://goo.gl/oyehU8). Η αναφορά σε αυτό θα
πρέπει να γίνεται ως εξής:
Φύλλο Εργασίας: GuardDog – Προγραμματισμός Εφαρμογής με το AppInventor. Γιώργος
Χατζηνικολάκης, Γιώργος Μπουκέας. Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου, 2013.
Τα εικονίδια που χρησιμοποιήθηκαν στο φύλλο εργασίας προέρχονται από το σετ
εικονιδίων Faenza, του Matthieu James.
11/11