# Introdução
Este [[Mapas de conteúdo]] me permite organizar minhas ideias sobre programação. A maioria das notas relacionadas a este tópico tem a tag #Tema/Programação. Primeiro de tudo, é necessário entender [[Código de computador|o que é um código]] e desenvolver algoritmos usando [[Pseudocódigo]]. É importante entender que [[Código deve ser correto e eficiente]], com o primeiro precedendo o segundo.
# Conceitos
Aqui estão alguns conceitos importantes para programação.
## Conceitos Básicos
- [[02 - Notas de literatura/Operadores lógicos]]
- [[Trie in computing]]
- [[Debugging|Debug]] e [[Debugger]]
- [[Processo de compilação de códigos]]
- [[Unicode]] e [[Código Padrão Americano para o Intercâmbio de Informação|ASCII]]
- [[Sistemas de numeração]]
- [[Análise assintótica]]
- [[Recursão]]
- [[Ponteiros]]
- [[Escopo na programação]]
- [[Ordem de Bytes]]
- Estrutura de Dados
- [[Filas em computação]]
- [[Pilhas (Computação)]]
- [[Trees na computação]]
- [[Tabela Hash (Computação)]]
- [[Trie in computing]]
- [[Alocação de memória]]
- [[Heap na alocação de memória]]
- [[Pilhas na alocação de memória]]
## Algoritmos
Aqui está uma lista de algoritmos interessantes e/ou importantes para conhecer.
- Algoritmos de busca
- [[Algoritmo de busca em profundidade]]
- [[Algoritmo de busca em largura]]
- [[Algoritmo de busca linear]]
- [[Algoritmo de busca binária]]
- Algoritmos de ordenação
- [[Algoritmo de ordenação por bolha]]
- [[Algoritmo de ordenação por seleção]]
# Linguagens
- [[Linguagem de programação C]] - É uma das principais linguagens de baixo nível e amplamente utilizada pela eficiência e baixo uso de recursos.
- [[02 - Notas de literatura/Linguagem de programação Python]] - Uma nota sobre minha linguagem de programação favorita.
- [[Rust language]] - Uma linguagem de programação de sistemas que prioriza desempenho, segurança de memória e concorrência.
- [[Linguagem de Consulta Estruturada|SQL]] - Uma linguagem para interagir com bancos de dados relacionais.
- [[JavaScript]] - Uma linguagem de programação comumente usada para programação web.
# Ferramentas
- [[Visual Studio Code]] - É um editor de código leve, multiplataforma/multilíngue que oferece recursos avançados para o desenvolvimento de software.
- [[Thonny]] - É um ambiente de desenvolvimento integrado projetado especificamente para iniciantes na programação [[02 - Notas de literatura/Linguagem de programação Python]].
- [[Arduino IDE]] - Interface de desenvolvimento integrada para programar [[Arduino]] e outros dispositivos.
# Livros
-