1 00:00:00,000 --> 00:00:00,280 2 00:00:00,280 --> 00:00:02,970 >> SPEAKER 1: Tegyük fel, hogy én akartam, hogy Scratch a képességet 3 00:00:02,970 --> 00:00:05,080 tüsszentés is. 4 00:00:05,080 --> 00:00:07,710 Nos, az első ösztönei lesz, mint korábban, hogy a 5 00:00:07,710 --> 00:00:10,070 blokk, hívja ezt a tüsszentés. 6 00:00:10,070 --> 00:00:14,110 Megadhatja, hogy szeretnék megadni számos hányszor 7 00:00:14,110 --> 00:00:15,800 Scratch kell tüsszentés. 8 00:00:15,800 --> 00:00:17,540 Ezt követően az OK gombra kattintva. 9 00:00:17,540 --> 00:00:20,370 Hadd mozgatni ezt át a megfelelő hogy magamnak még egy kis szoba. 10 00:00:20,370 --> 00:00:26,070 >> És akkor hadd ismét menjen Ismétlés, felülírva az alapértelmezett 10-n. 11 00:00:26,070 --> 00:00:29,610 Hadd menjen a mondjuk védelme és azt mondják, nem a "hello", hanem 12 00:00:29,610 --> 00:00:32,350 "Achoo" egy pillanatra. 13 00:00:32,350 --> 00:00:35,180 Akkor egy pillanatra a pihenést. 14 00:00:35,180 --> 00:00:36,040 És ennyi. 15 00:00:36,040 --> 00:00:39,220 >> Most már van egy blokk nevű tüsszentés, valamint egy blokk úgynevezett köhögés. 16 00:00:39,220 --> 00:00:46,550 Tehát most, ha azt akarom, Scratch köhögni és a tüsszentés, én egyszerűen adja meg a 17 00:00:46,550 --> 00:00:48,580 tüsszentés alatt a köhögés. 18 00:00:48,580 --> 00:00:49,930 Háromszor, mondjuk. 19 00:00:49,930 --> 00:00:55,560 Kattintson a zöld zászlót, és én lásd sőt, köhögés, köhögés, köhögés. 20 00:00:55,560 --> 00:01:01,880 Majd achoo, achoo, achoo. 21 00:01:01,880 --> 00:01:04,180 A legreálisabb tüsszent a mai napig. 22 00:01:04,180 --> 00:01:09,240 >> Most, észre valamit, ami rosszul ez a design. 23 00:01:09,240 --> 00:01:11,930 Annak ellenére, hogy nem egyenesen ismétlődő minden puzzle darab, azt 24 00:01:11,930 --> 00:01:15,020 határozottan húzni elég nagyjából ugyanaz a puzzle darab esetén, amely 25 00:01:15,020 --> 00:01:18,660 Az egy funkció egy alig észrevehetően más nevet, mint a többi, tüsszentés 26 00:01:18,660 --> 00:01:19,640 versus köhögés. 27 00:01:19,640 --> 00:01:23,410 Tehát ez egy lehetőség a faktoring néhány közös kódot. 28 00:01:23,410 --> 00:01:27,020 Sőt, észre az egyetlen különbség között, a köhögés és a tüsszentés, hogy az egyik 29 00:01:27,020 --> 00:01:30,710 van Scratch mondás: "köhögés", a más ebből, hogy "achoo." 30 00:01:30,710 --> 00:01:35,010 >> Így nem lehetett valahogy általánosítani kódot oly módon, hogy egyszerűen 31 00:01:35,010 --> 00:01:37,990 határozza meg, milyen szót akarunk karcolja meg, hogy maradjon? 32 00:01:37,990 --> 00:01:41,170 És attól függően, hogy a szó, hogy lesz hatékonyan lehet a köhögés, vagy 33 00:01:41,170 --> 00:01:42,370 ez lesz a tüsszentés. 34 00:01:42,370 --> 00:01:43,580 Szóval menjünk előre, és erre a célra. 35 00:01:43,580 --> 00:01:49,500 Csináljunk egy harmadik funkció, és hívja ez, "mondja." , és azt akarom, hogy 36 00:01:49,500 --> 00:01:53,360 fogadja el, és nem csak egy szám, de ezúttal egy sor, más néven a 37 00:01:53,360 --> 00:01:54,980 szót vagy kifejezést. 38 00:01:54,980 --> 00:01:57,500 >> And we'll call this "word." 39 00:01:57,500 --> 00:01:59,500 És hányszor tudom akarom mondani ezt a szót? 40 00:01:59,500 --> 00:02:02,680 Nos, nézzük meg egy számot, hívja újra n. 41 00:02:02,680 --> 00:02:05,540 És csak azért, hogy ezt a blokkot még olvasható, hadd menjen előre, és adjunk hozzá egy 42 00:02:05,540 --> 00:02:11,000 label úgynevezett "időkben." Tehát, hogy ha olvassa el ezt a blokkot balról jobbra, az 43 00:02:11,000 --> 00:02:14,380 szó szerint azt mondja: "azt mondják, szó n-szer." 44 00:02:14,380 --> 00:02:15,760 >> Most hadd menjen előre, és kattintson az OK gombra. 45 00:02:15,760 --> 00:02:18,320 46 00:02:18,320 --> 00:02:22,750 És most hadd végre ezt a blokkot, Ismét egy ismétlés blokk. 47 00:02:22,750 --> 00:02:25,680 Megadása, amit szeretnék hogy ismételje meg n-szer. 48 00:02:25,680 --> 00:02:29,480 Megadása, amit szeretnék mondani, valamit, egy pillanatra. 49 00:02:29,480 --> 00:02:33,750 De ahelyett, hogy valami kemény kódolt be ezt a funkciót, nézzük inkább húzza 50 00:02:33,750 --> 00:02:36,450 és vidd a szó, hogy ez hozták be 51 00:02:36,450 --> 00:02:38,790 Nézzük majd várjon egy percet. 59 00:02:39,297 --> 00:02:43,387 Tehát most hadd menjek vissza és finomítani a implementáció köhögés és tüsszentés, 60 00:02:43,387 --> 00:02:47,367 oly módon, hogy e két funkció hívja ezt a harmadik funkció, ezzel 61 00:02:47,367 --> 00:02:49,627 minimalizálva az összeg A kettős kód. 62 00:02:49,627 --> 00:02:52,237 Szóval szó dobja ezt a kódot el. 63 00:02:52,237 --> 00:02:54,037 Nézzük dobja ezt a kódot el. 64 00:02:54,037 --> 00:02:57,707 És most, most egyszerűen adja meg, hogy köhögés kell végrehajtani 65 00:02:57,707 --> 00:03:02,607 mondván, hogy "köhögés" bizonyos számú n alkalommal. 66 00:03:02,607 --> 00:03:06,987 >> És hasonlóképpen, akkor megyünk vissza újra végrehajtani tüsszentés úgy, hogy az általa használt 67 00:03:06,987 --> 00:03:13,577 mondjuk egy érv A "achoo" n-szer. 68 00:03:13,577 --> 00:03:14,687 Szóval, mit tettünk? 69 00:03:14,687 --> 00:03:18,417 Már felismerte a kódot, ami közös mind a köhögés és a 70 00:03:18,417 --> 00:03:22,127 tüsszentés funkciók számították ki a egy új, harmadik funkciót, majd 71 00:03:22,127 --> 00:03:25,377 újraírt köhögés és tüsszentés az ilyen olyan módon, hogy hívják, hogy 72 00:03:25,377 --> 00:03:27,177 a harmadik és az új funkciót. 73 00:03:27,177 --> 00:03:30,297 >> Most már teljes mértékben tette ezt az egész a program bonyolultabb, mint amilyennek 74 00:03:30,297 --> 00:03:31,377 Tényleg kell. 75 00:03:31,377 --> 00:03:34,307 Miután az összes, a végén a nap, mi csak meg kell Scratch köhögni háromszor 76 00:03:34,307 --> 00:03:35,587 és tüsszentés háromszor. 77 00:03:35,587 --> 00:03:38,007 És mi lehetett volna, hogy a csak néhány puzzle-darabokat. 78 00:03:38,007 --> 00:03:41,197 De ahogy a program kap sokkal több bonyolult, és a programokat 79 00:03:41,197 --> 00:03:45,257 kifinomult, ez a technika a faktoring ki közös kódot, vagy 80 00:03:45,257 --> 00:03:49,007 hierarchikus bomló a programban kisebb funkciója, amelyek mindegyike 81 00:03:49,007 --> 00:03:51,846 hívás más funkció, egy nagyon lenyűgöző technika. 82 00:03:51,846 --> 00:03:55,627 Mert ez biztosítja, hogy a kódot, még akkor is, amennyire csak lehet bonyolultabb, marad 83 00:03:55,627 --> 00:03:58,087 könnyen frissíthető és nagyon olvasható. 84 00:03:58,087 --> 00:03:59,627 >> Sőt, úgy a végeredmény. 85 00:03:59,627 --> 00:04:03,917 Amikor a zöld zászlót kattint, köhögés háromszor, tüsszentés háromszor. 86 00:04:03,917 --> 00:04:05,007 És ennyi. 87 00:04:05,007 --> 00:04:07,007 Sőt, most pontosan erre. 88 00:04:07,007 --> 00:04:12,187 Kattintson a zöld zászlót, és kap egy köhögés, két köhögés, három köhögés. 89 00:04:12,187 --> 00:04:18,607 Majd, reméljük, egyszer tüsszentés, Két tüsszent, és egy harmadik tüsszentés. 90 00:04:18,607 --> 00:04:19,857 Remélem, hogy jobb lesz hamarosan. 91 00:04:19,857 --> 00:04:20,892