Gjuha 1: Le të supozojmë tani që kam kërkuar për të dhënë zeroja aftësinë për të teshtij si. E pra, instinktet e mia të para do të jenë, si më parë, për të bërë një bllok, e quajmë këtë teshtij. Specifikoni se unë do të doja të specifikojë me një numër sa herë Scratch duhet të teshtij. Pas kësaj klikuar OK. Më lejoni të shkojë mbi këtë në të djathtë për të dhënë vetes një vend më shumë. Dhe do të jem përsëri të shkojnë në Përsëriteni, mbizotërues default 10 me n. Më lejoni të shkojë në deklaratën themi dhe thonë jo "hello", por "Achoo" për një të dytë. Pastaj merr afat një moment. Dhe kjo është ajo. Tani unë kam një bllok të quajtur teshtij, si dhe një bllok i quajtur kollë. Kështu që tani, nëse unë dua Scratch të kollë dhe teshtij, unë thjesht mund të specifikoni një teshtij poshtë kollë e tij. Tri herë, të themi. Klikoni flamurin e gjelbër, dhe unë duhet të shikoni të vërtetë, kollë, kollë, kollë. I ndjekur nga achoo, achoo, achoo. Teshtin e mia më realiste deri më sot. Tani vini re diçka që është keq në lidhje me këtë dizajn. Edhe pse nuk e kam kopjuar të drejta të plota çdo copë puzzle, unë patjetër zvarritur dhe ra goxha shumë copa të njëjtat puzzle, duke i dhënë një funksion një ndonjëherë në mënyrë pak Emri i ndryshëm se sa të tjera, teshtij kundrejt kollë. Pra, kjo është një mundësi për factoring nga një kod të përbashkët. Në të vërtetë, vini re, të vetmin ndryshim mes Kollituni dhe teshtini është se një Scratch ka thënë: "kollë", tjetër i cili thoshte "achoo." Pra, nuk mund të jemi disi të përgjithësojmë këtë Kodi në mënyrë të tillë që ne thjesht specifikojë se çfarë fjalë ne duam për Scratch për të qëndruar? Dhe në varësi të asaj fjale, ajo do të në mënyrë efektive të jetë një kollë ose ajo do të jetë një teshtij. Pra, le të shkojnë përpara dhe të bëjë këtë. Le të bëjë një funksion të tretë dhe të thërrasë kjo, "thonë." dhe unë dua atë për të pranojë, jo vetëm një numër, por këtë herë një varg, i njohur ndryshe si një fjalë apo fraza. Dhe ne do të quajmë këtë "fjalë." Dhe ajo që dua të them? Dhe sa herë që unë të bëjë doni të thoni këtë fjalë? E pra le të specifikoni një numër, duke e quajtur atë përsëri n. Dhe vetëm për të bërë këtë bllok më të lexueshëm, më lejoni të shkoj përpara dhe të shtoni një etiketë quajtur "herë." Kështu që kur ju lexoni këtë bllok nga e majta në të djathtë, ajo fjalë për fjalë thotë "thonë herë fjala n." Tani më lejoni të shkoj përpara dhe klikoni OK. Dhe tani më lejoni të zbatuar këtë bllok, përsëri duke përdorur një bllok të përsëritur. Specifikimi që unë dua ajo për të përsëritur herë n. Specifikimi që unë dua të them diçka për një të dytë. Por në vend se diçka e vështirë koduar në këtë funksion, le të në vend terhiq dhe rënie fjalën që është e kaluar in Le pastaj të presin për një të dytë. Dhe tani le të kthehemi dhe të përmirësuar tim Implementimi i teshtitjes dhe kollitjes, në mënyrë që ata e quajnë këtë funksionojnë nga ana e tij. Pra, le të hedhin larg këtë kod. Le të hedhin larg këtë kod. Le të shkojnë në bllokun tim me porosi dhe terhiq në "them". Dhe shkruani në argumentin i "kollë" tri herë. Drag and poshtë le të këtu në "thonë," "Achoo" tri herë. Deri tani më lejoni të kthehem dhe të përsosin tim Implementimi i Kollituni dhe teshtini, në mënyrë të tillë që ato dy funksione e quajnë këtë funksion e tretë, duke minimizuar shumën e kopjuar kodin. Pra, le të hedhin fjalë për fjalë ky kod larg. Le të hedhin këtë kod larg. Dhe këtë herë, le të thjesht të specifikojë se kollë duhet të zbatohen nga duke thënë se "kollë" një numër i herë n. Dhe në mënyrë të ngjashme, mund të ktheheni mbrapsh dhe të ri-zbatuar teshtijen kështu që përdor thonë se me argument e herë "achoo" n. Pra, çfarë kemi bërë? Ne e kemi njohur kodin që ishte e përbashkët për të dy kollë tonë dhe tona teshtij funksione, faktorizuar atë në një funksion i ri tretë, dhe pastaj kollë të përshkruhet dhe të teshtij në të tilla një mënyrë që ata e quajnë atë Funksioni i tretë dhe të reja. Tani ne kemi bërë absolutisht këtë e tërë Programi më e komplikuar se ajo me të vërtetë duhet të jetë. Në fund të fundit, në fund të ditës, ne vetëm duhet Scratch të kollë tri herë dhe teshtimë tre herë. Dhe ne mund të kemi bërë që me vetëm disa copa puzzle. Por si programet tona të marrë shumë më të komplikuar, dhe programet tona më shumë sofistikuar, kjo teknikë e factoring jashtë kod të përbashkët, ose hierarkike decomposing programin tuaj në funksion të vogla, secila prej të cilave telefononi funksione të tjera, është një shumë e teknikë imponues. Për shkak se ajo do të sigurojë që kodin tuaj, edhe si ajo merr më shumë komplekse, mbetjet lehtë për të rinovuar dhe gjithashtu shumë i lexueshëm. Në të vërtetë, e konsiderojnë rezultati përfundimtar. Kur flamuri gjelbër është klikuar, kollë tri herë, teshtij tri herë. Dhe kjo është ajo. Në fakt, le të bëjë pikërisht këtë. Klikoni flamurin e gjelbër dhe kemi marrë një të tillë kollë, dy kollitet, tre kollitet. I ndjekur nga, ne shpresojmë, një herë teshtij, dy teshtin, dhe një teshtij i tretë. Shpresoj se ai merr më të mirë së shpejti.