1 00:00:00,000 --> 00:00:00,280 2 00:00:00,280 --> 00:00:02,970 >> SPEAKER 1: Predpokladajme teraz, že som chcel aby Scratch schopnosť 3 00:00:02,970 --> 00:00:05,080 kýchať rovnako. 4 00:00:05,080 --> 00:00:07,710 No, by moja prvá inštinkt byť, rovnako ako predtým, aby sa 5 00:00:07,710 --> 00:00:10,070 blok, volať toto kýchnutí. 6 00:00:10,070 --> 00:00:14,110 Určite, ktoré by som chcel upresniť s číslom, koľkokrát 7 00:00:14,110 --> 00:00:15,800 Scratch by kýchanie. 8 00:00:15,800 --> 00:00:17,540 Potom kliknutím na tlačidlo OK. 9 00:00:17,540 --> 00:00:20,370 Dovoľte mi, aby som presunúť na správnu , Aby som si trochu viac priestoru. 10 00:00:20,370 --> 00:00:26,070 >> A potom nech mi znovu ísť do Opakovať, prepíše predvolenú 10 s n 11 00:00:26,070 --> 00:00:29,610 Nechaj ma ísť do výkazu povedzme a povedať nie "ahoj", ale 12 00:00:29,610 --> 00:00:32,350 "Achomsa" na jednu sekundu. 13 00:00:32,350 --> 00:00:35,180 Potom sa na chvíľku oddych. 14 00:00:35,180 --> 00:00:36,040 A to je všetko. 15 00:00:36,040 --> 00:00:39,220 >> Teraz mám blok s názvom kýchnutie, rovnako ako blok s názvom kašeľ. 16 00:00:39,220 --> 00:00:46,550 Takže teraz, keď chcem Stieracie kašeľ a kýchnutí, môžem jednoducho zadať 17 00:00:46,550 --> 00:00:48,580 kýchanie pod jeho kašeľ. 18 00:00:48,580 --> 00:00:49,930 Trikrát, hovoria. 19 00:00:49,930 --> 00:00:55,560 Kliknite na zelenú vlajkou, a ja som mal pozri naozaj, kašeľ, kašeľ, kašeľ. 20 00:00:55,560 --> 00:01:01,880 Nasledoval Achomsa, Achomsa, Achomsa. 21 00:01:01,880 --> 00:01:04,180 Moja najviac realistické kýcha k dnešnému dňu. 22 00:01:04,180 --> 00:01:09,240 >> Teraz Všimnite si niečo, čo je zlé o tomto návrhu. 23 00:01:09,240 --> 00:01:11,930 Aj keď nie úplne Duplikovať žiadne skladačky, som 24 00:01:11,930 --> 00:01:15,020 rozhodne pretiahnuť dosť Takmer to isté skladačky, poskytujúce 25 00:01:15,020 --> 00:01:18,660 jedna funkcia len nepatrne iný názov než ostatní, kýchnutie 26 00:01:18,660 --> 00:01:19,640 proti kašľu. 27 00:01:19,640 --> 00:01:23,410 Tak toto je príležitosť pre factoring z nejakého spoločného kódu. 28 00:01:23,410 --> 00:01:27,020 Ostatne, všimnite si jediný rozdiel medzi kašeľ a kýchanie je, že jeden 29 00:01:27,020 --> 00:01:30,710 má Scratch hovoriť "kašle", z toho ostatní hovoria "Achomsa." 30 00:01:30,710 --> 00:01:35,010 >> Takže by sme nemohli nejako zovšeobecniť kód tak, že sa jednoducho 31 00:01:35,010 --> 00:01:37,990 určiť, aké slovo chceme Scratch zostať? 32 00:01:37,990 --> 00:01:41,170 A v závislosti na dané slovo, že bude účinne sa kašeľ alebo 33 00:01:41,170 --> 00:01:42,370 to bude kýchnutí. 34 00:01:42,370 --> 00:01:43,580 Tak poďme do toho a to. 35 00:01:43,580 --> 00:01:49,500 Poďme urobiť tretiu funkciu a volanie tento, "povedal." a chcem ho 36 00:01:49,500 --> 00:01:53,360 prijímať, nie len čísla, ale tentoraz reťazec, inak známy ako 37 00:01:53,360 --> 00:01:54,980 slovo alebo frázu. 38 00:01:54,980 --> 00:01:57,500 >> And we'll call this "word." 39 00:01:57,500 --> 00:01:59,500 A koľkokrát mám chcem povedať toto slovo? 40 00:01:59,500 --> 00:02:02,680 Tak poďme zadať číslo, znova volá n 41 00:02:02,680 --> 00:02:05,540 A len preto, aby tento blok viac čitateľný, nechaj ma ísť napred a pridať 42 00:02:05,540 --> 00:02:11,000 Štítok s názvom "časy." Takže keď ste prečítajte si tento blok zľava doprava, je 43 00:02:11,000 --> 00:02:14,380 doslova hovorí "hovorí slovo n-krát." 44 00:02:14,380 --> 00:02:15,760 >> Teraz ma nechaj ísť dopredu a potom kliknite na tlačidlo OK. 45 00:02:15,760 --> 00:02:18,320 46 00:02:18,320 --> 00:02:22,750 A teraz mi dovoľte vykonanie tohto bloku, opäť pomocou opakovania bloku. 47 00:02:22,750 --> 00:02:25,680 Určenie, že chcem to opakovať n krát. 48 00:02:25,680 --> 00:02:29,480 Určenie, že chcem povedať, niečo na jednu sekundu. 49 00:02:29,480 --> 00:02:33,750 Ale skôr ako niečo, pevný kódované do tejto funkcie, poďme miesto drag 50 00:02:33,750 --> 00:02:36,450 a pokles slovo, ktoré je boli odovzdané palcov 51 00:02:36,450 --> 00:02:38,790 Poďme sa teda čakať na jednu sekundu. 59 00:02:39,297 --> 00:02:43,387 Tak teraz mi dovoľte vrátiť sa a vylepšiť môj implementácia kašeľ a kýchanie, 60 00:02:43,387 --> 00:02:47,367 takým spôsobom, že tieto dve funkcie volanie tejto tretej funkciu, a tým 61 00:02:47,367 --> 00:02:49,627 minimalizáciu množstva o duplicitné kód. 62 00:02:49,627 --> 00:02:52,237 Takže poďme sa doslova hodiť Tento kód preč. 63 00:02:52,237 --> 00:02:54,037 Poďme hodiť tento kód preč. 64 00:02:54,037 --> 00:02:57,707 A tentoraz, poďme jednoducho určiť, že kašeľ by malo byť vykonané 65 00:02:57,707 --> 00:03:02,607 hovorí "kašeľ" nejaké číslo n koľkokrát. 66 00:03:02,607 --> 00:03:06,987 >> A podobne, môžeme sa vrátiť a znovu zaviesť kýchnutí tak, aby používala 67 00:03:06,987 --> 00:03:13,577 povedať, s argumentom z "mesta Akko" n-krát. 68 00:03:13,577 --> 00:03:14,687 Takže to, čo sme urobili? 69 00:03:14,687 --> 00:03:18,417 Sme rozpoznalo kód, ktorý bol spoločné pre oba naše kašeľ a naše 70 00:03:18,417 --> 00:03:22,127 kýchanie funkcie, zapracované ju do nová tretiu funkciu, a potom 71 00:03:22,127 --> 00:03:25,377 prepísaná kašeľ a kýchanie v takej tak, že hovoria, že 72 00:03:25,377 --> 00:03:27,177 Tretia a nové funkcie. 73 00:03:27,177 --> 00:03:30,297 >> Teraz sme úplne z tohto celku Program zložitejšie, než to 74 00:03:30,297 --> 00:03:31,377 skutočne musí byť. 75 00:03:31,377 --> 00:03:34,307 Koniec koncov, na konci dňa, sa stačí Scratch kašľať trikrát 76 00:03:34,307 --> 00:03:35,587 a kýchanie trikrát. 77 00:03:35,587 --> 00:03:38,007 A tak by sme mohli urobiť, aby sa len pár dielikov skladačky. 78 00:03:38,007 --> 00:03:41,197 Ale ako naše programy sa oveľa viac zložité, a naše programy viac 79 00:03:41,197 --> 00:03:45,257 sofistikované, táto technika vytknutie spoločný kód, alebo 80 00:03:45,257 --> 00:03:49,007 hierarchickej rozkladajúce program na menšie funkcie, z ktorých každá 81 00:03:49,007 --> 00:03:51,846 volať ďalšie funkcie, je veľmi presvedčivé techniky. 82 00:03:51,846 --> 00:03:55,627 Vzhľadom k tomu, že sa zabezpečí, že váš kód, aj keď to bude zložitejšie, zvyšky 83 00:03:55,627 --> 00:03:58,087 ľahko aktualizovať a tiež veľmi čitateľný. 84 00:03:58,087 --> 00:03:59,627 >> V skutočnosti, za konečný výsledok. 85 00:03:59,627 --> 00:04:03,917 Keď je zelená vlajka klikli, kašeľ trikrát, kýchanie trikrát. 86 00:04:03,917 --> 00:04:05,007 A to je všetko. 87 00:04:05,007 --> 00:04:07,007 V skutočnosti, poďme robiť presne to. 88 00:04:07,007 --> 00:04:12,187 Kliknite na zelenú vlajkou a dostaneme jednu kašeľ, kašeľ dve, tri kašľa. 89 00:04:12,187 --> 00:04:18,607 Nasledoval, dúfame, že raz kýchnuť, dve kýcha, a tretí kýchnutí. 90 00:04:18,607 --> 00:04:19,857 Dúfam, že to bude lepšie čoskoro. 91 00:04:19,857 --> 00:04:20,892