Pular para o conteúdo
Matérias

Ciência da Computação Universitária

Dicas

This course follows a typical computer science degree from the first program to machine learning. It starts with programming fundamentals e discrete mathematics, then builds up: object-oriented design, data structures and algorithms, computer architecture, operating systems, databases and networks. Later parts cover algorithm design, the theory of computation and compilers, software engineering, and AI and machine learning.

Two habits matter more than any language. First, write and run code every week: reading a solution is not the same as producing one. Second, reason about cost. A university answer must say how the running time grows with the input, written as Big-O, and why the algorithm is correct, not only that it worked on one test.

Discrete maths can feel separate from programming. It is not. Prova por indução is how you show a recursive function is right, and graphs are behind maps, networks and compilers.

  • 1

    Fundamentos de Programação

    • 1.1 O que este curso é e como usá-lo
    • 1.1 Valores, tipos e entrada/saída
    • 1.2 Seleção: escolher entre caminhos
    • 1.3 Iteração: fazendo novamente
    • 1.4 Funções: nomeando um trabalho uma vez
    • 1.5 Coleções: listas, dicionários, tuplas, conjuntos
    • 1.6 Arquivos e erros
    • 1.7 Decomposição, teste e depuração
  • 2

    Matemática Discreta

    • 2.1 Lógica e provas
    • 2.2 Conjuntos, funções e relações
    • 2.3 Indução e recursão
    • 2.4 Contagem e combinatoria
    • 2.5 Grafos e árvores
    • 2.6 Probabilidade discreta
  • 3

    Fundamentos de Sistemas Computacionais

    • 3.1 Codificação binária e de dados
    • 3.2 Portas lógicas e blocos digitais
    • 3.3 Visão geral de processador e memória
    • 3.4 Instruções de máquina
    • 3.5 Interface do sistema operacional
    • 3.6 Caminho de compilação e execução
  • 4

    Programação Orientada a Objetos

    • 4.1 Objetos e classes
    • 4.2 Encapsulamento
    • 4.3 Composição e herança
    • 4.4 Interfaces e polimorfismo
    • 4.5 Exceções e tratamento de erros
    • 4.6 Testes e qualidade de projeto
  • 5

    Estruturas de Dados e Algoritmos

    • 5.1 Análise assintótica
    • 5.2 Listas, pilhas e filas
    • 5.3 Hashing
    • 5.4 Árvores e montículos
    • 5.5 Grafos e travessia
    • 5.6 Ordenação
    • 5.7 Busca
  • 6

    Arquitetura de Computadores

    • 6.1 Arquitetura do conjunto de instruções
    • 6.2 Caminho de dados e controle
    • 6.3 Pipeline
    • 6.4 Hierarquia de memória
    • 6.5 Entrada/saída
    • 6.6 Paralelismo e desempenho
  • 7

    Sistemas Operacionais

    • 7.1 Processos e threads
    • 7.2 Escalonamento
    • 7.3 Sincronização
    • 7.4 Memória virtual
    • 7.5 Sistemas de arquivos
    • 7.6 Proteção e segurança
  • 8

    Bancos de Dados

    • 8.1 Modelagem relacional
    • 8.2 Álgebra relacional e SQL
    • 8.3 Normalização
    • 8.4 Índices e planos de consulta
    • 8.5 Transações e concorrência
    • 8.6 Segurança e governança de dados
  • 9

    Redes de computadores

    • 9.1 Camadas e arquitetura
    • 9.2 Camada de enlace e IP
    • 9.3 Rotear
    • 9.4 Transporte (TCP/UDP)
    • 9.5 Protocolos de aplicação
    • 9.6 Segurança de rede
    • 9.7 Fundamentos de sistemas distribuídos
  • 10

    Projeto e Análise de Algoritmos

    • 10.1 Recorrências e ferramentas de análise
    • 10.2 Dividir para conquerar
    • 10.3 Algoritmos gananciosos
    • 10.4 Programação dinâmica
    • 10.5 Otimização de grafos
    • 10.6 Reduções e NP-completude
  • 11

    Teoria da Computação e Compiladores

    • 11.1 Autômatos e linguagens regulares
    • 11.2 Linguagens livres de contexto e teoria de análise
    • 11.3 Computabilidade
    • 11.4 Análise léxica
    • 11.5 Análise sintática
    • 11.6 Análise semântica e geração de código
  • 12

    Engenharia de Software

    • 12.1 Requisitos
    • 12.2 Arquitetura e projeto
    • 12.3 Interação Humano-Computador e acessibilidade
    • 12.4 Controle de versão e trabalho em equipe
    • 12.5 Testes e integração contínua
    • 12.6 Segurança e ética profissional
    • 12.7 Projeto em equipe
  • 13

    Inteligência Artificial e Aprendizado de Máquina

    • 13.1 Pesquisar
    • 13.2 Conhecimento e raciocínio
    • 13.3 Modelos probabilísticos
    • 13.4 Regressão e classificação
    • 13.5 Otimização e aprendizado
    • 13.6 Avaliação e vazamento
    • 13.7 Equidade e limitações

Entrar ou criar conta

IGCSE, A-Level & AP