Repositório educacional completo com materiais didáticos para o curso de graduação em Ciência da Computação e Informática
Este repositório contém uma coleção abrangente de exemplos práticos, exercícios, projetos e materiais de apoio organizados por disciplinas. Todo o conteúdo foi desenvolvido para facilitar o aprendizado e fornecer uma base sólida para estudantes de computação.
- 🌐 Site do repositório (Em construção)
Este repositório está organizado em 5 grandes áreas do conhecimento que cobrem toda a grade curricular de Ciência da Computação, seguindo uma progressão pedagógica do básico ao avançado:
Disciplinas fundamentais que formam a base para todos os estudos em computação.
🎯 Disciplinas:
- Organização de Computadores: Arquitetura, sistemas de numeração, portas lógicas, memória, CPU, ISA
- Perguntas sobre Computação: Revisão e consolidação de conceitos fundamentais
2️⃣ 💻 Programação - Programação Multiplataforma
Área focada no desenvolvimento de habilidades de programação em múltiplas linguagens e paradigmas.
🎯 O que você aprenderá:
- Java: Desde conceitos básicos até programação orientada a objetos avançada e padrões de design
- PHP: Desenvolvimento web, orientação a objetos, integração com banco de dados e geração de PDFs
- Python: Fundamentos de programação e conceitos de POO
- C#: Programação .NET e desenvolvimento de aplicações
- Java EE: Desenvolvimento empresarial com tecnologias Java
- Programação Java Web: Arquiteturas web, sistemas multicamadas e serviços REST
📁 Estrutura:
java/- Programação Java completa (básico ao avançado)php/- Desenvolvimento PHP (web, OOP, banco de dados, PDF)python/- Python e programação orientada a objetoscsharp/- Programação C# e .NETjava-ee/- Java Enterprise Editionprogramacao-java-web/- Desenvolvimento web com Javadepuracao/- Técnicas de debugging e resolução de problemas
3️⃣ 🗄️ Banco de Dados - Sistemas de Banco de Dados
Área dedicada ao estudo completo de sistemas de gerenciamento de banco de dados, desde fundamentos até SQL avançado.
🎯 O que você aprenderá:
- SQL Básico: Fundamentos de SQL, modelagem e estruturas de tabelas (Módulos 01-09)
- SQL Avançado: Consultas complexas, JOINs, subqueries, views e otimização (Módulos 10-17)
- Modelagem de Banco de Dados: Design e estruturação de bancos relacionais
- Linguagem de Procedure: PL/SQL e programação em banco de dados
- Projetos Práticos: Sistemas completos (MusiStream, E-commerce, Barbearia)
📁 Estrutura:
sql-basico/- Curso SQL fundamentos (módulos 01-09)sql-avancado/- Curso SQL avançado (módulos 10-17)projetos/- Projetos práticos completos (streaming musical, e-commerce, etc)modelagem-banco-dados/- Conceitos e práticas de modelagemlinguagem-procedure/- PL/SQL e procedimentos armazenadosscripts-sql/- Coleção de scripts organizados por SGBDsistemas-distribuidos/- Bancos de dados distribuídos
Área que combina análise de dados, estatística, métodos numéricos e computação científica.
🎯 O que você aprenderá:
Ciência de Dados:
- Análise de dados com Python e bibliotecas especializadas (Pandas, NumPy)
- Visualização de dados e criação de dashboards
- Estatística aplicada para tomada de decisões
- Processamento de dados e limpeza de datasets
- Pré-processamento para machine learning
Métodos Numéricos:
- Algoritmos numéricos para solução de equações
- Análise de erros em computação científica
- Método dos Mínimos Quadrados para ajuste de curvas
- Implementação em Python com NumPy e Matplotlib
📁 Estrutura:
ciencia-dados/- Notebooks Jupyter, análise exploratória, projetos práticosmetodos-numericos/- Computação científica, algoritmos numéricos, MMQ
5️⃣ 🚀 Engenharia de Software
Área dedicada ao desenvolvimento profissional de software, boas práticas, modelagem e gestão de projetos.
🎯 O que você aprenderá:
Modelagem de Sistemas:
- Diagramas UML (casos de uso, classes, sequência, atividades)
- Princípios de POO aplicados ao design de sistemas
- Padrões de projeto e boas práticas de design
- Arquitetura de software e design patterns
Versionamento:
- Git: Fundamentos, algoritmos internos, workflows profissionais
- GitHub: Issues, Pull Requests, Actions, Pages, colaboração open source
- Boas Práticas: Metodologias de Microsoft, Google, GitLab e Atlassian
Disciplina de Projetos:
- Design Thinking e identificação de problemas sociais
- Desenvolvimento de MVP funcional em 3 meses
- Gestão de projetos: Metodologias ágeis e Scrum
- Trabalho em equipe e apresentação de resultados
📁 Estrutura:
modelagem-sistemas/- UML, POO, padrões de projetoversionamento/- Git, GitHub, workflows e boas práticasdisciplina-projetos/- Projetos com impacto social, gestão ágil
📖 Explorar Engenharia de Software →
- Estudantes de graduação em Ciência da Computação, Informática e áreas relacionadas
- Professores buscando material didático estruturado
- Desenvolvedores iniciantes querendo aprender novas tecnologias
- Profissionais em transição de carreira para TI
- Conhecimento básico de lógica de programação
- Ambiente de desenvolvimento configurado (IDEs, editores)
- Git para versionamento de código
- Curiosidade e dedicação para aprender! 🎯
- Escolha sua área de interesse nas seções acima
- Acesse o diretório correspondente e leia o README específico
- Siga a sequência recomendada de estudos em cada área
- Pratique com os exemplos fornecidos
- Resolva os exercícios propostos
- Experimente modificações para consolidar o aprendizado
| Área | Tecnologias | Ferramentas |
|---|---|---|
| Fundamentos | Arquitetura, Sistemas Numéricos, Lógica Digital | Simuladores de circuitos |
| Programação | Java, PHP, Python, C# | IDEs, Git, Maven, Composer |
| Banco de Dados | SQL, PL/SQL, Oracle, MySQL, PostgreSQL | Oracle DB, SQL Developer, MySQL Workbench |
| Ciência de Dados | Python, Pandas, NumPy, Matplotlib | Jupyter Notebook, Scikit-learn |
| Engenharia de Software | UML, Git, GitHub, Metodologias Ágeis | Draw.io, GitHub Projects, Scrum |
Contribuições são muito bem-vindas! Este é um projeto educacional colaborativo.
- 🐛 Reportar erros nos códigos ou documentação
- 📝 Melhorar exemplos existentes ou adicionar novos
- 🔧 Corrigir bugs ou problemas técnicos
- 📚 Adicionar novos conteúdos ou tecnologias
- 🌍 Melhorar documentação e traduzir conteúdos
- Como contribuir - Guia completo
- Guia de estilo para colaboradores - Padrões do projeto
- Guia de revisão de código - Boas práticas
- Comandos Git essenciais - Referência rápida
- ✅ Fundamentos de Computação: Conteúdo completo de organização de computadores (20 aulas)
- ✅ Programação: Conteúdo completo e atualizado (Java, PHP, Python, C#, Java EE, Java Web)
- ✅ Banco de Dados: Curso SQL estruturado com 17 módulos + projetos práticos
- ✅ Engenharia de Software: Modelagem UML, Git/GitHub completo, disciplina de projetos
- 🔄 Ciência de Dados: Em expansão contínua
- 🔄 Métodos Numéricos: Notebooks em desenvolvimento
Este repositório visa proporcionar uma formação completa em ciência da computação através de:
- 📖 Teoria fundamentada: Conceitos sólidos e atualizados
- 💻 Prática intensiva: Muitos exemplos e exercícios
- 🛠️ Projetos reais: Aplicações práticas do conhecimento
- 🌟 Padrões profissionais: Boas práticas da indústria
- 🚀 Preparação para o mercado: Skills relevantes e demandadas
- 📚 Dúvidas técnicas: Consulte os READMEs específicos de cada área
- 🐛 Problemas: Abra uma issue
- 💡 Sugestões: Use as discussions
Este material é disponibilizado para fins educacionais como parte dos cursos de graduação. Sinta-se livre para usar, modificar e compartilhar respeitando os princípios acadêmicos.
🎓 Desenvolvido com dedicação para formar os profissionais de TI do futuro
Universidade Nove de Julho - Ciência da Computação
⭐ Se este repositório te ajudou, considere dar uma estrela! ⭐