DevPad: krokování programů v prohlížeči

9× zobrazeno vlastní projekt

Krokování: program pod lupou

Tlačítkem Krok (F10) se program vykoná o jeden příkaz a zastaví se. V editoru je zvýrazněný řádek, který přijde na řadu, a panely vpravo ukazují aktuální stav. Stop-značka (F9 nebo klik vedle čísla řádku) zastaví běh na zvoleném místě, Spustit (F5) pustí program naplno až k další značce.

Animace: krokování řazení výběrem, v panelu Pole se posouvá modře zvýrazněný porovnávaný prvek a žluté minimum

Pro výklad u projektoru se hodí zpomalený běh (Alt+F5): program běží sám, ale tak pomalu, že je vidět každý krok. Rychlost jde nastavit od čtyř sekund po desetinu sekundy na krok a z běhu jde kdykoli přejít do krokování a zase zpátky.

Nabídka Spustit: Spustit (F5), Spustit zpomaleně (Alt+F5) a volba zpomalení 4, 2, 1, 0,5, 0,25 a 0,1 sekundy

Proměnné a zásobník volání

Panel Proměnné ukazuje název, hodnotu a typ každé proměnné. Proměnná, která už skončila platnost (třeba řídicí proměnná cyklu po jeho konci), zůstane v panelu šedě s poslední hodnotou, takže žák vidí, s čím cyklus skončil.

U funkcí a rekurze ukazuje panel celý zásobník volání: každé rozběhnuté volání má vlastní skupinu s hodnotami argumentů v záhlaví, hlavní program je nahoře, a právě prováděné volání dole. Na rekurzivním quicksortu je tak vidět, že každé volání má své vlastní zacatek, konec a pivot, a pole přitom zůstává jedno a to samé.

Rekurzivní quicksort: panel Proměnné se skupinami Quicksort(…, 0, 9), Quicksort(…, 0, 7) a Quicksort(…, 0, 2)

Pole, kolekce a objekty

Panel Pole kreslí pole jako tabulku s indexy: jednorozměrné vodorovně nebo svisle, dvourozměrné jako mřížku, u trojrozměrných se vybírá „patro“. Stejně se zobrazí i seznamy (List<T>, list), slovníky jako tabulka klíč–hodnota, množiny, fronty a zásobníky. Seznam objektů se ukáže jako tabulka záznamů: řádek je objekt, sloupce jsou jeho vlastnosti.

Objekty v panelu Proměnné jsou rozbalovací strom, zanořený do libovolné hloubky. Jde ho zkopírovat jako JSON a obsah panelů jako tabulku do Excelu.

Program se seznamem studentů: objekt nejlepsi rozbalený jako strom včetně vnořené adresy, seznam studentů v panelu Pole jako tabulka se sloupci Jmeno, Rocnik, Prumer a Bydliste

Barvy buněk na příkaz programu

Program si může buňky pole sám obarvit: jednu buňku, obdélníkovou oblast, celé pole nebo všechny buňky s danou hodnotou. U řazení je tak hned vidět seřazená část, porovnávaný prvek a dosavadní minimum, u Hry života živé buňky. Příkazy jsou ve všech jazycích stejné, mimo DevPad je program nepotřebuje (v C# je stačí obalit #if DEVPAD).

Animace: Hra života v panelu Pole, živé buňky mřížky 14 × 14 jsou zelené, kluzák letí přes mřížku a blikač kmitá

Příkaz
C# DevPad.SetCellColor(a, i, "Green")
Python devpad.set_cell_color(a, i, "Green")
JavaScript devpad.setCellColor(a, i, "Green")
Pseudokód obarvi(a[i], 'zelená')

Dál SetAreaColor (oblast), SetArrayColor (celé pole) a ColorByValue (podle hodnoty). Barva je jeden ze 16 názvů, #RRGGBB nebo rgb(r, g, b).

// související
// vlastní projekt

Osobní web petrvobornik.cz

Osobní web a online CV postavený na míru v ASP.NET Core (.NET 10) jako náhrada za dosavadní Joomlu – s kompletně převzatým obsahem, novým designem, vlastní administrací na míru a rozhraním pro správu…

21× zobrazeno

Starý web na Joomle ohrozila chyba PHP. O pár dní později běží nový, napsaný na míru v .NET, bez cookie lišty a s administrací, do které teď umí sáhnout i umělá inteligence.

51× zobrazeno

V převážně neveřejném archivu na YouTube se nashromáždilo několik sérií nesestříhaných záznamů přednášek o programování, takže pokud máte zájem, můžete se k nim dostat třeba právě tudy...

4 139× zobrazeno

Série video-tutoriálů o základech programování v jazyce C#. Od nuly pro úplné začátečníky, až po pokročilejší témata a postupy (LINQ, soubory apod.). Vše probíráno v projektech typu konzolová…

4 587× zobrazeno