Académique Documents
Professionnel Documents
Culture Documents
Organizao do cdigo em mdulos, i.e., cpsulas com objectivos bem definidos contendo uma implementao oculta e expondo ao exterior uma interface. A modularizao favorece a abstraco.
Melhora estruturao do fluxo de controlo dos programas Possibilita raciocnio formal acerca de programas Aumenta legibilidade dos programas face ao passado (programao esparguete)
2
Forma
Instncias de tipos escalares ou vectoriais Instrues organizadas em estruturas de controlo Instrues e estruturas de controlo organizadas em rotinas
Modularizao em rotinas
Funes Devolvem resultado de um clculo Procedimentos Agem sobre dados, modificando-os
Melhorias
Possibilita encapsulamento Facilita reutilizao Melhora localizao de erros e facilita manuteno Possibilita maximizao da coeso e minimizao das ligaes
Forma
Instncias de tipos escalares ou vectoriais, ou de TAD (tipos abstractos de dados) Instrues organizadas em estruturas de controlo Instrues e estruturas de controlo organizadas em rotinas Rotinas relacionadas organizadas em TAD
Modularizao
TAD Conjunto de dados e operaes Operaes Rotinas que operam sobre instncias de TAD
Melhorias
Melhora encapsulamento (dados e operaes relacionadas) Possibilita ocultao dos dados Muda perspectiva sobre os problemas
4
Forma
Instncias de classes (objectos), de tipos escalares ou vectoriais, ou de TAD (tipos abstractos de dados) Instrues organizadas em estruturas de controlo Instrues e estruturas de controlo organizadas em rotinas Rotinas relacionadas organizadas em TAD Operaes relacionadas organizadas em classes
Modularizao
Classes Modelos para objectos com um dado comportamento TAD Conjunto de dados e operaes Operaes Rotinas que operam sobre instncias de TAD Mtodos Implementao das operaes
Melhorias
Introduz noes de extenso e especializao Muda drasticamente perspectiva sobre os problemas
5
Paradigmas usados
Programao estruturada Controlo de fluxo Programao procedimental Rotinas Programao centrada nos dados TAD e operaes
Vantagens
Melhor modularizao Melhor encapsulamento Maior possibilidade de reutilizao Possibilidade de extenso e especializao Maior expressividade Maior flexibilidade Maior robustez
6
Interface:
Operaes Implementadas em um ou mais mtodos Propriedades Podem ou no ser implementadas usando atributos
Implementao
Mtodos Implementao de operaes Atributos Dados que fazem parte da implementao da classe
7
Tudo (ou quase) so objectos Objectos tm responsabilidades, comportamentos e propriedades Organizao de programas reflecte realidade
Anlise do problema
Que objectos existem? Que responsabilidades tm? Como colaboram? Como classificar os objectos?
Desenho da soluo
Que classes definir? Que objectos construir? Que responsabilidades lhes atribuir? De que forma os fazer colaborar?
9
10
11