COLUMNA 1: Supoñamos agora que eu quería para dar arañazos capacidade a espirrar tamén. Ben, o meu primeiro instinto sería ser, como antes, para facer unha bloque, chaman ese espirro. Especificar que me gustaría indicar cun número de cantas veces Raspadinha debe Espirrar. Despois diso prema en Aceptar. Déixeme mover este á dereita para me dar un pouco máis de espazo. E, a continuación, deixe-me ir de novo para repetir, substituíndo o estándar 10 en n. Déixeme ir á declaración digamos e dicir non "Ola", pero "Achoo" por un segundo. A continuación, tomar un momento de relaxación. E é iso. Agora eu teño un bloque chamado espirro, , Así como un bloque chamado tose. Así que agora, se eu queira Acoitelado a tossir e espirro, podo simplemente especificar un espirro baixo da súa tose. Por tres veces, por exemplo. Prema na bandeira verde, e que debería ver, de feito, a tose, a tose, a tose. Seguido por achoo, achoo, achoo. Os meus espirros máis realista ata a data. Agora noten algo que é mal sobre o seu deseño. Aínda que eu non fixen duplicado outright calquera pezas de puzzle, eu definitivamente arrastrado e caeu moi moito as mesmas pezas do puzzle, dando a función dun un moi lixeiramente diferente do que o outro, espirro contra a tose. Polo tanto, esta é unha oportunidade para a factoring algún código común. De feito, entende que a única diferenza entre tose e espirros é que un ten risco dito "tose", o outro do que dicir "achoo". Polo tanto, non poderiamos dalgún xeito xeneralizar este código de tal xeito que só especificar o que a palabra que queremos Acoitelado para estar? E dependendo do que a palabra, será efectivamente ser unha tose ou será un espirro. Entón, imos seguir adiante e facelo. Imos facer unha terceira función e chamar ese ", dicir". e quero que aceptar, non só un número, pero esta vez unha corda, tamén coñecido como un palabra ou frase. E nós imos chamar iso de "palabra". E o que quero dicir? E cantas veces eu quere dicir esta palabra? Ben, imos especificar un número, chamando-o de novo n. E só para facer este bloque máis lexible, déixeme ir adiante e engadir un selo chamado "veces." Así que cando le este bloque de esquerda a dereita, el literalmente di que "dicir palabra n veces." Agora déixeme ir adiante e prema en Aceptar. E agora déixeme aplicar este bloque, novo usando un bloque de repetición. Especificando que quero se a repetición n veces. Especificando que quero dicir algo por un segundo. Pero en vez de algo codificado para esta función, imos, en vez de arrastrar e soltar a palabra que está foron pasados ​​dentro Imos entón agardar por un segundo. E agora imos volver e mellorar o meu implementacións de espirro e tose, de xeito que eles chaman iso funciona, á súa vez. Entón imos xogar fora este código. Imos xogar fóra este código. Imos ao meu bloque personalizado e arrastra en "dicir". E escribir o argumento de "tose" tres veces. Arrastre e aquí imos en "dicir" "Achoo" tres veces. Entón, agora déixeme volver e refinar miña implementacións de tose e espirros, de tal xeito que estas dúas funcións chamar esa terceira función, así minimizando a cantidade de duplicar código. Entón, imos literalmente xogar este código de distancia. Imos xogar este código de distancia. E esta vez, imos simplemente especificar que tos deben ser aplicadas por dicindo "tose" algún número n de veces. E do mesmo xeito, podemos volver e reimplementar espirro para que el usa dicir con un argumento de "achoo" n veces. Entón, o que fixemos? Temos recoñecido o código que se común a ambos a nosa tose ea nosa espirro funcións, consignado-lo na unha nova terceira función, e logo tose e espirros reescrito de tal dunha forma que eles chaman iso terceira e nova función. Agora temos absolutamente fixo toda esa programa máis complicado do que realmente precisa ser. Despois de todo, ao final do día, só precisa do risco de tossir tres veces e espirrar tres veces. E poderiamos ter feito isto con só algunhas pezas de puzzle. Pero, como os nosos programas quedan moito máis complicado, e os nosos programas máis texto, esta técnica de fatoração de código común, ou xerárquica descomposición seu programa en función de menores, cada un dos cales chamar outras funcións, é moi técnica convincente. Porque vai garantir que o código, á vez que se fai máis complexa, restos fácil de actualizar e tamén moi lexible. Efectivamente, considerar o resultado final. Cando a bandeira verde é premendo, tose tres veces, espirrar tres veces. E é iso. De feito, imos facer exactamente isto. Prema na bandeira verde e temos un tose, tose dúas, tres tose. Seguido por, esperamos, xa que Espirrar, dous espirros, e un terceiro espirro. Espero que mellore pronto.