O documento discute conceitos fundamentais de programação orientada a objetos como:
1) Coleções de objetos trocando mensagens;
2) Classes definem objetos com identidade, estado e comportamento;
3) Encapsulamento, herança e polimorfismo permitem reutilização de código.