Skoro już wiesz, jak dostać się do Verse za pomocą UEFN, to w dalszej kolejności musisz upewnić się, że dobrze rozumiesz podstawowe pojęcia związane z programowaniem.
Tę lekcję zaczynamy od naprawdę podstawowych rzeczy. Nawet jeśli znasz już te terminy, warto poświęcić chwilę na zapoznanie się z nimi tutaj. Czasami późniejsze lekcje nawiązują do wcześniejszych, więc dobrze jest mieć kontekst i zachować ciągłość pomiędzy kolejnymi lekcjami.
Co to jest program
Program to zestaw instrukcji, które mówią komputerowi, jak coś zrobić. Program informuje komputer, jak odbierać dane wejściowe (informacje przychodzące) i zwracać dane wyjściowe (informacje wychodzące).
Verse
Verse to język programowania stworzony z myślą o grach wideo oraz symulacjach. Dzięki temu doskonale spełnia specyficzne potrzeby związane z grami.
Co robią programy Verse
Program Verse rozwiązuje problemy.
Jednak komputery są bardzo dosłowne. Przypomina to zawieranie umowy z dżinem: dostajesz dokładnie to, o co poprosisz. Dokładnie.
Błędy zdarzają się, gdy programista zakłada, co się stanie, zamiast podać dokładne instrukcje.
Kompilowanie
Programy są pisane tak, aby mogli je zrozumieć ludzie. Jednak komputer potrzebuje, aby ten program został przetłumaczony na coś, co zrozumie komputer.
Robi się to za pomocą kompilatora, który konwertuje lub kompiluje program z języka zrozumiałego dla człowieka na język maszynowy.
Algorytmy
Algorytm to zestaw instrukcji napisanych w celu rozwiązania problemu lub wykonania zadania. Można go sobie wyobrazić jako model tego, jak program powinien działać.
Pora nakarmić kota? Algorytm karmienia kota mógłby wyglądać następująco:
- Weź z półki puszkę karmy dla kota.
- Weź kocią miskę i postaw ją na blacie.
- Połóż łyżkę obok miski.
- Otwórz puszkę karmy dla kota.
- Łyżką przełóż karmę do kociej miski.
- Postaw miskę w miejscu dostępnym dla kota.
- Odczekaj 12 godzin, a następnie powtórz czynność.
Wykonanie któregokolwiek z tych kroków poza kolejnością może spowodować, że kot nie zostanie nakarmiony. Wykonane w kolejności, pozwalają uzyskać efekt w postaci szczęśliwego, najedzonego kota.

Kot został nakarmiony!
Algorytm, który się powtarza, nazywa się pętlą.
Kot jest karmiony codziennie dwa razy. Proces ten odbywa się w pętli i będzie trwał, dopóki coś go nie przerwie. Jeśli proces zakończy się niepowodzeniem, kot wygeneruje raport – głośny, dźwiękowy raport.
W trybie kreatywnym Fortnite, gdy tworzysz mechanikę gry za pomocą urządzeń, konfigurujesz algorytmy. W jaki sposób gracz może osiągnąć cel gry? Które urządzenie posunie rozgrywkę naprzód? Jakie urządzenie ją zablokuje? Co się stanie, jeśli zostanie użyte niewłaściwe urządzenie lub urządzenia zostaną użyte w niewłaściwej kolejności?
Programowanie w języku Verse to świetny sposób na stworzenie mechaniki gry poprzez konwersję algorytmów na instrukcje zrozumiałe dla komputera. Gdy już „opanujesz słowa tej piosenki”, melodia będzie szybka i przyjemna – i będziesz mieć szansę na stworzenie mechaniki, która nie jest dostępna w trybie kreatywnym Fortnite!
Testowanie algorytmu
Może herbatki? Przyjrzyjmy się, jak algorytm działa w prawdziwym życiu.
- Napisz algorytm przygotowywania pysznej kawy lub herbaty.
- Postępuj dokładnie według swojego algorytmu w celu przygotowania napoju.
- Czy po zaparzeniu i spróbowaniu herbaty okazało się, że jest dobra?
- Jeśli tak, to algorytm jest gotowy.
- W przeciwnym razie przeprowadź debugowanie, aby dowiedzieć się, który krok został pominięty lub wykonany nieprawidłowo, a następnie
- Przeprowadź iterację, powtarzaj z jedną lub kilkoma zmianami tak długo, aż uzyskasz idealną filiżankę.

