COLUNA 1: Suponha agora que eu queria para dar arranhões a capacidade a espirrar também. Bem, meu primeiro instinto seria ser, como antes, para fazer uma bloco, chamam esse espirro. Especificar que eu gostaria de especificar com um número de quantas vezes Raspadinha deve espirrar. Depois disso clique em OK. Deixe-me mover este para a direita para me dar um pouco mais de espaço. E, em seguida, deixe-me ir novamente para repetir, substituindo o padrão 10 com n. Deixe-me ir para a declaração digamos e dizer não "Olá", mas "Achoo" por um segundo. Em seguida, tomar um momento de relaxamento. E é isso. Agora eu tenho um bloco chamado espirro, , bem como um bloco chamado tosse. De modo que agora, se eu quiser Raspe a tossir e espirro, eu posso simplesmente especificar um espirro abaixo de sua tosse. Por três vezes, por exemplo. Clique na bandeira verde, e que deveria ver, de facto, a tosse, a tosse, a tosse. Seguido por achoo, achoo, achoo. Os meus espirros mais realista até à data. Agora notem algo que é mal sobre o seu design. Mesmo que eu não fiz duplicado outright quaisquer peças de quebra-cabeça, eu definitivamente arrastado e caiu bastante muito as mesmas peças do puzzle, dando a função de um um muito ligeiramente nome diferente do que o outro, espirro contra a tosse. Portanto, esta é uma oportunidade para a factoring algum código comum. De fato, percebe que a única diferença entre tosse e espirro é que um tem risco ditado "tosse", o outro do que dizer "achoo". Portanto, não poderíamos de alguma forma generalizar este código de tal maneira que basta especificar o que a palavra que queremos Raspe para ficar? E dependendo do que a palavra, ele será efetivamente ser uma tosse ou será um espirro. Então, vamos seguir em frente e fazer isso. Vamos fazer uma terceira função e chamar este ", diz." e eu quero que ele aceitar, não apenas um número, mas desta vez uma corda, também conhecido como um palavra ou frase. E nós vamos chamar isso de "palavra". E o que eu quero dizer? E quantas vezes eu quer dizer essa palavra? Bem, vamos especificar um número, chamando-o de novo n. E só para fazer este bloco mais legível, deixe-me ir em frente e adicionar um selo chamado "vezes." De modo que quando você leia este bloco da esquerda para a direita, ele literalmente diz que "dizer palavra n vezes." Agora deixe-me ir em frente e clique em OK. E agora deixe-me implementar este bloco, novamente usando um bloco de repetição. Especificando que eu quero se a repetição n vezes. Especificando que eu quero dizer algo por um segundo. Mas ao invés de algo codificado para esta função, vamos, em vez de arrastar e soltar a palavra que é foram passados ​​dentro Vamos então esperar por um segundo. E agora vamos voltar e melhorar meu implementações de espirro e tosse, de modo que eles chamam isso funcionar, por sua vez. Então vamos jogar fora este código. Vamos jogar fora este código. Vamos para o meu bloco personalizado e arraste em "dizer". E digitar o argumento de "tosse" três vezes. Arraste e aqui vamos em "dizer" "Achoo" três vezes. Então, agora deixe-me voltar e refinar minha implementações de tosse e espirro, de tal maneira que estas duas funções chamar essa terceira função, assim minimizando a quantidade de duplicar código. Então, vamos literalmente jogar este código de distância. Vamos jogar este código de distância. E desta vez, vamos simplesmente especificar que tosse devem ser implementadas por dizendo "tosse" algum número n de vezes. E da mesma forma, podemos voltar e reimplementar espirro para que ele usa dizer com um argumento de "achoo" n vezes. Então, o que nós fizemos? Nós temos reconhecido o código que foi comum a ambos a nossa tosse e nossa espirro funções, consignado-lo em uma nova terceira função, e em seguida tosse e espirro reescrito de tal uma forma que eles chamam isso terceira e nova função. Agora temos absolutamente fez toda essa programa mais complicado do que realmente precisa ser. Depois de tudo, no final do dia, só precisa do risco de tossir três vezes e espirrar três vezes. E nós poderíamos ter feito isso com apenas algumas peças de quebra-cabeça. Mas, como nossos programas ficam muito mais complicado, e nossos programas mais sofisticado, esta técnica de fatoração de código comum, ou hierárquica decomposição seu programa em função de menores, cada um dos quais chamar outras funções, é muito técnica convincente. Porque ele vai garantir que o seu código, ao mesmo tempo que se torna mais complexa, restos fácil de atualizar e também muito legível. Com efeito, considerar o resultado final. Quando a bandeira verde é clicado, tosse três vezes, espirrar três vezes. E é isso. Na verdade, vamos fazer exatamente isso. Clique na bandeira verde e temos um tosse, tosse duas, três tosse. Seguido por, esperamos, uma vez que espirrar, dois espirros, e um terceiro espirro. Espero que ele melhore logo.