Page 53 - ODV Training outline_PL
P. 53
Bloki te mają kluczowe znaczenie dla tworzenia ustrukturyzowanego
kodu, a ich funkcjonalność jest ważna dla zrozumienia i abstrakcji pojęć
związanych z myśleniem obliczeniowym. Jako przykład można przyjąć, że postać
(sprite) ma wchodzić w interakcję z użytkownikiem, grając w chowanego - kiedy
najedzie się na nią kursorem myszy, znika, by wkrótce potem pojawić się
ponownie w innej losowej pozycji. Jak można wprowadzić taką zasadę? Kluczowe
jest myślenie algorytmicznie i wyabstrahowanie podstawowego pojęcia: należy
nieustannie powtarzać instrukcję, która ukrywa postać tylko wtedy, gdy spełniony
jest warunek dotknięcia jej wskaźnikiem myszy. Następnie należy sprawić, by
przesunęła się ona do losowej pozycji i zapewnić, że gdy poprzedni warunek nie
zostanie spełniony, pozostanie nieruchoma i widoczna. Poniżej znajduje się kod
blokowy, który osiąga wspomniane założenie.
Dzięki temu kodowi kot ukrywa się na sekundę
po najechaniu na niego myszą i pojawia się
ponownie w innym punkcie sceny.
Coraz bardziej złożone kody, również dzięki pracy społeczności
Obserwując użyteczne bloki w Scratch, łatwo zdać sobie sprawę z niemal
nieskończonych możliwości zwiększania złożoności algorytmów. Oprócz
wspomnianych wcześniej bloków ruchu, wyglądu, dźwięku i różnych bloków
sterowania i zdarzeń, istnieją również takie umożliwiające tworzenie zmiennych,
bloki z operatorami numerycznymi i łańcuchowymi, bloki do tworzenia
interakcji (bloki wykrywania). Można też dowolnie konstruować złożone i długie
kody oraz przekształcać je w niestandardowe bloki („Moje bloki”).
Wszystko to, w połączeniu z możliwością modyfikowania lub tworzenia nowych
sprite'ów i tła oraz dodawania, na przykład, nagranych dźwięków, pozwala na