8ο Πανελλήνιο Συνέδριο«Διδακτική της Πληροφορικής» 2016 – Ιωάννινα , Ελλάδα
Python from Scratch
Μετάβαση από το Scratch στην Python και τον αντικειμενοστραφή
προγραμματισμό αξιοποιώντας το παιχνίδι Code Combat
Θεοδούλη Τερζίδου
MSc | PhD Candidate | Εκπαιδευτικός ΠΕ19
2.
Περιεχόμενα
Εισαγωγή
Αξιοποίησηπαιχνιδοκεντρικής μάθησης
Διδασκαλία προγραμματισμού με Scratch
Η γλώσσα προγραμματισμού Python
Το Code Combat στη διδασκαλία της Python
Από το Scratch στην Python και τον
αντικειμενοστραφή προγραμματισμό με το Code
Combat
Πρόταση Διδασκαλίας
Μελλοντική εργασία
2 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
3.
3 2/10/20168ο ΠανελλήνιοΣυνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Γιατί είναι σημαντική η εκμάθηση μιας
Γλώσσας Προγραμματισμού?
4.
Σύμφωνα με τηνGrand Coalition for Digital Jobs- πρωτοβουλία της Ευρωπαϊκής Επιτροπής
913.000
κενές θέσεις
στην Ευρώπη
έως το 2020
σε επαγγέλματα στον
τομέα της
Πληροφορικής
5.
Ο μαθητής του«2020»
5
Καταναλωτής
Δημιουργός
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
6.
6 2/10/20168ο ΠανελλήνιοΣυνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Δημιουργικότητα
Αλγοριθμική
σκέψη
Κατάργηση
γεωγραφικών
συνόρων
Συνεργασία
Επίλυση
προβλημάτων
CODING
Προγραμματισμός
Νέα γλώσσα
επικοινωνίας
Προγραμματισμός: η δεξιότητα του 21ου αιώνα που…
Παχνιδοκεντρική Μάθηση [GameBased Learning]
8 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Παχνιδοκεντρική
Μάθηση
[Game Based Learning]
Μαθαίνω
παίζοντας
Gamification
Serious Games
Educational Games Digital Game Learnin
9.
Παιχνιδοκεντρική Μάθηση [GameBased Learning]
9 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
«Είναι η εκπαιδευτική διαδικασία, η οποία χρησιμοποιεί εμπειρίες
παιχνιδιού ως εργαλείο μάθησης.»
[Terzidou & Tsiatsos, 2011]
Παχνιδοκεντρική Μάθηση [Game Based Learning]
«Η παρακίνηση μέσω παιχνιδιών μπορεί να βρει εφαρμογή στην
εκμάθηση αντικειμένων, τα οποία έχουν αυξημένο βαθμό
δυσκολίας όσον αφορά τη διδασκαλία τους» [Prensky, 2001]
Τα παιχνίδια μπορούν να αξιοποιηθούν στη διδασκαλία των
αφηρημένων, και γι αυτό το λόγο, δύσκολων εννοιών του
προγραμματισμού
«Οι παιγνιώδεις δραστηριότητες μπορούν να ενισχύσουν την εκ
βαθέων μάθηση (deep learning).» [Piaget, 1970]
10.
Παιχνίδια Κώδικα καιΠρογραμματισμός με…
Με blocks Με συγγραφή κώδικα
Scratch
Code.org
Run Marco
Tynker
The Foos
LightBot
CodinGame
Code Combat
Ruby Warrior
Code School
10 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Προγραμματισμός σε γλώσσα υψηλού επιπέδου
Τι θα θέλαμε…
Μετάβαση από το Scratch, στον προγραμματισμό με
Python και τον αντικειμενοστραφή προγραμματισμό, με
παιγνιώδη τρόπο… αξιοποιώντας το CodeCombat.
PYTHON γιατί…
20
Δημοφιλέστερηγλώσσα για την εισαγωγή στον προγραμματισμό
5η δημοφιλέστερη στον κόσμο [Μάρτιος 2016 - Tiobe]
Ευανάγνωστη - Ευέλικτη - Εύκολο συντακτικό
Ενεργή κοινότητα προγραμματιστών
Υποστηρίζεται από το Raspberry Pi
Μια γλώσσα που “μιλάνε” οι κορυφαίοι της τεχνολογίας, όπως
Google, NASA, Dropbox, IBM, NOKIA, Lego… κα. [~5000]
Γνωστά και γραμμένα σε Python:
Youtube
Dropbox
Blender 3D
EVE online
Instagram και άλλα …!
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Περί Code Combat…
23
Ξεκίνησε το 2013 από ομάδα 13 ατόμων
Διαθέσιμο σε 50 γλώσσες + Ελληνική
Χρήστες > 5.000.000 σε 200 και πλέον χώρες
450 μέλη-συνδημιουργοί παγκοσμίως
Open Source [GitHub - MIT and Creative Commons licenses]
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
24.
Το Code Combatως παιχνίδι…
24
Ένα παιχνίδι κώδικα με μορφή περιπέτειας [RPG].
Δίνει την αίσθηση πραγματικού παιχνιδιού.
Παίζεται ατομικά ή σε επίπεδο πολλών online χρηστών.
Διαθέτει πολλά επίπεδα κλιμακούμενης δυσκολίας
[ανάλογα με τη διδασκόμενη έννοια/δομή].
Τα πρώτα επίπεδα διατίθενται δωρεάν [επόμενα με
συνδρομή].
Δεν απαιτείται η δημιουργία λογαριασμού [για διατήρηση
της προόδου ενδείκνυται εγγραφή].
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
25.
Στόχος του παιχνιδιού
25
Ο παίκτης, με τη μορφή ήρωα/ηρωίδας, πρέπει να επιβιώσει
σε δοκιμασίες, να συλλέξει πόντους μαζεύοντας πετράδια και
να «βελτιώνει» τον χαρακτήρα του.
Κάθε επιτυχημένη αποστολή προσφέρει πόντους εμπειρίας
(XPs) και «Επιτεύγματα». – Extra Bonus για άψογο
κώδικα!
Ο παίκτης ελέγχει τον ήρωα του πληκτρολογώντας σωστά
συντακτικά, και σε λογική σειρά εντολές στη γλώσσα
προγραμματισμού της επιλογής του [Python, JavaScript].
Σε περίπτωση λάθους δίνεται κατάλληλη ανατροφοδότηση.
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Το Code Combatως εκπαιδευτικό εργαλείο…
31
Ανήκει στην κατηγορία των Σοβαρών Παιχνιδιών [Serious
Games].
Προσφέρει δημιουργία τάξεων και παρακολούθησης προόδου
μαθητών.
Έχει προσαρμοσμένα μαθήματα για Δημοτικό/Γυμνάσιο/Λύκειο
Υποστηρίζει τη συνεργατική μάθηση [δημιουργία «Φατριών»].
Διαθέτει μια ενεργή κοινότητα για εκπαιδευτικούς.
Προσφέρει Οδηγούς για εκπαιδευτικούς και μαθητές.
Ενθαρρύνει τα κορίτσια… Χρησιμοποιεί και γυναικείους
χαρακτήρες [«Ηρωίδες»]!
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Ενότητες διδακτικού σεναρίου
332/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
• Ο μαθητής υλοποιεί σενάρια στο
Scratch και στη συνέχεια τα
"μεταφράζει" σε Python.
• Αναγνωρίζει την αντιστοιχία
βασικών εντολών Scratch-Python.
• Αναγνωρίζει την έννοια του
συντακτικού λάθους.
Scratch & Python
#1 BASICS
• Ο μαθητής εισάγεται στις έννοιες
του Αντικειμενοστραφούς
Προγραμματισμού.
• Υλοποιεί σενάρια στο Scratch και
στην Python.
• Παίζει με «αντικείμενα» και
γράφει κώδικα στο Code Combat
Scratch & Python &
Code Combat
#2 OOP
Το ξεκίνημα… “HelloWorld”
36 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Scratch
• Γράψε ένα πρόγραμμα στο Scratch, όπου ένα αντικείμενο
σου [Sprite] θα λέει το μήνυμα “Hello Scratch World”
Python
• Άνοιξε το πρόγραμμα Python IDLE.
Python
• Μετά τα σύμβολα >>> πληκτρολόγησε την εντολή και
πάτησε ENTER για να την εκτελέσεις.
36.
Παράδειγμα Φύλλου Εργασίας#1
37 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
37.
Παράδειγμα Φύλλου Εργασίας#2
38 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
38.
39 8ο ΠανελλήνιοΣυνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Συνέχεια Φύλλου Εργασίας #2
Εισαγωγή στον αντικειμενοστραφήπρογραμματισμό
42
Δημιουργία συσχετίσεων με τα ήδη γνωστά για τον μαθητή,
αντικείμενα [sprites] του Scratch.
Ο μαθητής υλοποιεί πρόγραμμα στο Scratch, με αντικείμενα,
παρόμοια σε μορφή, με αυτά που θα κληθεί να υλοποιήσει
αργότερα στην Python αλλά και στο παιχνίδι Code Combat
[πχ. Ιππότης-hero].
Καθοδηγείται να δημιουργήσει τις απαραίτητες νοητικές
συνδέσεις.
Προχωρά στη δημιουργία αντικειμένων γράφοντας εντολές
στην Python.
Η ενότητα ολοκληρώνεται στο παιχνίδι Code Combat.
2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
#6 | Python& Αντικείμενα στο Code Combat
48 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
48.
#7 | Ένασπαθί… για τη μέθοδο attack
49 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
49.
#8 | CodeCombat HELP
50 2/10/20168ο Πανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Βοήθεια
[HELP]
Εκσφαλμάτωση
50.
51 2/10/20168ο ΠανελλήνιοΣυνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Οι πρώτες εντυπώσεις από το Code Combat…
«Είναι πολύ ωραίο, έχουν πλάκα τα ανθρωπάκια και είναι πολύ εύκολο»
<μαθήτρια Ε’ Δημοτικού>
«Ήταν πολύ ωραίο γιατί συνεργαζόμασταν»
<μαθητής Ε’ Δημοτικού>
«Ήταν καλό αλλά πιο καλό με παρέα »
<μαθητής Ε’ Δημοτικού>
«Έχει ωραία γραφικά όμως κολλάει. Επίσης είναι εύκολα τα επίπεδα.»
<μαθητής Ε’ Δημοτικού>
«Στην αρχή ήταν δύσκολο, αλλά μετά που το μάθαμε ήταν πολύ ωραίο.»
<μαθητής ΣΤ’ Δημοτικού>
«Ήταν δύσκολο αλλά ωραίο άρα είμαι ευχαριστημένη.»
<μαθήτρια Δ’ Δημοτικού>
«Ήταν ωραίο αλλά γιατί χρειάζεται να γράφεις?»
<μαθητής Δ’ Δημοτικού>
«Το παιχνίδι είναι πολύ ωραίο. Μας δυσκόλεψε λίγο το attack, αλλά τα
καταφέραμε.»
<μαθητής Ε’ Δημοτικού>
51.
Μελλοντικός στόχος
52 2/10/20168οΠανελλήνιο Συνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Αξιολόγηση της αποτελεσματικότητας του διδακτικού
σεναρίου στην τάξη, σε μαθητές Δημοτικού και
Γυμνασίου.
52.
53 2/10/20168ο ΠανελλήνιοΣυνέδριο «Διδακτική της Πληροφορικής» 2016 | Θεοδούλη Τερζίδου
Ευχαριστώ
Theodouli Terzidou | MSc
PhD Candidate | Aristotle University of
Thessaloniki
Europe Code Week Ambassador | Greece