Revisão dos conceitos básicos
As sessões anteriores apresentaram, informalmente, os principais conceitos que caracterizam a programação orientada para objetos em Smalltalk. A seguir, esses conceitos são resumidos para uma melhor apreciação em conjunto:
Todos os elementos do sistema são objetos. Todo objeto é uma
instância de alguma classe.
Cada objeto, além de possuir uma estrutura de dados particular, é
ativo, no sentido de que reage a mensagens que lhe são enviadas,
retornando um valor, que também é um objeto.
Para cada classe, suas instâncias "compreendem" apenas as mensagens
que fazem parte do seu protocolo de comunicação, rejeitando
as demais. A cada mensagem corresponde um método específico,
que fica localizado na classe.
Qualquer componente de um objeto só pode ser acessado, ou modificado,
por meio de mensagens especialmente implementadas para tal fim.
Objetos podem ter estruturas bastante gerais, e podem ser construídos
a partir de outros objetos previamente implementados. Este mecanismo permite
definir, construir e manipular estruturas de grande complexidade.
Toda a computação em Smalltak obedece ao mesmo paradigma de
classes, objetos e mensagens, formando um ambiente uniforme e integrado.
Essa característica torna possível que uma classe, uma vez
definida, possa ser utilizada em diversas aplicações, estimulando
a criação de classes de utilidade ampla.
Smalltalk é uma linguagem extensível. Ela permite criar novas classes, e para cada classe existente, permite adicionar ou retirar métodos. Isso significa que o sistema pode ser ampliado e modificado, mantendo sempre sua uniformidade.