next up previous contents index
Next: Representantes (proxies) Up: Herança Previous: POOM

Conclusões

De um modo geral, todos os sistemas que utilizam herança apresentam os problemas acima.

Embora a herança, sendo uma das características principais de uma linguagem OO e esteja nela naturalmente enquadrada, providenciando alguma transparência no processamento de objectos (através, por exemplo, de polimorfismo de inclusão), não se adapta bem a outras situações, como sejam os casos em que um programa não sabe à partida que objecto deve criar. Nestes casos torna-se necessária a intervenção de um agente externo para instanciar as classes apropriadas. Outro problema é o da contaminação do código de uma classe por parte do código de controlo que se esteja a utilizar (e.g., introdução de primitivas de sincronização num método).

Note-se que nesta discussão não entraram pormenores do funcionamento dos sistemas apresentados, mas tão só acerca do modo de funcionamento utilizando herança.



David M. M. de Matos
Thu Jun 29 14:58:09 MET DST 1995