>> SPEAKER 1: Să presupunem acum că mi-am dorit pentru a da Scratch capacitatea
sa stranute la fel de bine.
Ei bine, primele mele instincte ar fi fie, ca și mai înainte, pentru a face o
bloc, numesc acest stranut.
Precizeze că aș vrea să specificați cu un număr de câte ori
Zero ar trebui să strănut.
După aceea faceți clic pe OK.
Lasă-mă să se mute asta la dreapta să-mi dea ceva mai mult spațiu.
>> Și apoi lasă-mă să merg din nou la Repetare, imperative implicit de 10 cu nr.
Lasă-mă să merg la declarația cuvânt de spus și nu spune "salut", dar
"Achoo" pentru o secundă.
Apoi să ia un moment de răgaz.
Și asta e tot.
>> Acum am un bloc numit strănut, precum și un bloc numit tuse.
Astfel că acum, dacă vreau Scratch sa tuseasca și strănut, eu pot specifica pur și simplu o
strănut sub tuse lui.
De trei ori, spune.
Faceți clic pe steagul verde, și că ar trebui a se vedea într-adevăr, tuse, tuse, tuse.
Urmat de achoo, achoo, achoo.
My stranuta mai realiste până în prezent.
>> Acum, observați ceva care este rău despre acest design.
Chiar dacă nu am făcut-o pur și simplu duplicat orice piese de puzzle, I
cu siguranta târât și a scăzut destul de mult aceleași piesele puzzle-ului, oferindu-
funcția unul o vreodată atât de ușor nume diferit de celelalte, stranut
față de tuse.
Deci, aceasta este o oportunitate de factoring unele cod comun.
Într-adevăr, observăm singura diferență între tuse și strănut este că unul
are Scratch zicală "tuse", altele de care spune "achoo."
>> Deci, nu putem generaliza cumva acest cod în așa fel încât, pur și simplu
specifica ce cuvânt vrem la zero pentru a rămâne?
Și în funcție de acel cuvânt, acesta va să fie în mod efectiv o tuse sau
acesta va fi un strănut.
Deci, haideți să mergem mai departe și de a face acest lucru.
Să facem o treime funcție și de apel acesta, "spune." și eu vreau să
accepta, nu doar un număr, dar de data aceasta un șir, altfel cunoscut ca un
cuvânt sau o frază.
>> And we'll call this "word."
Și de câte ori nu am Vreau să spun acest cuvânt?
Ei bine, să specificați un număr, numindu-l din nou n.
Și doar pentru a face acest bloc mai lizibil, lasă-mă să merg mai departe și se adaugă o
label numit "ori." Astfel că, atunci când citiți acest bloc de la stânga la dreapta, ea
literalmente spune: "spuneți cuvântul de n ori."
>> Acum, lasă-mă să merg mai departe și faceți clic pe OK.
Și acum să-mi pună în aplicare acest bloc, din nou, folosind un bloc repeta.
Precizând că vreau aceasta să se repete de n ori.
Precizând că vreau să spun ceva pentru o secundă.
Dar, mai degrabă decât ceva greu codificate în această funcție, în loc să trageți
și fixați cuvântul care este a fost adoptată inch
Să apoi așteptați timp de o secundă.
Deci, acum lasă-mă să mă întorc și să se perfecționeze mea implementari de tuse si stranut,
în așa fel încât aceste două funcții numim această a treia funcție, astfel
minimizarea cantității de duplicat cod.
Deci, haideți să arunce literalmente acest cod departe.
Să arunca acest cod departe.
Și de această dată, să specificați pur și simplu că tuse ar trebui să fie puse în aplicare de către
spunând "tuse", un numar n de ori.
>> Și în mod similar, putem merge înapoi și re-punerea în aplicare a strănut astfel încât să utilizeze
spune cu un argument de "achoo" de n ori.
Deci, ce am făcut?
Ne-am recunoscut codul, care a fost comune pentru ambele tuse și nostru noastră
strănut funcții, luat în afară un nou treia funcție, și apoi
tuse și strănut rescris în astfel de un mod pe care ei numesc asta
a treia și nouă funcție.
>> Acum, ne-am făcut absolut tot acest program mai complicat decât
într-adevăr trebuie să fie.
Până la urmă, la sfârșitul zilei, am Trebuie doar Scratch la tuse de trei ori
și strănut de trei ori.
Și am fi putut face asta cu doar câteva piese de puzzle.
Dar ca programele noastre de a obține mult mai mult complicate, iar programele noastre mai mult
sofisticat, această tehnică de factoring de cod comun, sau
descompunere ierarhică programul în funcție mai mici, fiecare dintre acestea
apela alte funcții, este un foarte tehnica de convingătoare.
Deoarece se va asigura că codul dvs., chiar ca acesta devine mai complex, rămâne
ușor de actualizat și, de asemenea, foarte ușor de citit.
>> Într-adevăr, ia în considerare rezultatul final.
Când steagul verde este apasat, tuse de trei ori, de trei ori strănutați.
Și asta e tot.
De fapt, hai să facă exact acest lucru.
Faceți clic pe steagul verde și vom obține un tuse, două, trei tuse tuse.
Urmat de, sperăm, o dată strănut, două stranuta, și un al treilea strănut.
Sper să se mai bine în curând.