Opracowanie edukacyjne
Co trzeba wiedzieć przed quizem?
W programowaniu wizualnym budujemy skrypt z graficznych bloków reprezentujących polecenia. Dzięki kształtom i kategoriom łatwiej zauważyć, które elementy można ze sobą połączyć, ale program nadal wymaga dokładnego planu. Duszek nie domyśli się intencji autora: zareaguje na wskazane zdarzenie, wykona połączone bloki w ustalonej kolejności, sprawdzi warunek i powtórzy działania zgodnie z użytym rodzajem pętli. Ten materiał dotyczy wyłącznie tworzenia i analizowania skryptów blokowych.
Po tej lekcji potrafisz
- rozpoznawać scenę, duszka, obszar skryptów i podstawowe kategorie bloków
- wyjaśniać rolę zdarzenia rozpoczynającego skrypt oraz kolejności dołączonych bloków
- dobierać warunek do działania zależnego od sytuacji i pętlę do działania powtarzanego
- przewidywać zachowanie prostego skryptu blokowego bez jego uruchamiania
- testować projekt według celu, lokalizować błąd i sprawdzać wprowadzoną poprawkę
Scena, duszek, bloki i skrypt
Scena jest miejscem, na którym obserwujemy działanie projektu, a duszek to programowany obiekt — na przykład postać, zwierzę lub pojazd. Bloki są uporządkowane w kategoriach takich jak Zdarzenia, Ruch, Wygląd i Kontrola. Przeciągamy je do obszaru skryptów i łączymy, tworząc plan zachowania wybranego duszka albo sceny. Samo położenie bloku na palecie nie uruchamia go.
Skrypt to połączony zestaw bloków. Warto nadawać każdemu skryptowi jedno czytelne zadanie, na przykład ustawienie postaci na starcie albo sterowanie ruchem po naciśnięciu klawisza. Projekt może mieć kilka skryptów uruchamianych przez różne zdarzenia. Przed budową należy zapisać prostym językiem, co ma się wydarzyć, dzięki czemu łatwiej dobrać bloki i później ocenić wynik.
Zdarzenie rozpoczyna, sekwencja porządkuje
Zdarzenie informuje, kiedy skrypt ma się rozpocząć. Blok „kiedy kliknięto zieloną flagę” uruchamia dołączone pod nim polecenia po naciśnięciu flagi. Inne zdarzenie może reagować na kliknięcie duszka albo naciśnięcie klawisza. Wybór zależy od celu: przycisk w grze powinien reagować na kliknięcie, a przygotowanie całej sceny może rozpocząć się od zielonej flagi.
Po starcie połączone bloki wykonują się w zapisanej kolejności. Jeśli duszek ma najpierw wrócić na pozycję startową, potem powiedzieć „Gotowy!”, a dopiero później ruszyć, właśnie tak ustawiamy bloki od góry do dołu. Przestawienie ruchu przed ustawienie pozycji da inny efekt. Przewidywanie stanu po każdym bloku jest podstawą czytania skryptu i odnajdywania pomyłek.
Warunek pozwala podjąć decyzję
Blok warunkowy wykonuje zawarte w nim działanie tylko wtedy, gdy sprawdzane zdanie jest prawdziwe. Przykład: „jeżeli duszek dotyka brzegu, to odbij się”. Gdy duszek znajduje się z dala od brzegu, polecenie odbicia zostaje pominięte. Warunek nie oznacza powtarzania — podczas pojedynczego przejścia przez skrypt jest sprawdzany w określonym momencie.
Konstrukcja „jeżeli — w przeciwnym razie” wybiera jedną z dwóch dróg. W quizie można dzięki niej wyświetlić komunikat „dobrze” dla poprawnej odpowiedzi, a inny komunikat dla błędnej. Aby decyzja miała sens, warunek musi dawać wynik prawda albo fałsz, na przykład „czy wynik jest większy od pięciu?” lub „czy duszek dotyka koloru niebieskiego?”.
Pętla steruje powtarzaniem
Pętla grupuje działania, które mają zostać wykonane wiele razy. Blok „powtórz 4 razy” nadaje się do czterokrotnego wykonania tego samego fragmentu, na przykład ruchu i obrotu podczas rysowania kwadratu. Jest czytelniejszy od czterech ręcznie skopiowanych par bloków, a zmianę wykonujemy w jednym miejscu. Liczba powtórzeń należy do planu i powinna wynikać z celu.
Pętla „zawsze” działa do zatrzymania projektu i pasuje do ciągłego patrolowania sceny albo sprawdzania, czy duszek dotknął brzegu. Trzeba rozróżnić ją od pętli z określoną liczbą powtórzeń. Niewłaściwie użyta pętla może sprawić, że komunikat wyświetla się bez końca lub postać nie zatrzymuje się w oczekiwanym miejscu.
Testowanie i debugowanie krok po kroku
Przed testem zapisz oczekiwane zachowanie, na przykład: „po kliknięciu duszka postać mówi dzień dobry jeden raz”. Następnie uruchom dokładnie to zdarzenie i obserwuj, co naprawdę się dzieje. Jeżeli postać reaguje dopiero na zieloną flagę, porównanie celu ze skryptem kieruje uwagę na blok zdarzenia. Jeśli nie rusza się wcale, warto sprawdzić, czy blok ruchu jest połączony z uruchamianym stosem.
Debugowanie to świadome szukanie i poprawianie przyczyny błędu. Najpierw znajdź pierwszy moment, w którym zachowanie różni się od planu. Potem zmień jeden podejrzany blok, uruchom ten sam przypadek ponownie i zanotuj wynik. Losowe przestawienie wielu elementów może przypadkiem ukryć problem, ale nie uczy, dlaczego powstał. Po poprawce sprawdź także inne używane zdarzenia i sytuacje.
Od pomysłu do działającego skryptu blokowego
| Element planu | Pytanie projektowe i Przykład w projekcie |
|---|---|
| Cel | Co ma zobaczyć użytkownik? – Duszek po kliknięciu rozpoczyna krótki spacer. |
| Zdarzenie | Co uruchamia zachowanie? – Kliknięcie wybranego duszka. |
| Stan początkowy | Gdzie i jak zaczyna obiekt? – Postać wraca na oznaczoną pozycję startową. |
| Sekwencja | Co dzieje się po kolei? – Powitanie, obrót, a następnie ruch. |
| Warunek | Od jakiej sytuacji zależy reakcja? – Jeżeli postać dotyka brzegu, odbija się. |
| Pętla | Który fragment ma się powtarzać? – Ruch i sprawdzanie brzegu działają podczas patrolu. |
| Test | Jaki wynik porównamy z planem? – Po kliknięciu sprawdzamy start, kolejność i zatrzymanie. |
| Poprawka | Który blok pierwszy daje zły efekt? – Zmieniamy jeden element i wykonujemy ten sam test. |
Najważniejsze pojęcia
- programowanie wizualne
- tworzenie programu przez łączenie graficznych elementów reprezentujących instrukcje i konstrukcje sterujące
- duszek
- obiekt na scenie, któremu można przypisać wygląd oraz skrypty zachowania
- skrypt
- połączony zestaw bloków opisujący reakcję lub działanie obiektu
- zdarzenie
- sygnał rozpoczynający skrypt, na przykład kliknięcie flagi, duszka albo klawisza
- warunek
- sprawdzane zdanie o wyniku prawda albo fałsz, od którego zależy wykonanie działania
- pętla
- konstrukcja powodująca wielokrotne wykonanie umieszczonych w niej bloków
- błąd
- przyczyna, przez którą rzeczywiste działanie projektu nie zgadza się z wymaganym zachowaniem
- debugowanie
- proces lokalizowania przyczyny błędu, wprowadzania poprawki i ponownego testowania
Najczęstsze pomyłki
- Blok leżący osobno w obszarze skryptów nie stanie się częścią stosu tylko dlatego, że znajduje się blisko niego.
- Zielona flaga jest jednym ze zdarzeń, ale nie zastępuje zdarzenia kliknięcia duszka wymaganego przez projekt.
- Warunek wybiera działanie zależnie od sytuacji; sam z siebie nie powoduje wielokrotnego sprawdzania.
- Pętla z ustaloną liczbą powtórzeń i pętla „zawsze” nie mają takiego samego sposobu zakończenia.
- Ładny wygląd sceny nie dowodzi poprawności kolejności ani logiki skryptu.
- Debugowanie nie polega na przypadkowej wymianie wielu bloków, lecz na testowaniu konkretnej hipotezy o przyczynie błędu.
Podsumowanie do zapamiętania
- Program wizualny powstaje przez łączenie bloków w skrypty przypisane do duszka lub sceny.
- Zdarzenie określa moment rozpoczęcia połączonych pod nim działań.
- Sekwencja bloków decyduje, co zostanie wykonane najpierw, a co później.
- Warunek uruchamia działanie tylko po spełnieniu sprawdzanej przesłanki.
- Pętla powtarza fragment określoną liczbę razy albo do chwili zatrzymania.
- Testowanie i debugowanie wymagają porównania wyniku z celem, jednej uzasadnionej poprawki i ponownej próby.