Return to Video

Funkce

  • 0:01 - 0:05
    V tomto průvodci se podíváme na něco,
    co už dávno používate.
  • 0:05 - 0:06
    Jsou to funkce.
  • 0:06 - 0:09
    Kdykoli, když používáte
    příkazy jako "rect", "fill" nebo "text",
  • 0:10 - 0:11
    voláte funkce.
  • 0:11 - 0:14
    A tyto funkce nakreslí,
    co jim řeknete.
  • 0:15 - 0:16
    A co to vlastně funkce je?
  • 0:16 - 0:20
    Je to kus kódu, který jsme dali
    dohromady a nějak jsme ho pojmenovali.
  • 0:20 - 0:23
    A tuto funkci můžeme
    opakovaně používat.
  • 0:24 - 0:25
    Vezměte si třeba "rect".
  • 0:25 - 0:26
    Co vlastně "rect" dělá?
  • 0:26 - 0:28
    Jednoduše nakreslí
    čtyři čáry.
  • 0:29 - 0:31
    To samé bychom
    zvládli udělat i pomocí funkce "line".
  • 0:31 - 0:34
    Vidíme, že třeba pomocí 4 takových funkcí
    vykreslíme obdélník.
  • 0:34 - 0:39
    Je ale pravda,
    že obdélník budeme kreslit docela často.
  • 0:39 - 0:45
    A počítat pokaždé nakreslení
    všech čtyř čar, to je celkem otrava.
  • 0:45 - 0:48
    Namísto toho
    tedy máme funkci "rect".
  • 0:48 - 0:52
    A ta dělá to samé,
    jako tyto čtyři řádky kódu.
  • 0:52 - 0:54
    Ale za použití
    méně kódu!
  • 0:55 - 1:02
    Funkce "rect" je funkcí dostupnou
    ve všech programech na Khan Academy.
  • 1:03 - 1:05
    Můžete si ale udělat
    i své vlastní funkce,
  • 1:05 - 1:07
    které pak můžete
    používat ve svých programech.
  • 1:08 - 1:08
    Dám vám příklad.
  • 1:09 - 1:14
    Řekněme, že chceme program,
    který bude opakovaně kreslit Winstona.
  • 1:14 - 1:17
    Třeba bychom chtěli vyprávět
    Winstonův životní příběh
  • 1:17 - 1:19
    A chtěli bychom ukázat
    každou etapu jeho života.
  • 1:21 - 1:23
    Takhle by mohl vypadat
    počáteční Winstonův kód.
  • 1:24 - 1:27
    Máme zde proměnné
    faceX a faceY.
  • 1:27 - 1:32
    Ty označují střed obličeje, vůči
    kterému se vykreslí oči a ústa.
  • 1:33 - 1:36
    V této chvíli program
    vidí kód bez jakékoli funkce.
  • 1:37 - 1:40
    Program tedy kód spustí,
    ale pouze jednou.
  • 1:41 - 1:43
    Zkusíme z toho teď
    udělat funkci.
  • 1:43 - 1:48
    Princip je velmi podobný tomu,
    jak se definují proměnné.
  • 1:48 - 1:49
    Už to vlastně skoro umíme.
  • 1:49 - 1:52
    Napíšeme tedy
    "var drawWinston".
  • 1:52 - 1:54
    Tedy název bude "nakresli Winstona"
  • 1:54 - 1:56
    A pak napíšeme rovná se.
  • 1:56 - 2:06
    Ale tady namísto čísla nebo řetězce
    napíšeme "function" a "prázdné závorky".
  • 2:06 - 2:11
    Pak napíšeme otevřenou složenou závorku,
    zavřenou složenou závorku a středník.
  • 2:12 - 2:17
    Teď musíme vložit všechno,
    co chceme ve funkci mít,
  • 2:17 - 2:19
    mezi složené závorky.
  • 2:19 - 2:24
    Čili vezmeme tento kód
    a vložíme ho do naší funkce.
  • 2:24 - 2:27
    Pěkně to ještě odsadíme.
  • 2:27 - 2:30
    Takže teď tady máme proměnnou,
    která obsahuje naši funkci.
  • 2:30 - 2:34
    V podstatě jsme tento shluk
    kódu označili proto,
  • 2:34 - 2:40
    abychom ho později
    během programu mohli přivolat.
  • 2:41 - 2:43
    Upravili jsme si to, abychom tento kód
    mohli opakovaně používat.
  • 2:44 - 2:46
    Ale teď si všimněte, že
    nám zmizel Winston!
  • 2:46 - 2:48
    Ztratili jsme ho.
  • 2:50 - 2:51
    Stalo se to,
  • 2:51 - 2:54
    že při vložení kódu do funkce
    jsme našemu programu řekli:
  • 2:54 - 3:00
    "Tady máš nějaký kód k přivolání,
    ale jenom když ti to řeknu."
  • 3:01 - 3:04
    Musíme tedy programu
    říct, aby kód spustil.
  • 3:04 - 3:07
    A to znamená, že
    musíme přivolat funkci.
  • 3:07 - 3:09
    Úplně stejně jako
    s elipsami, čárami a obdélníky.
  • 3:09 - 3:13
    Napíšeme název funkce
    "drawWinston".
  • 3:14 - 3:16
    Doplníme závorky.
  • 3:16 - 3:18
    A samozřejmě středník.
  • 3:19 - 3:21
    A máme Winstona!
  • 3:22 - 3:23
    Mně se to dost líbí!
  • 3:23 - 3:28
    Vám asi úplně ne, protože náš
    program dělá to samé, co předtím.
  • 3:29 - 3:30
    Ale v čem je to teď lepší?
  • 3:30 - 3:33
    Smysl funkcí je ten,
    že je můžeme použít opakovaně.
  • 3:34 - 3:34
    Tak pojďme na to.
  • 3:34 - 3:37
    Jednoduše zkopírujeme
    a vložíme přivolání funkce.
  • 3:38 - 3:41
    Znovu a ještě jednou.
  • 3:42 - 3:44
    No, ale to pořád vypadá stejně.
  • 3:45 - 3:48
    Funguje to, kreslí to
    několik Winstonů.
  • 3:48 - 3:51
    Problémem je, že jsou
    všichni na tom samém místě.
  • 3:51 - 3:53
    Kdybychom měli rentgen,
  • 3:53 - 3:56
    ozářili bychom plátno
    a viděli bychom tři Winstony.
  • 3:56 - 3:59
    Nevím jak vy, ale já
    rentgen nemám.
  • 4:00 - 4:03
    Můžeme ale naši funkci
    trochu upravit.
  • 4:03 - 4:05
    A pak už to vidět bude.
  • 4:05 - 4:09
    Jak vidíte, faceX a faceY
    jsou vždy 202 a 208.
  • 4:09 - 4:12
    To můžeme změnit
    použitím funkce "random".
  • 4:12 - 4:15
    Určíme náhodná čísla
    od 50 do 350.
  • 4:15 - 4:17
    Vygeneruje mi to náhodná
    čísla v tomto rozmezí.
  • 4:17 - 4:18
    Tady uděláme to samé.
  • 4:19 - 4:23
    Takže při každém přivolání
    funkce se generují náhodná čísla.
  • 4:23 - 4:28
    Při opětovném spuštění
    dostaneme náhodné Winstony.
  • 4:30 - 4:31
    Podle mě je to skvělý,
  • 4:31 - 4:35
    protože bez funkce
    bychom museli napsat hromadu kódu.
  • 4:35 - 4:37
    Museli bychom napsat
    třikrát tolik kódu.
  • 4:38 - 4:41
    Pořád to ale není tak
    praktické, jak by to mohlo být.
  • 4:41 - 4:43
    My totiž nechceme
    náhodné Winstony,
  • 4:43 - 4:47
    ale Winstony na
    specifické pozici.
  • 4:47 - 4:48
    Takže se těšte na příště,
  • 4:48 - 4:52
    protože se naučíme něco o tom,
    jak naší funkci předávat parametry.
Title:
Funkce
Description:

Pamela vysvětluje, jak můžete vytvořit své vlastní funkce, které seskupí váš kód a učiní jej opakovaně použitelným.

more » « less
Video Language:
Turkish
Duration:
04:56

Czech subtitles

Revisions