Дялове

Подреди кода с функции

Ниво 3 · Урок 11 · Програмиране с MakeCode (micro:bit)

Повтарящ се код в програмата на micro:bit се събира в една функция - същата програма, но подредена и по-къса.

Подреди кода с функции
Част AВъведение

Какво ще направим?

Когато една и съща група блокове се повтаря, кодът става дълъг и объркан. Финалният урок е за подреждане: изнасяме повторенията във функции и кодът става чист и лесен за четене.
Дай на класа минута да предположи как ще стане, преди да продължиш. Целта е да измислят стъпките сами.
Част AАналогия от живота

Подредено чекмедже

Разбъркано чекмедже работи, но търсиш дълго. Подреденото има същите неща, но всяко на място. Рефакторирането подрежда кода - прави същото, но чисто.
Аналогията прави абстрактното конкретно - задръж на нея, докато класът я схване.
Част BКак мисли програмата

Как работи?

алгоритъм
Разгледай схемата: редът на блоковете е важен - програмата тръгва отгоре надолу.
Добрият код не е само работещ - той е и подреден . Когато виждаш едно и също нещо на няколко места, това е знак да го изнесеш във функция . По-кратко : пишеш веднъж, ползваш навсякъде. По-ясно : името на функцията казва какво прави. По-лесно за промяна : сменяш на едно място, важи навсякъде. Това пренареждане, без да сменяш какво прави програмата, се казва рефакториране .
Част CСтроим програмата блок по блок - не я преписваме наготово

Кодът стъпка по стъпка

блокове
 
Всяка стъпка добавя по едно нещо и казва защо. Пускай програмата СЛЕД всяка стъпка - детето вижда промяната, вместо да я приема наготово.
Част DЖив симулатор на MakeCode - програмата работи наистина

Пробвай на живо

Пусни симулатора на дъската и покани деца да натискат бутоните. Свържи видяното с кода от предишния дял.
Част EЦъкни отговор - зелено вярно, червено грешно

Въпрос 1 от 2

Какво е рефакториране?

  • Подреждане на кода без да сменяш какво прави
  • Изтриване на код
  • Забавяне
  • Нова програма
 
Дай време за мислене. Цъкането оцветява избора; „Покажи верния" показва отговора на дъската.
Част EЦъкни отговор - зелено вярно, червено грешно

Въпрос 2 от 2

Кога изнасяме код във функция?

  • Когато се повтаря на няколко места
  • Никога
  • Само веднъж
  • При грешка
 
Дай време за мислене. Цъкането оцветява избора; „Покажи верния" показва отговора на дъската.
Част FГотови решения нарочно няма - търси, греши и пробвай пак

Твой ред да твориш

  • Добави още блок в „успех“ - появява се и на двете места наведнъж.
  • ★★ Направи и функция за провал и я викай при разклащане.
  • ★★★ Изнеси повтарящ се код от твоя стар проект във функция.
измисли свое Погледни своя предишен проект - има ли повторения? Изнеси ги във функции и виж колко по-чист става.
Насърчи промяна и разширяване, не копиране. Звездите са трудност, а „измисли свое" е поканата да излязат извън урока.
За учителяОрганизация на часа

Честа грешка

Промяна на едно място не важи на другото Кодът е копиран на две места, вместо да е в обща функция.

✓ Изнеси във функция Сложи повтарящия се код в една функция и я извикай на двете места. Промениш ли я, важи навсякъде.

Речник

Рефакториране - Подреждане на кода, без да сменяш какво прави.

Повторение - Един и същ код на няколко места - знак за функция.

Как върви часът

1. Идея. Класът предполага как ще стане, преди да види кода.

2. Кодът - по един блок. Пускай след всяка стъпка.

3. На живо. Симулаторът свързва кода с резултата.

4. Твой ред. Задачите нямат готови решения - нарочно.

Откъде е урокът: курс „Програмиране с MakeCode" (micro:bit) на stemprojects.eu. Блоковете са наши, на български; програмата се СТРОИ стъпка по стъпка, не се преписва наготово.