Conceitos de programação do zero

Operação aritmética zero entre um número e uma string


Muitos estão familiarizados com o Scratch - um ambiente de programação infantil, o treinamento no qual geralmente se resume a criar projetos criativos com o princípio de “do simples ao complexo”. Ao mesmo tempo, a “abordagem clássica” para o estudo da programação (variáveis ​​→ ramificações → loops → funções → estruturas → objetos → ...) no Scratch é difícil.

No entanto, alterar a sequência de estudar conceitos (vamos chamá-los de conceitos) de programação estrutural, orientada a objetos e eventos, escondendo-os atrás de sprites brilhantes e animação interativa não significa que conceitos não devam ser enfatizados. Especialmente se o objetivo não é tanto o desenvolvimento de habilidades criativas como o treinamento em programação. Eu tentei refletir essa ideia no meu curso .

A primeira coisa que um arranhador iniciante enfrenta é sprites. Embora o Scratch em si não tenha programação orientada a objetos, sprites podem ser considerados objetos. Nesta fase, o aluno vê que pode haver muitos objetos no programa cujo comportamento é controlado por scripts externos a eles. Os sprites recebem comandos ou transmitem informações sobre seu status sob demanda, ou seja, a programação se resume ao gerenciamento de objetos.

A segunda coisa que imediatamente cai no Scratch na cabeça de um jovem programador é o conceito de multithreading. Cada sprite pode ter vários scripts executados simultaneamente. Vários sprites também podem executar seus programas simultaneamente entre si. E acaba sendo mais difícil organizar a execução seqüencial.

Executando scripts ao mesmo tempo


Execução sequencial


Já na primeira lição, não podemos evitar conhecer os ciclos. Caso contrário, o gato não fugirá especialmente. Nesse estágio, o conhecido deve ser deixado intuitivo e superficial. Limitamos aos ciclos “sempre repita” e “repita ... vezes”, que são mais fáceis de entender. Um loop condicional é estudado em uma lição dedicada especificamente a loops. Esta lição requer conhecimento de expressões e variáveis ​​lógicas.

Como o Scratch é um ambiente orientado a eventos, é mais conveniente estudar os blocos de instruções condicionais antes das variáveis. Uma condição pode ser certos eventos.

Um operador condicional no qual a expressão lógica é um evento


Na minha opinião, essa sequência é melhor, pois a cada lição introduzimos um mínimo de conceitos. E não abstrato, mas veja imediatamente seus benefícios práticos.

Se você estudar as variáveis ​​pela primeira vez, é difícil demonstrar seu objetivo e benefício, pois o operador condicional, a entrada de dados e a geração aleatória de números não foram estudados antes.

No Scratch, além das listas, um programador é confrontado com três tipos de dados: números, seqüências de caracteres e tipos booleanos. Nesse caso, o tipo está vinculado a um valor, não a uma variável. Não é necessário converter seqüências de caracteres em números e vice-versa. As cadeias de caracteres não estão entre aspas.

Um bloco que retorna um valor lógico e tem uma forma angular característica pode ser inserido em campos arredondados. O inverso não é verdadeiro: onde uma expressão lógica é assumida, você não pode inserir uma variável regular.

Variável de string em operação aritmética


O risco é implementado para que nenhum erro crítico ocorra durante a execução. Aparentemente, portanto, se você tentar usar uma string em uma operação aritmética, ela será substituída por zero (consulte a primeira tela).

O programador deve saber que os recursos das linguagens de programação são expandidos pelas bibliotecas. Enquanto trabalha no Scratch, um aluno pode adicionar itens que adicionam novas equipes ao ambiente.

Extensões no Scratch


As funções do Scratch são implementadas na seção "Outros blocos", onde, por um lado, você cria seu próprio bloco que pode ser inserido em outros scripts. Por outro lado, eles devem montar a funcionalidade desta unidade, ou seja, o que ela fará.

Definição e chamada de função


Não há valor de retorno da função zero.

Assim, o estudo de conceitos de programação em um ambiente orientado a eventos deixa sua marca. De fato, primeiro estudamos conceitos mais complexos e abstratos e, apenas nos aprofundando no processo, passamos aos elementos da programação estrutural. Mais ou menos para um primeiro conhecido é um ponto discutível.

Source: https://habr.com/ru/post/pt443910/


All Articles