WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content
/ computhink-101 Public template

Repositório didático de Pensamento Computacional. Aprofunda em lógica, modelos matemáticos e técnicas de análise quantitativa para resolver problemas científicos e práticos. Inclui roteiros, dicas, visualizações e explorações agnósticas de linguagem para diversos domínios, de sistemas a multimídia.

Notifications You must be signed in to change notification settings

073145/computhink-101

Repository files navigation

🧠 computhink-101: Dominando o Pensamento Computacional

"Um repositório agnóstico de linguagem para dominar o Pensamento Computacional, explorando desde os fundamentos universais até aplicações em sistemas, ciência de dados e segurança."

Bem-vindo ao meu espaço dedicado à exploração dos pilares da computação. Este projeto nasceu da paixão por entender como diferentes linguagens de programação abordam os mesmos problemas fundamentais, servindo como uma "Pedra de Roseta" para desenvolvedores, estudantes e entusiastas da tecnologia.


🚀 Filosofia e Metodologia

A abordagem deste repositório é focada na comparação e no entendimento profundo, seguindo três princípios-chave:

  • 🧠 Foco no Conceito, Não na Sintaxe: Cada exercício é centrado em um conceito ou problema fundamental. A meta é primeiro entender o "quê" e o "porquê", antes de mergulhar no "como" de cada linguagem.
  • 📚 Rosetta Stone Didática: Para cada problema, você encontrará implementações em múltiplas linguagens. Isso permite uma comparação direta de paradigmas, performance e detalhes técnicos, acelerando o aprendizado.
  • 💡 Aprendizagem Progressiva e Contextual: A estrutura guia o aprendiz desde os fundamentos da alfabetização digital e algoritmos universais até a aplicação desses conceitos em nichos do mundo real, como programação de sistemas, análise de dados e segurança da informação.

🗺️ Estrutura do Repositório

O conteúdo está organizado em módulos temáticos progressivos. Cada pasta de exercício e cada subpasta de linguagem dentro do 00-Language-Playground/ contém seu próprio README.md com a descrição do problema, exemplos e desafios/dicas.

00-Digital-Literacy-Fundamentals/

Seu verdadeiro ponto de partida para a jornada no pensamento computacional. Aqui, estabelecemos as bases essenciais para a alfabetização digital e o letramento tecnológico, garantindo que os conceitos universais sejam compreendidos antes de qualquer código.

  • Matemática Discreta Essencial: Conjuntos, relações, funções e combinatória aplicados à computação.
  • Lógica de Programação: Proposições, tabelas verdade, inferência lógica e raciocínio algorítmico.
  • Álgebra Booleana: Operadores lógicos (AND, OR, NOT, XOR), portas lógicas e sua aplicação em circuitos e código.
  • Representação Algorítmica: Diagramas de fluxo, fluxogramas (visualização de processos) e pseudocódigo (linguagem de design de algoritmo).

00-Language-Playground/

Seu ponto de partida prático com a sintaxe! Aqui você encontrará exemplos rápidos e didáticos da sintaxe básica e das características idiomáticas de cada linguagem, perfeito para um "kickstart" ou para revisar conceitos fundamentais.

01-Algoritmos-Universais/

A base da lógica e eficiência. Aqui exploramos os algoritmos clássicos de ordenação, busca e programação dinâmica que formam o alicerce de qualquer desenvolvedor.

02-Estruturas-de-Dados-Fundamentais/

As formas de organizar e gerenciar dados. Implementações de listas, pilhas, filas, hashmaps, árvores e grafos, e as trade-offs de cada uma.

03-Sistemas-e-Baixo-Nivel/

Mergulhando no controle direto de hardware e recursos do sistema operacional. Tópicos incluem gerenciamento de memória, concorrência, I/O e conceitos para sistemas embarcados.

04-Computacao-Cientifica-e-Analise-de-Dados/

Aplicando o pensamento computacional para modelar, simular e extrair insights do mundo. Inclui análise estatística, simulações numéricas e processamento de dados.

05-Scripts-Automacao-Web-e-Multimidia/

Foco em interação, automação e criatividade. Abrange desde o processamento de texto e consumo de APIs até creative coding e síntese de áudio.

06-InfoSec-e-Privacidade-Computacional/

Explorando o lado da segurança. Implementações de criptografia básica, ferramentas de análise de rede e técnicas de hacking ético para fortalecer a defesa de sistemas.


🛠️ Como Usar Este Repositório

  1. Comece pelos Fundamentos: É altamente recomendável começar em 00-Digital-Literacy-Fundamentals/ para construir uma base sólida no pensamento computacional, antes de escrever qualquer código.
  2. Acesse o Playground: Se você é novo em alguma linguagem ou quer revisar a sintaxe, vá para 00-Language-Playground/ para um guia rápido de sintaxe.
  3. Escolha um Módulo: Navegue pela estrutura acima e comece por um módulo que te interesse. Recomendo começar com 01-Algoritmos-Universais e 02-Estruturas-de-Dados para os fundamentos após a alfabetização digital.
  4. Leia o Problema: Dentro de cada pasta de exercício, leia o README.md para entender o objetivo, os requisitos e os exemplos.
  5. Tente Resolver Sozinho: Antes de olhar as soluções, tente implementar o algoritmo na sua linguagem de preferência.
  6. Compare e Aprenda: Analise as implementações nas diferentes linguagens. Observe as diferenças de sintaxe, as bibliotecas padrão utilizadas e como cada paradigma resolve o problema.

🤝 Contribuições

Este é um projeto vivo e colaborativo. Suas contribuições são muito bem-vindas!

  • Novas Implementações: Adicione uma solução em uma linguagem que ainda não está presente em um exercício.
  • Novos Exercícios: Tem uma ideia para um problema interessante? Abra uma issue para discutirmos!
  • Melhorias: Corrija bugs, melhore a documentação ou adicione mais testes.

Por favor, leia o arquivo CONTRIBUTING.md para mais detalhes sobre os padrões e o processo de contribuição.


💻 Stack de Tecnologias

Este repositório explora e compara uma vasta gama de linguagens, organizadas por seus nichos de aplicação primários:

  • Programação de Sistemas, Backend & Concorrência: C++, Rust, Go, C#, Java, Elixir
  • Scripting, Ciência de Dados & Automação: Python, Ruby, R, Julia, Lua
  • Desenvolvimento Web, Frontend & Mobile: JavaScript, TypeScript, PHP, Dart
  • Paradigmas Funcionais & Acadêmicos: Haskell

📜 Licença

Este repositório é distribuído sob a licença MIT. Sinta-se à vontade para usar, modificar e distribuir o conteúdo.

About

Repositório didático de Pensamento Computacional. Aprofunda em lógica, modelos matemáticos e técnicas de análise quantitativa para resolver problemas científicos e práticos. Inclui roteiros, dicas, visualizações e explorações agnósticas de linguagem para diversos domínios, de sistemas a multimídia.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published