Informacje o lekcji
Klasy: uczniowie 8 klasy szkoły podstawowej i uczniowie szkół ponadpodstawowych (aby uczestniczyć w tej lekcji, uczniowie muszą mieć ukończone 13 lat)
Czas trwania lekcji: 1 godz.
Wykorzystywane narzędzie: tryb kreatywny Fortnite
Środowisko lekcyjne/edukacyjne: urządzenie obsługujące Fortnite (po jednym na ucznia) z dostępem do Internetu. Dobrym rozwiązaniem będzie pracownia komputerowa z komputerami stacjonarnymi lub pomieszczenie z laptopami na ruchomych stolikach.
Dane kontaktowe autora
Autorzy: Steven Isaacs i Brian Dickman
E-mail: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: https://www.linkedin.com/in/steve-isaacs/ | https://www.linkedin.com/in/cleverlike
OPIS ŚRODOWISKA LEKCYJNEGO/EDUKACYJNEGO
Ta lekcja została opracowana na potrzeby kursu Godzina z kodowaniem podczas tygodnia edukacji informatycznej (Computer Science Education Week).
Lekcję można potraktować jako niezależną lub użyć jej w połączeniu z innymi aktywnościami w ramach większego projektu.
Autor Steve Isaacs uczy projektowania i tworzenia gier w opartym na zadaniach lub wyborze środowisku edukacyjnym, które zapewnia uczniom okazje do zastosowania różnych metod osiągania celów edukacyjnych na podstawie ich własnych zainteresowań, zarówno pod względem treści, jak i opcji w projekcie.
Autor Brian Dickman studiował informatykę i prowadzi studio deweloperskie, które tworzy treści rozrywkowe i edukacyjne umieszczane w popularnych grach wideo.
Omówienie lekcji
Czy potrafisz uciec z quizowej wieży? A może nawet potrafisz stworzyć quizową grę z ucieczką z wieży?
To zadanie zaprezentuje wykorzystanie funkcji w trybie kreatywnym Fortnite. Polega na utworzeniu gry, w której gracze będą musieli odpowiedzieć na pytania z quizu, aby uciec z wieży. Każda poprawna odpowiedź aktywuje funkcję umożliwiającą graczowi przejście dalej (towarzyszy temu przyjemny efekt dźwiękowy i wizualny). Niepoprawne odpowiedzi aktywują niezbyt przyjemny efekt dźwiękowy i wizualny oraz będą wymagać od gracza podjęcia kolejnej próby udzielenia właściwej odpowiedzi.
Kończąc to zadanie, uczniowie poznają podstawy funkcji oraz ich związek z programowaniem poprzez wykorzystanie Sekwencera i szeregu urządzeń.
Oczekiwane wyniki
Jakie są efekty nauki dla uczniów?
NAJWAŻNIEJSZE PYTANIA / WAŻNE POMYSŁY
Czy uczniowie mogą poznawać koncepcje informatyczne w ramach znaczącej aktywności, zamiast po prostu uczyć się składni jako osobnej umiejętności?
Czy uczenie się koncepcji informatycznych, takich jak funkcje, poprzez ćwiczenie w trybie kreatywnym Fortnite pozwoli zrozumieć koncepcję w środowisku programowania?
Czy uczniowie mogą poznawać koncepcje informatyczne na podstawie mechaniki gry?
Czy uczniowie wykażą większą motywację do nauki informatyki, gdy koncepcje będą wprowadzane w środowisku gry?
Ćwiczenia edukacyjne
Wprowadzenie do funkcji
Funkcja to jednostka kodu, którą często definiuje jej rola w ramach większej struktury kodu. Mówiąc dokładniej, funkcja zawiera jednostkę kodu wykonującą działania na danych wejściowych (często są to zmienne) i generuje konkretne wyniki, co obejmuje modyfikowanie wartości zmiennych lub wykonywanie rzeczywistych operacji w oparciu o te dane wejściowe.
Źródło: Techopedia.com
A w jeszcze prostszych słowach:
Funkcja to fragment kodu, który w prosty sposób można wielokrotnie wywoływać.
Źródło: code.org
Na przykład zadanie z tej lekcji będzie wymagać od uczniów skonfigurowania szeregu funkcji, które zostaną wykorzystane na potrzeby quizu w trybie kreatywnym Fortnite. Oznacza to przede wszystkim, że każda funkcja (reprezentowana przez sekwencer) będzie uruchamiać (przy użyciu urządzeń) szereg poleceń w grze.
Pseudokod to symulacja kodu mająca ilustrować stojący za nim zamysł. Pseudokod prezentuje ogólną strukturę kodu, ale nie jest w nim stosowana właściwa składnia. Podczas tych lekcji będziemy posługiwać się pseudokodem w celach demonstracyjnych.
Pseudokod może wyglądać następująco:
Funkcja 1 (zadajPytanie): rozpoczęcie rundy / zadanie graczowi pytania Funkcja 2 (uruchomLicznikCzasu): licznik czasu odliczania
mojaFunkcja(zadajPytanie) Wykonaj poniższe czynności: Zresetuj przyciski odpowiedzi Odtwórz dźwięk Wybierz losową liczbę w celu wybrania pytania z quizu Zaprezentuj pytanie mojaFunkcja(uruchomLicznikCzasu) Uruchom Licznik czasu odliczania Jeśli odliczanie dobiegnie do 0, to Czas się kończy Odtwórz dźwięk Wyświetl komunikat („Niestety nie udało ci się odpowiedzieć na czas”) Aktywuj następne pytanie Zakończ funkcję Zakończ funkcję
Funkcja 3 (poprawnaOdpowiedź) mojaFunkcja(prawidłowaOdpowiedź) Wykonaj poniższe czynności: Odtwórz radosny dźwięk Wyświetl komunikat („Zgadza się! Świetna robota!”) Dodaj punkt do wyniku Aktywuj następne pytanie ZakończFunkcję ZakończFunkcję
Funkcja 4 (niepoprawnaOdpowiedź) mojaFunkcja(nieprawidłowaOdpowiedź) Wykonaj poniższe czynności: Odtwórz smutny dźwięk Wyświetl komunikat („Niestety, spróbuj jeszcze raz!”) Aktywuj następne pytanie ZakończFunkcję
W powyższym przykładzie po zainicjowaniu funkcji (zadajPytanie) dzieje się szereg rzeczy:
Zresetowanie przycisków odpowiedzi.
Odtworzenie dźwięku informującego o nadchodzącym pytaniu.
Wybranie losowej liczby w celu określenia, które pytanie z quizu zostanie zadane.
Zaprezentowanie graczowi pytania.
Następnie wprowadzany następną funkcję (uruchomLicznikCzasu), który inicjuje:
Uruchomienie Licznika czasu odliczania.
Odtworzenie dźwięku, gdy licznik czasu odliczy do 0, w celu poinformowania, że upłynął czas na udzielenie odpowiedzi.
Dodajemy dwie dodatkowe funkcje (poprawnaOdpowiedź) i (niepoprawnaOdpowiedź). Inicjują one następujące działania:
Odtworzenie dźwięku.
Dostosowanie wyniku w odpowiedniej sytuacji.
Wyświetlenie komunikatu.
Aktywowanie następnego pytania.
Oto film objaśniające funkcje:
CS Principles: Defining and Calling Functions (Zasady informatyki: definiowanie i wywoływanie funkcji)
Zmiennych można używać w dowolnym języku programowania i w środowiskach takich jak tryb kreatywny w Fortnite.
W Fortnite będziemy używać sekwencera i umieszczać w nim nasze zdarzenia/działania, aby były wykonywane po jego aktywowaniu.
DZIAŁANIA
Szczegółowe instrukcje dla aktywności znajdziesz w instrukcjach dla uczniów i instrukcjach dla nauczycieli.
Uczniowie powinni mieć dostęp do instrukcji dla uczniów i pracować z ich użyciem.
Użyj rubryki do pobrania, aby ocenić pracę uczniów.
Zasoby zewnętrzne
Makecode Arcade: Functions (Makecode Arcade: funkcje)
CS Principles: Intro to Variables Part 1 (Zasady informatyki: wstęp do zmiennych – część 1) CS Principles: Intro to Variables Part 2 (Zasady informatyki: wstęp do zmiennych – część 2) Definicja zmiennych
Przypisania standardów
1A-AP-09 Modeluj sposób, w jaki programy przechowują i przetwarzają dane, korzystając z cyfr lub innych symboli reprezentujących informacje.
1B-AP-10 Stwórz programy obejmujące sekwencje, wydarzenia, pętle i warunki.
1B-AP-12 Zmodyfikuj, wymieszaj lub uwzględnij elementy istniejącego programu we własnej pracy, w celu opracowania czegoś nowego lub dodania bardziej zaawansowanych funkcji.
1B-AP-15 Przetestuj i debuguj (identyfikuj i usuń błędy) programu lub algorytmu, by działał zgodnie z planem.
2-AP-10 Użyj diagramów i/lub pseudokodu, by rozwiązać złożone problemy jako algorytmy.
2-AP-13 Rozłóż problemy i podproblemy na mniejsze części w celu usprawnienia projektowania, wdrażania i oceny programów.
2-AP-14 Stwórz procedury z parametrami, aby zorganizować kod i ułatwić jego ponowne użycie.
2-AP-17 Systematycznie testuj i udoskonalaj programy na podstawie różnych testów.
3A-AP-13 Stwórz prototypy, które używają algorytmów w celu rozwiązania problemów obliczeniowych poprzez wykorzystanie wcześniejszej wiedzy i zainteresowań uczniów.
3A-AP-16 Zaprojektuj i stwórz metodą iteracji algorytmy obliczeniowe na potrzeby praktyczne, wyrażania siebie lub w celu rozwiązania problemu społeczeństwa poprzez użycie wydarzeń do zainicjowania instrukcji.
3A-AP-17 Rozłóż problemy na mniejsze elementy poprzez systematyczną analizę oraz używanie konstrukcji takich jak procedury, moduły i/lub obiekty.
3A-AP-18 Stwórz artefakty przy użyciu procedur w programie, połączeń danych i procedur lub niezależnych, ale powiązanych programów.
3A-AP-22 Zaprojektuj i opracuj algorytmy obliczeniowe działające w rolach zespołowych przy użyciu narzędzi do współpracy.
POWIĄZANIA INTERDYSCYPLINARNE I Z XXI WIEKIEM
Ta lekcja obejmuje kwestie związane z programowaniem/informatyką.
Związki z XXI wiekiem:
Myślenie krytyczne
Kreatywność
Współpraca
Łączność
Iteracja technologii
Elastyczność
Dowodzenie
Inicjatywa
Umiejętności społeczne
MODYFIKACJE I DOSTOSOWANIA
Zapewnij modyfikacje i elementy umożliwiające dostosowanie odpowiednio do potrzeb uczniów, IEP, 504 itp.
Uczniowie mogą pracować w zespołach w celu zintegrowania skoordynowanego podejścia do programowania.
Można zapewnić uczniom przykładową mapę, która będą mogli rozebrać na części / zmodyfikować.
W razie potrzeby zapewnij kontroler adaptacyjny / kontroler do gier.