Kod źródłowy i kod maszynowy
Kod źródłowy, w skrócie kod, to program napisany przez programistę. Nazywa się go kodem źródłowym, ponieważ jest to wersja programu w takiej postaci, w jakiej została napisana – jest to źródło programu. Kod maszynowy jest tym, co otrzymujesz po skompilowaniu programu do postaci zrozumiałej dla komputera.
Pojęcia kod i program są używane zamiennie, a programiści są czasami nazywani koderami.
Wykonanie
Kiedy komputer wykonuje czynności zawarte w programie, to uruchamia lub wykonuje ten program. Jeśli kod nie zostanie wykonany zgodnie z oczekiwaniami lub nie uda się go skompilować, może to oznaczać, że w kodzie występują błędy.
Błędy w kodzie
Błędy w kodzie mogą pojawić się na dwa sposoby:
- Błędy kompilatora – gdy kod nie kompiluje się do języka zrozumiałego dla komputera.
- Bugi – gdy kod został pomyślnie skompilowany, ale program nie działa zgodnie z oczekiwaniami.
Błędy kompilatora
Najczęstszą przyczyną błędów kompilatora jest nieprawidłowa składnia (bugi omówimy nieco później). Każdy język programowania podlega precyzyjnemu zestawowi reguł zwanych składnią (reguły te mogą się różnić w zależności od programu, ale w tych lekcjach skupimy się na składni Verse).
Składnia to sposób, w jaki łączone są słowa i symbole, aby kompilator mógł zrozumieć i skompilować instrukcje programisty.
Składnia dotyczy słów i symboli, których możesz użyć w kodzie, oraz tego, jak muszą być one ułożone, aby kompilator mógł pomyślnie skompilować kod.
W języku angielskim standardową składnią jest podmiot (rzeczownik) | orzeczenie – na początku podmiot, po którym następuje orzeczenie. Zdanie „Kitty sleeps” (Kociak śpi) jest zgodne z regułami składni. Jednak jeśli powiesz „Sleeps kitty” (Śpi kociak), osoba anglojęzyczna mogłaby się zastanawiać, o czym mówisz. Jest to tym bardziej prawdziwe w przypadku programowania. Pamiętasz umowę z dżinem, o której wspominaliśmy na początku tej lekcji?

Pamiętasz umowę z dżinem?
Kod Verse rozróżnia wielkość liter. Oznacza to, że jeśli coś powinno być zapisane wielkimi literami, a nie jest, lub jeśli nie powinno być zapisane wielkimi literami, a jest, Verse potraktuje to jako błąd w składni i kod się nie skompiluje. Istotne jest również używanie spacji w sposób przedstawiony w składni.
| Wyrażenie z prawidłową składnią | To samo wyrażenie z nieprawidłową składnią |
|---|---|
Print("Witaj, świecie!") |
Print("Witaj, świecie!" |
W drugim przykładzie występuje błąd kompilatora, ponieważ brakuje w nim nawiasu zamykającego ).
Błędy w składni są błędami kompilatora, ponieważ uniemożliwiają pomyślną kompilację kodu.
Bugi
Bugi zdarzają się, gdy program jest wykonywany, ale robi coś dziwnego lub nieoczekiwanego.
Podczas gdy składnia dotyczy słów i symboli oraz sposobu ich ułożenia, semantyka dotyczy tego, co te linie kodu tak naprawdę znaczą.
Na przykład w języku angielskim podstawowe zdanie składa się z podmiotu i orzeczenia. Podmiot to ktoś lub coś, a orzeczenie to akcja, którą podmiot (rzeczownik) wykonuje.
Podmiot (rzeczownik) | orzeczenie (składnia) nie przekazuje znaczenia Kitty sleeps (semantyka).
A błąd w znaczeniu kodu może skutkować bugiem.
| Poprawne wyrażenie | To samo wyrażenie z bugiem |
|---|---|
|
|
W drugim przykładzie jest bug, ponieważ wartość MiceCaught musi być większa niż 1, aby wyrażenie Print("Wygrywasz!") zostało wykonane.
Możesz też spojrzeć na to pod kątem tego, co dzieje się podczas wykonywania programu. Czy wynik jest zgodny z oczekiwaniami? A może coś poszło nie tak?
W powyższym przykładzie po prawej stronie gracz nie wygrywa, gdy złapie mysz, ponieważ zgodnie z kodem trzeba złapać więcej niż jedną mysz, aby wygrać. Jeśli do złapania jest tylko jedna mysz, nigdy nie zostanie spełniony warunek zwycięstwa. Mimo że program skompilowałby się poprawnie, rezultat nie byłby zgodny z twoimi oczekiwaniami (lub oczekiwaniami gracza).
Podsumowanie
- Program informuje komputer, jak coś zrobić, określając, w jaki sposób może on przekazywać informacje wejściowe i wyjściowe.
- Komputer jest bardzo dosłowny i zrobi dokładnie to, co mu każesz – nawet jeśli przekazana instrukcja będzie niewłaściwa.
- Program musi zostać skompilowany z języka ludzkiego na język komputerowy.
- Algorytm to rodzaj modelu, który pokazuje, jak powinien działać program.
- Kod źródłowy jest tym, co mogą odczytać i napisać ludzie. Kod maszynowy jest tym, co mogą zrozumieć i wykonać komputery.
- Semantyka to znaczenie kodu.
- Składnia to zestaw reguł pisania kodu.
- Błędy kompilatora to błędy, które uniemożliwiają kompilację programu.
- Bugi zdarzają się, gdy kod kompiluje się pomyślnie, ale program nie działa zgodnie z oczekiwaniami.