Visão Geral do Módulo
Neste módulo, você aprenderá os fundamentos da lógica de programação utilizando JavaScript como linguagem base. Vamos explorar desde os conceitos básicos de algoritmos e variáveis até estruturas de controle, funções e manipulação de dados, construindo uma base sólida para o desenvolvimento de aplicações backend.
Conteúdo Programático
- O que é lógica de programação
- Algoritmos e sua importância
- Formas de representação de algoritmos
- Pseudocódigo e fluxogramas
- Introdução ao JavaScript
- Configuração do ambiente de desenvolvimento
- O que são variáveis e constantes
- Declaração e atribuição de valores
- Tipos de dados primitivos (number, string, boolean)
- Tipos de dados compostos (array, object)
- Conversão entre tipos de dados
- Escopo de variáveis
- Operadores aritméticos (+, -, *, /, %)
- Operadores de atribuição (=, +=, -=, *=, /=)
- Operadores de comparação (==, ===, !=, !==, >, <, >=, <=)
- Operadores lógicos (&&, ||, !)
- Operadores de incremento e decremento (++, --)
- Precedência de operadores
- Estrutura if-else
- Estrutura switch-case
- Operador ternário
- Aninhamento de condicionais
- Boas práticas no uso de condicionais
- Loop for
- Loop while
- Loop do-while
- Controle de loops (break, continue)
- Loops aninhados
- Iteração em arrays e objetos (for...of, for...in)
- Declaração e chamada de funções
- Parâmetros e argumentos
- Retorno de valores
- Escopo de variáveis em funções
- Funções anônimas e expressões de função
- Arrow functions
- Callbacks
- Criação e inicialização de arrays
- Acesso e modificação de elementos
- Métodos de arrays (push, pop, shift, unshift, splice)
- Iteração em arrays
- Arrays multidimensionais
- Métodos de alto nível (map, filter, reduce, forEach)
- Criação e inicialização de objetos
- Propriedades e métodos
- Acesso e modificação de propriedades
- Objetos aninhados
- Iteração em objetos
- Desestruturação de objetos
- Criação e concatenação de strings
- Template literals
- Métodos de strings (length, indexOf, substring, slice, replace)
- Conversão de strings para arrays e vice-versa
- Expressões regulares básicas
- Tipos de erros em JavaScript
- Estrutura try-catch-finally
- Lançamento de exceções (throw)
- Criação de erros personalizados
- Depuração de código
Exercícios Práticos
Para fixar os conceitos aprendidos neste módulo, recomendamos a realização dos seguintes exercícios:
- Crie um algoritmo que calcule o preço médio dos produtos cadastrados.
- Desenvolva uma função que encontre o produto mais caro e o mais barato.
- Implemente um sistema de busca de produtos por descrição (parcial ou completa).
- Crie uma função que aplique um desconto percentual a todos os produtos.
- Desenvolva um algoritmo que simule um carrinho de compras, permitindo adicionar e remover produtos.
- Implemente uma função que calcule o valor total de um pedido, considerando quantidades variadas de cada produto.
- Crie um sistema de categorização de produtos baseado em seu valor (barato, médio, caro).
- Desenvolva uma função que ordene os produtos por preço (crescente ou decrescente).
Pronto para avançar?
Após dominar os conceitos de Lógica de Programação com JavaScript, você estará preparado para avançar para o próximo módulo.
Próximo Módulo: Git, GitHub e GitLab