>> SPEAKER 1: Predpokladajme teraz, že som chcel aby Scratch schopnosť
kýchať rovnako.
No, by moja prvá inštinkt byť, rovnako ako predtým, aby sa
blok, volať toto kýchnutí.
Určite, ktoré by som chcel upresniť s číslom, koľkokrát
Scratch by kýchanie.
Potom kliknutím na tlačidlo OK.
Dovoľte mi, aby som presunúť na správnu , Aby som si trochu viac priestoru.
>> A potom nech mi znovu ísť do Opakovať, prepíše predvolenú 10 s n
Nechaj ma ísť do výkazu povedzme a povedať nie "ahoj", ale
"Achomsa" na jednu sekundu.
Potom sa na chvíľku oddych.
A to je všetko.
>> Teraz mám blok s názvom kýchnutie, rovnako ako blok s názvom kašeľ.
Takže teraz, keď chcem Stieracie kašeľ a kýchnutí, môžem jednoducho zadať
kýchanie pod jeho kašeľ.
Trikrát, hovoria.
Kliknite na zelenú vlajkou, a ja som mal pozri naozaj, kašeľ, kašeľ, kašeľ.
Nasledoval Achomsa, Achomsa, Achomsa.
Moja najviac realistické kýcha k dnešnému dňu.
>> Teraz Všimnite si niečo, čo je zlé o tomto návrhu.
Aj keď nie úplne Duplikovať žiadne skladačky, som
rozhodne pretiahnuť dosť Takmer to isté skladačky, poskytujúce
jedna funkcia len nepatrne iný názov než ostatní, kýchnutie
proti kašľu.
Tak toto je príležitosť pre factoring z nejakého spoločného kódu.
Ostatne, všimnite si jediný rozdiel medzi kašeľ a kýchanie je, že jeden
má Scratch hovoriť "kašle", z toho ostatní hovoria "Achomsa."
>> Takže by sme nemohli nejako zovšeobecniť kód tak, že sa jednoducho
určiť, aké slovo chceme Scratch zostať?
A v závislosti na dané slovo, že bude účinne sa kašeľ alebo
to bude kýchnutí.
Tak poďme do toho a to.
Poďme urobiť tretiu funkciu a volanie tento, "povedal." a chcem ho
prijímať, nie len čísla, ale tentoraz reťazec, inak známy ako
slovo alebo frázu.
>> And we'll call this "word."
A koľkokrát mám chcem povedať toto slovo?
Tak poďme zadať číslo, znova volá n
A len preto, aby tento blok viac čitateľný, nechaj ma ísť napred a pridať
Štítok s názvom "časy." Takže keď ste prečítajte si tento blok zľava doprava, je
doslova hovorí "hovorí slovo n-krát."
>> Teraz ma nechaj ísť dopredu a potom kliknite na tlačidlo OK.
A teraz mi dovoľte vykonanie tohto bloku, opäť pomocou opakovania bloku.
Určenie, že chcem to opakovať n krát.
Určenie, že chcem povedať, niečo na jednu sekundu.
Ale skôr ako niečo, pevný kódované do tejto funkcie, poďme miesto drag
a pokles slovo, ktoré je boli odovzdané palcov
Poďme sa teda čakať na jednu sekundu.
Tak teraz mi dovoľte vrátiť sa a vylepšiť môj implementácia kašeľ a kýchanie,
takým spôsobom, že tieto dve funkcie volanie tejto tretej funkciu, a tým
minimalizáciu množstva o duplicitné kód.
Takže poďme sa doslova hodiť Tento kód preč.
Poďme hodiť tento kód preč.
A tentoraz, poďme jednoducho určiť, že kašeľ by malo byť vykonané
hovorí "kašeľ" nejaké číslo n koľkokrát.
>> A podobne, môžeme sa vrátiť a znovu zaviesť kýchnutí tak, aby používala
povedať, s argumentom z "mesta Akko" n-krát.
Takže to, čo sme urobili?
Sme rozpoznalo kód, ktorý bol spoločné pre oba naše kašeľ a naše
kýchanie funkcie, zapracované ju do nová tretiu funkciu, a potom
prepísaná kašeľ a kýchanie v takej tak, že hovoria, že
Tretia a nové funkcie.
>> Teraz sme úplne z tohto celku Program zložitejšie, než to
skutočne musí byť.
Koniec koncov, na konci dňa, sa stačí Scratch kašľať trikrát
a kýchanie trikrát.
A tak by sme mohli urobiť, aby sa len pár dielikov skladačky.
Ale ako naše programy sa oveľa viac zložité, a naše programy viac
sofistikované, táto technika vytknutie spoločný kód, alebo
hierarchickej rozkladajúce program na menšie funkcie, z ktorých každá
volať ďalšie funkcie, je veľmi presvedčivé techniky.
Vzhľadom k tomu, že sa zabezpečí, že váš kód, aj keď to bude zložitejšie, zvyšky
ľahko aktualizovať a tiež veľmi čitateľný.
>> V skutočnosti, za konečný výsledok.
Keď je zelená vlajka klikli, kašeľ trikrát, kýchanie trikrát.
A to je všetko.
V skutočnosti, poďme robiť presne to.
Kliknite na zelenú vlajkou a dostaneme jednu kašeľ, kašeľ dve, tri kašľa.
Nasledoval, dúfame, že raz kýchnuť, dve kýcha, a tretí kýchnutí.
Dúfam, že to bude lepšie čoskoro.