
JavaScript é a linguagem que este guia usa para mostrar os fundamentos, porque ela deixa cada
decisão à vista: nada obriga a nomear bem, a sair cedo de uma função ou a manter o fluxo plano.
O que você aprende aqui viaja com você. Nomes expressivos, guard clauses, funções pequenas e
fluxo linear valem igual em C#, Python ou Go, e cada página aponta o equivalente na outra
linguagem quando ele existe.
→ Referência rápida: nomenclatura, verbos, nomes proibidos, tipos, controle de fluxo
O que se decide antes da primeira linha de domínio: onde a configuração é lida, como os módulos
se dividem e onde os segredos ficam.
| Tópico |
Conceitos |
| Fundação do projeto |
Entry point, módulos por domínio, config, middleware |
| Segurança |
Segredos, variáveis de ambiente, dotenv, JWT |
| Tópico |
Conceitos |
| Variáveis |
const, let, valor fixo por padrão |
| Nomes |
camelCase, UPPER_CASE, ordem semântica, inglês |
| Funções |
Tamanho, top-down, retorno direto |
| Controle de fluxo |
Guard clauses, retorno antecipado, iterações |
| Densidade visual |
Agrupamento de linhas, return separado, fases do método |
| Tópico |
Conceitos |
| Tratamento de erros |
Erros tipados, try/catch nos limites do sistema |
| Programação assíncrona |
async/await, evitar bloqueio |
| Testes |
AAA, assert com significado, isolamento |
| Performance |
for...of, Set, montagem de string |
| Observabilidade |
Log estruturado, níveis, PII, correlationId |
| Validação |
Sanitize, Zod, regras de negócio, filtro de saída |
| Datas |
UTC, ISO 8601, interpretação de texto, Temporal API |
| Modelagem de entidades |
Ponteiro enxuto ao canônico shared, privacidade com #field, Object.freeze, Symbol.iterator, instanceof no limite |
| Referência rápida |
Nomenclatura, verbos, nomes proibidos |
| Tópico |
Conceitos |
| Bot Discord |
discord.js: conexão ao Gateway, intents, slash commands, embeds |
| Bot Telegram |
Telegraf: comandos, botões inline, middleware, webhook |
| Bot WhatsApp |
Baileys e Meta Cloud API: sessão, webhook, mensagem por template |
| Bot Slack |
Bolt for JS: ack em 3s, eventos, Block Kit, Socket Mode |
Forma: estrutura e narrativa da função
Legibilidade: fluxo, densidade visual e nomes
Controle de qualidade: estado, erros, async e testes