TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

EVOLUÇÃO DA TECNOLOGIA DA PROGRAMAÇÃO

Tese: EVOLUÇÃO DA TECNOLOGIA DA PROGRAMAÇÃO. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  3/11/2014  •  Tese  •  2.742 Palavras (11 Páginas)  •  179 Visualizações

Página 1 de 11

Introdução a Orientação a Objetos

O objetivo desse documento é dar uma noção inicial e comparativa da POO

EVOLUÇÃO DAS TÉCNICAS DE PROGRAMAÇÃO:

A evolução da programação de computadores é marcada por três desenvolvimentos de enorme impacto nos seus parâmetros de produtividade e qualidade: as linguagens de alto nível, na década de 60, as técnicas de programação estruturada [Dijkstra69], na década de 70 e, atualmente, as técnicas de orientação a objetos [Liskov77].

Foram as linguagens de alto nível, como Fortran e COBOL, que, ao permitir o desenvolvimento de programas portáveis entre diferentes computadores, tornaram economicamente viável o desenvolvimento de sistemas de grande porte, de vida útil superior a de várias gerações de computadores. O desenvolvimento de sistemas de grande porte, porém, passou a exigir programas cada vez maiores e mais complexos. O sucesso da programação estruturada se deve justamente por sistematizar o desenvolvimento desses programas, através de uma estratégia de divisão e conquista: cada programa é dividido em vários subprogramas, que são coordenados utilizando-se estruturas de controle de fluxo de execução simples e bem definidas (if-then-else, do-until, while-do, etc. ).

PROGRAMAÇÃO BASEADA EM PROCEDIMENTOS:

Aplicando as técnicas da programação estruturada a um programa para automação bancária,

por exemplo, podemos dividí-lo em quatro módulos (ou subprogramas):

manutenção de cadastros

movimentação de caixa

caixa automático

relatórios para contabilidade

O programa de manutenção de cadastros, por sua vez, divide-se em outros subprogramas, como cadastro de cliente, abertura de conta, alteração de dados da conta, e assim, sucessivamente, até obtermos subprogramas suficientemente simples e pequenos para serem codificados com facilidade. A figura 3.2 ilustra parte da estrutura desse programa.

Esse método de estruturação através de refinamentos sucessivos [Wirth71], se caracteriza por partir de uma visão global centrada em procedimentos para solução de um problema, que é detalhada gradualmente até o nível dos comandos da linguagem de programação utilizada.

Note que é criada uma hierarquia de procedimentos, com uma nítida relação de subordinação

entre os subprogramas, ou seja, os subprogramas dos níveis inferiores apenas respondendo a

requisições oriundas de um subprogrma de nível superior.

Outro ponto importante a observar é que os dados da aplicação ficam separados dossubprogramas que os manipulam. Os níveis superiores da estrutura tendem a concentrar amaior parte dos dados, que são manipulados por diversos subprogramas dos níveis inferiores.

Figura 1 - Estruturação Baseada em Procecimentos

ABSTRAÇÃO:

Abstrair consiste no processo de retirar do domínio do problema os detalhes relevantes e representá-los não mais na linguagem do domínio, e sim na linguagem da solução.

Todas as linguagens de programação fornecem abstrações. A linguagem Assembly é uma pequena abstração da máquina na qual os programas são executados; As linguagens imperativas (FORTRAN, BASIC e C) são abstrações da linguagem Assembly.

Nestas linguagens, é necessário pensar em termos da estrutura do computador, ao invés de se pensar em termos da estrutura do problema a ser resolvido!

O programador deve estabelecer uma associação entre o modelo da máquina (no espaço da solução) e o modelo do problema que está sendo resolvido (no espaço do problema). O esforço para fazer este mapeamento pode ser gigantesco ...

A programação orientada a objetos tenta trazer o espaço da solução para o espaço do problema: ambos são representados como objetos!!

O programa permite se adaptar ao problema, adicionando novos tipos ao espaço da solução que mapeiam os tipos existentes no espaço do problema è Descreve-se o problema em termos do problema e não em termos da solução!!

MAS O QUE SÃO OBJETOS?

Um objeto possui então atributos (dados) e comportamentos (métodos, procedimentos, funções, que atuam sobre ele).

Exemplos de objetos: cachorros, carros, videocassetes, edifícios, funcionários, indústrias ...

Um programa é um conjunto de objetos dizendo uns para os outros o que fazer através do envio de mensagens.

Concretamente, pode-se pensar nas mensagens como sendo chamadas a funções que pertencem a um objeto em particular.

Cada objeto tem a sua própria região de memória, que pode ser composta por outros objetos, também. Exemplo: o objeto carro pode ser composto pelos objetos lataria, rodas, motor, etc.

COMPARAÇÃO COM OUTROS ENFOQUES:

ANÁLISE ESTRUTURADA E FUNCIONAL:

Programa é dividido em um conjunto de funções e dados

As funções agem sobre os dados

Cada função tem de 10 a 100 linhas

Decomposição funcional: força o programador a fixar atenção

muito mais nos procedimentos que nos dados

ENFOQUE ESTRUTURADO versus ENFOQUE ORIENTADO A OBJETOS:

Estruturado: Ênfase nos procedimentos, implementados em

blocos estruturados, com comunicação entre procedimentos por

passagem de dados;

Enfoque OO: Dados e procedimentos fazem parte de um só

elemento básico (objeto). Os elementos básicos comunicam-se

entre si, caracterizando a execução do programa à Dados e

...

Baixar como (para membros premium)  txt (17.9 Kb)  
Continuar por mais 10 páginas »
Disponível apenas no TrabalhosGratuitos.com