Matéria ministrada pela professora Juliana Mascarenhas https://github.com/julianazanelatto
O objetivo do módulo foi “apresentar os conceitos que caracterizam o pensamento com putacional permitindo que o Dev entenda o que significa pensar computacionalmente.”
O pensamento Computacional é dividido em quatro pilares principais:
-
Decomposição; //Dividir o problema em subproblemas//
-
Reconhecimento de padrões; //Identificar padrões e/ou tendências//
-
Abstração; //Extrapolar o conceito do problema para uma forma generalista.//
-
Design de algoritmos. //Definir passo a passo a solução do problema.//
Todo o processo de desenvolvimento deve ser contínuo...
- Definir uma solução;
- Testar a solução;
- Aperfeiçoar a solução.
Habilidade necessária para o pensamento computacional:
- Raciocínio Lógico //Forma estruturada de pensamento ou raciocínio que permite encontrar a conclusão ou determinar a resolução de um problema.//
Classificação:
- Indução //Fenômeno observado//
- Dedução //Explicações e previsões//
- Abdução //Conclusão – Processo investigativo//
Lógica – Técnicas:
- Linear;
- Estruturada;
- Modular.
Algoritmos – Conceitos básicos:
- Variáveis,
- Dados;
- Operadores;
- Estrutura condicional;
- Estrutura de repetição;
- Vetores e matrizes;
- Funções;
Paradigmas de programação:
- Orientação à objetos; //Paradigma baseado na utilização de objetos e suas interações//
- Procedural; //Chamadas sucessivas e procedimentos separados//
- Funcional; //Instruções baseadas em funções//
- Estruturado; //Estrutura de blocos aninhados//
- Computação distribuída; //Funções executadas de forma independente//
- Lógico. //
Foco no paradigma da Programação Orientada à Objeto (POO): Pilares da POO:
- Herança;
- Encapsulamento;
- Poliformismo;
- Abstração.