1 00:00:00,000 --> 00:00:00,280 2 00:00:00,280 --> 00:00:02,970 >> Spreker 1: Veronderstel nou dat ek wou Krap te gee die vermoë 3 00:00:02,970 --> 00:00:05,080 nies as well. 4 00:00:05,080 --> 00:00:07,710 Wel, my eerste instink sou wees, soos voorheen, om 'n 5 00:00:07,710 --> 00:00:10,070 blok, noem dit nies. 6 00:00:10,070 --> 00:00:14,110 Spesifiseer dat ek wil spesifiseer met 'n aantal hoeveel keer 7 00:00:14,110 --> 00:00:15,800 Kras moet nies. 8 00:00:15,800 --> 00:00:17,540 Daarna kliek OK. 9 00:00:17,540 --> 00:00:20,370 Laat my skuif dit oor aan die regterkant myself te gee meer ruimte. 10 00:00:20,370 --> 00:00:26,070 >> En dan laat my gaan weer te herhaal, oorheersende die standaard 10 met n. 11 00:00:26,070 --> 00:00:29,610 Laat my gaan na die verklaring sê en sê nie "hallo", maar 12 00:00:29,610 --> 00:00:32,350 "Achoo" vir 'n sekonde. 13 00:00:32,350 --> 00:00:35,180 Dan neem 'n oomblik se uitstel. 14 00:00:35,180 --> 00:00:36,040 En dit is dit. 15 00:00:36,040 --> 00:00:39,220 >> Nou het ek 'n blok genoem nies, sowel as 'n blok genoem hoes. 16 00:00:39,220 --> 00:00:46,550 Sodat nou as ek wil Krap hoes en nies, ek kan eenvoudig spesifiseer 'n 17 00:00:46,550 --> 00:00:48,580 nies onder sy hoes. 18 00:00:48,580 --> 00:00:49,930 Drie keer, sê. 19 00:00:49,930 --> 00:00:55,560 Klik op die groen vlag, en ek sien inderdaad, hoes, hoes, hoes. 20 00:00:55,560 --> 00:01:01,880 Gevolg deur achoo, achoo, achoo. 21 00:01:01,880 --> 00:01:04,180 My mees realistiese nies tot op datum. 22 00:01:04,180 --> 00:01:09,240 >> Nou sien iets wat sleg oor hierdie ontwerp. 23 00:01:09,240 --> 00:01:11,930 Selfs al het ek nie blatante dubbele enige stukke van die legkaart, ek 24 00:01:11,930 --> 00:01:15,020 beslis gesleep en laat val mooi baie dieselfde stukke van die legkaart, gee 25 00:01:15,020 --> 00:01:18,660 die een funksie 'n steeds so effens ander naam as die ander, nies 26 00:01:18,660 --> 00:01:19,640 versus hoes. 27 00:01:19,640 --> 00:01:23,410 So, dit is 'n geleentheid vir factoring uit 'n paar algemene kode. 28 00:01:23,410 --> 00:01:27,020 Inderdaad, neem kennis van die enigste verskil tussen hoes en nies is dat 'n mens 29 00:01:27,020 --> 00:01:30,710 het Scratch gesegde "hoes," het die ander wat sê: "achoo." 30 00:01:30,710 --> 00:01:35,010 >> So kan ons nie een of ander manier te veralgemeen hierdie kode in so 'n manier dat ons eenvoudig 31 00:01:35,010 --> 00:01:37,990 spesifiseer watter woord wat ons wil te krap om te bly? 32 00:01:37,990 --> 00:01:41,170 En afhangende van die woord, dit sal effektief 'n hoes of wees 33 00:01:41,170 --> 00:01:42,370 dit sal 'n nies wees. 34 00:01:42,370 --> 00:01:43,580 So laat ons gaan voort en doen dit. 35 00:01:43,580 --> 00:01:49,500 Kom ons maak 'n derde funksie en noem hierdie een, "sê nie." en ek wil dit 36 00:01:49,500 --> 00:01:53,360 aanvaar, nie net 'n nommer, maar hierdie keer 'n string, andersins bekend as 'n 37 00:01:53,360 --> 00:01:54,980 woord of frase. 38 00:01:54,980 --> 00:01:57,500 >> And we'll call this "word." 39 00:01:57,500 --> 00:01:59,500 En hoeveel keer moet ek wil hierdie woord te sê? 40 00:01:59,500 --> 00:02:02,680 Wel, laat ons 'n aantal spesifiseer, noem dit weer n. 41 00:02:02,680 --> 00:02:05,540 En net hierdie blok meer te maak leesbare, laat my voort te gaan en voeg 'n 42 00:02:05,540 --> 00:02:11,000 etiket met die naam "tye." Sodat wanneer jy lees hierdie blok van links na regs, is dit 43 00:02:11,000 --> 00:02:14,380 sê letterlik "sê woord n ​​keer." 44 00:02:14,380 --> 00:02:15,760 >> Laat my voort te gaan en kliek OK nou. 45 00:02:15,760 --> 00:02:18,320 46 00:02:18,320 --> 00:02:22,750 En nou, laat my hierdie blok te implementeer, weer met behulp van 'n herhaling blok. 47 00:02:22,750 --> 00:02:25,680 Spesifiseer dat ek wil dit n keer te herhaal. 48 00:02:25,680 --> 00:02:29,480 Spesifiseer dat ek wil sê iets vir 'n sekonde. 49 00:02:29,480 --> 00:02:33,750 Maar eerder as iets hard gekodeer in hierdie funksie, laat se plaas drag 50 00:02:33,750 --> 00:02:36,450 en laat die Woord wat geslaag in 51 00:02:36,450 --> 00:02:38,790 Kom ons dan wag vir 'n sekonde. 59 00:02:39,297 --> 00:02:43,387 So nou laat my terug te gaan en te verfyn my implementering van hoes en nies, 60 00:02:43,387 --> 00:02:47,367 in so 'n manier dat die twee funksies noem dit die derde funksie, en daardeur 61 00:02:47,367 --> 00:02:49,627 die vermindering van die bedrag van dupliseer kode. 62 00:02:49,627 --> 00:02:52,237 So laat ons letterlik gooi hierdie kode weg. 63 00:02:52,237 --> 00:02:54,037 Kom ons gooi die kode weg. 64 00:02:54,037 --> 00:02:57,707 En hierdie keer, laat ons net spesifiseer dat hoes moet deur geïmplementeer word 65 00:02:57,707 --> 00:03:02,607 sê: "hoes" Sommige getal n keer. 66 00:03:02,607 --> 00:03:06,987 >> En so, kan ons teruggaan en weer te implementeer nies, sodat dit gebruik 67 00:03:06,987 --> 00:03:13,577 sê met 'n argument van "achoo" n keer. 68 00:03:13,577 --> 00:03:14,687 So, wat het ons gedoen? 69 00:03:14,687 --> 00:03:18,417 Ons het die kode wat erken gemeenskaplik aan beide ons hoes en ons 70 00:03:18,417 --> 00:03:22,127 nies funksies, ingereken dit uit in 'n nuwe derde funksie, en dan 71 00:03:22,127 --> 00:03:25,377 herskryf hoes en nies in sulke 'n manier wat hulle noem dat die 72 00:03:25,377 --> 00:03:27,177 derde en nuwe funksie. 73 00:03:27,177 --> 00:03:30,297 >> Nou het ons absoluut gemaak, die hele program meer ingewikkeld as wat dit 74 00:03:30,297 --> 00:03:31,377 regtig nodig het om te wees. 75 00:03:31,377 --> 00:03:34,307 Na alles, aan die einde van die dag, het ons moet net Scratch drie keer om te hoes 76 00:03:34,307 --> 00:03:35,587 en nies drie keer. 77 00:03:35,587 --> 00:03:38,007 En ons kon gedoen het wat met net 'n paar stukke van die legkaart. 78 00:03:38,007 --> 00:03:41,197 Maar as ons programme kry veel meer ingewikkeld, en ons programme meer 79 00:03:41,197 --> 00:03:45,257 gesofistikeerde, hierdie tegniek van factoring uit gemeenskaplike kode, of 80 00:03:45,257 --> 00:03:49,007 hiërargiese ontbind jou program in kleiner funksie, wat elk 81 00:03:49,007 --> 00:03:51,846 noem ander funksies, is 'n baie dwingende tegniek. 82 00:03:51,846 --> 00:03:55,627 Want dit sal verseker dat jou kode, selfs as dit kry meer kompleks is, bly 83 00:03:55,627 --> 00:03:58,087 maklik om te werk en ook baie leesbare. 84 00:03:58,087 --> 00:03:59,627 >> Inderdaad, oorweeg die eindresultaat. 85 00:03:59,627 --> 00:04:03,917 Wanneer die groen vlag word gebruik, hoes drie keer, nies drie keer. 86 00:04:03,917 --> 00:04:05,007 En dit is dit. 87 00:04:05,007 --> 00:04:07,007 Trouens, kom ons doen presies dit. 88 00:04:07,007 --> 00:04:12,187 Klik op die groen vlag en ons kry 'n hoes, twee hoes, drie hoes. 89 00:04:12,187 --> 00:04:18,607 Gevolg deur, ons hoop, een keer nies, twee nies, en 'n derde nies. 90 00:04:18,607 --> 00:04:19,857 Hoop hy kry beter gou. 91 00:04:19,857 --> 00:04:20,892