Orientação a Objetos e Java
Avaliação Escrita


Paulo Borba
Departamento de Informática
Universidade Federal de Pernambuco
15 de Julho de 1996



Questão 1 Pacotes e classes são mecanismos de modularização encontrados em algumas linguagens de programação. Explique o propósito de cada mecanismo, e descreva vantagens e desvantagens de ter os dois mecanismos em uma mesma linguagem.

Questão 2 Um dos principais fatores de qualidade de software é extensibilidade, o qual diz respeito a facilidade com que um programa pode ser modificado devido a alterações na sua especificação. Que recursos de Java favorecem extensibilidade de software? Justifique.

Questão 3 Os conceitos de subtipo e herança de código estão intimamente ligados em várias linguagens orientadas a objetos. Indique que recursos Java oferece para separar estes dois conceitos. Quais as vantagens e desvantagens desta separação?

Questão 4 Descreva quais são as principais diferenças entre os paradigmas Lógico e Funcional, considerando os seguintes aspectos: