Técnicas para Modularização

Programação 3: Orientação a Objetos e Java


Suporte Linguístico

Os princípios para modularidade indicam como sistemas devem ser estruturados para que sejam modulares.

É importante também saber que recursos (estruturas e conceitos) linguísticos dão suporte a estes princípios e, por conseqüência, a modularidade.

Pacotes

Pacotes com Informações Escondidas

Usando este recurso linguístico, podemos definir dois tipos diferentes de módulos:

Pacotes Parametrizados

Linguagens Orientadas a Objetos

Os recursos linguísticos apresentados acima suportam vários dos princípios para modularidade, oferecendo muitas vantagens, do ponto de vista de reusabilidade e estensibilidade.

De fato, alguns destes recursos compartilham idéias centrais com orientação a objetos. No entanto, como veremos nas aulas a seguir, os recursos oferecidos por linguagens orientadas a objetos favorecem ainda mais a reusabilidade e estensibilidade de software. Em particular, objetos são cidadãos de primeira classe (podem ser argumentos ou resultado de operações, etc.) e herança e `dynamic binding' são a chave para se ter sistemas abertos/fechados.


Leitura

  1. Capítulos 3 e 4 da Referência 3.
  2. Capítulo 6 da Referência 12 (opcional).


Paulo Borba (phmb@di.ufpe.br)