A Ciência da Computação trata de algoritmos e não (estritamente) de computadores (e eletrônicos).
Como tal, o estudo de algoritmos (mesmo da aritmética elementar) pode trazer entendimento da ciência da computação e da programação. Lembre-se de que mesmo o termo "algoritmo" é uma paráfrase do autor de um livro de aritmética ( al-Khwārizmī , por volta do nono século. CE).
O estudo de algoritmos pode ser feito usando meios elementares, mas deve fornecer uma cobertura do porquê o algoritmo funciona, como surgiu e como se pode realmente demonstrar que funciona corretamente.
A história por trás da evolução da ciência da computação, algoritmos e programação não deve ser subestimada. Por exemplo, a calculadora de Babbage / Ada, a máquina Enigma, a prancha de Konrad Zuse , a ENIAC etc.
Então, pode-se introduzir a programação (e linguagens de programação) como uma maneira de formalizar algoritmos. Isso também pode ser feito (em grande parte) usando meios elementares.
Observe que alguns estudos mostraram que a programação de aprendizagem de pessoas tem duas principais dificuldades de entendimento (relacionadas à sobrecarga de símbolos, por exemplo, teste de atribuição versus igualdade e operação de uma máquina de RAM).
- Construções de loop (por exemplo, para, enquanto etc.) parecem difíceis
- Atribuição versus teste de igualdade também parece difícil.
Assim, pode-se garantir que estas sejam claramente compreendidas e compreendidas pelas pessoas.
Além disso, se qualquer computador puder ser acessado (mesmo uma calculadora que possa ser programada), isso poderá ser usado para fornecer exemplos de aplicativos e experiência prática. Caso contrário, pode-se usar um computador simulado. Isso pode ser feito de várias maneiras, por exemplo, um grupo de pessoas pode simular partes de um computador e a classe pode projetar algoritmos para resolver vários problemas desse computador simulado e ver como ele funciona. Isso também pode ser visto como um jogo, seja criativo e faça as pazes.
Em seguida, alguns modelos de computação (abstratos) (por exemplo, Máquinas de Turing ) podem ser introduzidos e relacionados ao material anterior sobre algoritmos e formalização em uma linguagem (de programação).
Se alguém quiser introduzir a eletrônica de um computador real, isso também pode ser feito em duas partes.
Lembre-se de que, mesmo nas universidades, alguns cursos de eletrônica e arquitetura de computadores são teóricos (na verdade, não se entra em contato com uma CPU ou uma de design).
Portanto, alguns princípios de operação da eletrônica (e a física subjacente) relacionados à arquitetura de computadores podem ser introduzidos ( semicondutores , zonas de energia de estado sólido, portas p-np, etc.).
Em seguida, pode-se aproveitar o material anterior sobre programação e algoritmos e introduzir técnicas (modernas) de design (e descrição) de CPU que são usadas na indústria ( portas lógicas , flip-flops , FPGA , VHDL , circuitos CMOS etc.).
Isso pode ser levado em consideração em questões de arquitetura de design da CPU, como paralelismo, pipelining, memória cache, endereçamento vetorial, microprogramação, DMA, etc.
Bem, ok, talvez isso possa ser demais, mas foi adicionado para tornar a resposta independente.