PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO

Documentos relacionados
Programação de Computadores - I. Profª Beatriz Profº Israel

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

Anterior Sumário Próximo MATRIZES, DETERMINANTES E SISTEMAS

Algoritmos e Programação II

Orientação a Objetos

7. Defina encapsulamento. R.: Encapsular é ocultar. Criar uma cápsula ao redor da classe, para proteger o que está dentro dela.

Programação Orientada a Objetos. Professor Leonardo Cabral - Larback

6 CONCEPÇÃO BÁSICA DO SISTEMA DE APOIO À DECISÃO

Produção de Vídeos Didáticos: Tábua de Galton

Linguagens e Técnicas de Programação II

Análise e Projeto de Sistemas OO

BANCO DE DADOS I AULA 2. Willamys Araújo willamysaraujo7@gmail.com

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula

Processo de Desenvolvimento de Software

1.1. Definição do Problema

Nº horas ESTRATÉGIAS RECURSOS AVALIAÇÃO

SOFTWARE PARA O ENSINO DE POLINÔMIO

INTEGRAÇÃO JAVA COM ARDUINO

LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS.

Engenharia de Software

O SOFTWARE R EM AULAS DE MATEMÁTICA

PLANEJAMENTO SIMPLIFICADO DE PROJETOS

PESQUISA PRÉVIA DE PREÇOS

Programação de Computadores I. Linguagem C Função

Administração Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Algoritmos e Programação : Conceitos e estruturas básicas. Hudson Victoria Diniz

Este caderno, com oito páginas numeradas sequencialmente, contém cinco questões de Geografia. Não abra o caderno antes de receber autorização.

Programação em JAVA. Subtítulo

Eixo Temático: (Resolução de Problemas e Investigação Matemática) TRABALHANDO COM A TRIGONOMETRIA

Introdução à Programação. Funções e Procedimentos. Prof. José Honorato F. Nunes honoratonunes@gmail.com

Guia de desenvolvimento de um aplicativo para o sistema operacional Android

Estruturas de Repetição

O que é Microsoft Excel? Microsoft Excel. Inicialização do Excel. Ambiente de trabalho

UTILIZAÇÃO DE ARQUITETURA EM CAMADAS BASEADA NO MODEL VIEW CONTROLLER, EM APLICAÇÕES WEB

MANUAL DE UTILIZAÇÃO DO AUTO ATENDIMENTO SETOR PÚBLICO DO BANCO DO BRASIL

MANUAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) DA COOEPE Perfil de Aluno

Qualidade de Produto. Maria Cláudia F. P. Emer

EMENTA. Curso de Projetos Microcontrolados utilizando Linguagem C.

4 Um processo para a elaboração de perguntas de questionários para a elicitação de requisitos de software

SICLOM Mapa Mensal. 1 Mapa Mensal. Versão: Manual de preenchimento do mapa mensal no SICLOM Gerencial

Cadastro de Usuários Manual de Usuário 09/05/2011 FAPESP

CÁLCULO DO MODELO NUMÉRICO (MDT)

Engenharia Econômica

Herança. Prof. Leonardo Barreto Campos 1

PROGRAMA TERRITÓRIOS DA CIDADANIA. # Manual Operacional # Matriz de Ações 2013

1 Natuur Online Cadastre-se Cadastre-se Tipo de Usuário Consultor

Erros e Incertezas. Rafael Alves Batista Instituto de Física Gleb Wataghin Universidade Estadual de Campinas (Dated: 10 de Julho de 2011.

Documento de Requisitos do Sistema SISFOTO Sistema de gerenciamento de eventos fotográficos Versão 1.0

O QUESTIONÁRIO NA PESQUISA CIENTÍFICA Anivaldo Tadeu Roston Chagas Mestre em Administração pela USP e professor da Universidade Católica de Campinas

Metodologias de Programação

GUIA SISTEC ÓRGÃO VALIDADOR

Introdução. Qualidade de Produto. Introdução. Introdução ISO/IEC Normas

Universidade Paulista

Gerenciamento de Integração. Prof. Anderson Valadares

Glossário Versão 1.0 Desenvolvimento do Sistema de Gestão de Documentos Doc Manager Histórico de Revisão

CAPÍTULO O Método Simplex Pesquisa Operacional

PESQUISA OPERACIONAL: NA TOMADA DE DECISÕES ADMINISTRATIVA

Linguagens de Programação:

Plano de Ensino PROBABILIDADE E ESTATÍSTICA APLICADA À ENGENHARIA - CCE0292

3. Numerar a coluna da direita conforme a da esquerda 1) Classe (2) :Aluno 2) Um dado objeto (3) oaluno:aluno 3) Objeto (1) Aluno

RioCard Saúde Presente

EXPLORANDO A RESOLUÇÃO DE PROBLEMAS COM O MAPLE

DISTRIBUIÇÃO DE FREQUÊNCIA DE VARIÁVEIS QUALITATIVAS E QUANTITATIVAS DISCRETAS (TABELAS E GRÁFICOS)

LÓGICA E ROBÓTICA PRIMEIRAS IMPRESSÕES

Manual Escrituração Fiscal Digital

Programação Orientada a Objetos

Montadores e Compiladores

Tutorial de utilização do Sistema E-CONTROLE. Maio 2013

Guia de Procedimentos Bloco C (SPED PIS/COFINS) Introdução... 2

Backup. O que é um backup?

Cursos Educar [PRODUÇÃO DE ARTIGO CIENTÍFICO] Prof. M.Sc. Fábio Figueirôa

Projeto Integrador Gestão em TI II Gestão em Pessoas. Organograma DIRETOR DEPARTAMENTO DE T.I ANALISTA TÉCNICO

O SOFTWARE LIVRE COMO FERRAMENTA DE ENSINO

Linguagens e códigos digitais

Programa Competências Transversais

País(es) : Brasil Banco(s) de Dados : Progress/Oracle

NORMA TÉCNICA E PROCEDIMENTOS PARA REALIZAR ALTERAÇÕES NO BANCO DE DADOS CORPORATIVO

Matemática Aplicada às Ciências Sociais

ORIENTAÇÕES TRABALHO EM EQUIPE. Trabalho em Equipe. Negociação

O que será Impresso: Serão emitidos na DANFE, Cupom Fiscal o valor Total dos Tributos e o percentual deste sobre o Total da Operação de Venda.

alocação de custo têm que ser feita de maneira estimada e muitas vezes arbitrária (como o aluguel, a supervisão, as chefias, etc.

Aula Extra. Depurador Code::Blocks. Monitoria de Introdução à Programação

ANÁLISE DO LAYOUT DE UMA INDÚSTRIA MOVELEIRA Luiz Augusto Perret*, Giordano Marques Corradi, Eduardo da Silva Lopes, Éverton Hillig

Manual SAGe Versa o 1.1

Universidade do Estado do Rio de Janeiro Faculdade de Engenharia Departamento de Engenharia Eletrônica e de Telecomunicações

OpenPDV: Sistema aberto para gerenciamento de restaurantes

Serviço de Edição e Informação Técnico-Científica/abril 2012 SISTEMA DE INFORMAÇÃO DO CÂNCER (SISCAN)

UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS CCT DEPTO. DE ENG. DE PRODUÇÃO E SISTEMAS 1 REDES PERT-CPM

PROCEDIMENTO DO CLIENTE

Quanto aos objetivos TIPO DE PESQUISA

MODELAGEM MATEMÁTICA DE UM SISTEMA DE DISTRIBUIÇÃO DE ENERGIA ELÉTRICA EM MÉDIA TENSÃO 1. Gabriel Attuati 2, Paulo Sausen 3.

Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C. Exercícios: Structs

Modelando sistemas em UML - Casos de uso.

Transcrição:

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO A Programação Orientada ao Objeto deu seus primeiros passos ainda na década de 70. A sua origem vem da linguagem Simula (Simula Language) e como o nome indica linguagem para fazer simulações, desenvolvida na Noruega no início da década de 60; caracterizava-se pela similaridade com o mundo real. Após surgiu a linguagem Smalltalk que foi desenvolvida pela Xerox, e é considerada a linguagem que popularizou a aplicabilidade da Programação Orientada a Objeto. A reutilização de códigos sem dúvida nenhuma é uma das grandes vantagens da Programação Orientada a Objeto, sendo o oposto das linguagens procedurais, é uma maneira diferente de pensar englobando o objeto, que dentro a orientação a objeto nada mais é do que um bloco de dados envolto por códigos que serão usados em uma aplicação (software). Com a Programação Orientada a Objeto temos que pensar uma aplicação de maneira distinta, pois ao programar; dá-se maior ênfase a visualização dos objetos e seus relacionamentos do que a uma rotina de procedimentos e ações emprega na programação procedual. 1. PROGRAMAÇÃO ORIENTADA A OBJETO 1.1 Orientação a Objeto Orientação a Objeto é o nome que os pesquisadores da década de 70 usaram para batizar, essa nova forma de programar, que nada mais é do que uma maneira para desenvolver sistemas mais compreensível ao raciocino do ser humano. Na Orientação a Objeto, descrevem-se as soluções através de objetos, como no mundo real, o oposto da programação estruturada (procedual) que o faz através de comandos e procedimentos.

1.2 Conceitos Objeto é todo o corpo físico que pode ser apreendido pelo sentimento humano, ou seja, que pode ser compreendido pela nossa inteligência. Emprega-se o termo objeto para os corpos físicos trabalhados pelo homem, como por exemplo, aparelho telefônico, uma escultura, carro ou um software com interface gráfica para o usuário. No que diz respeito à Programação Orientada a Objeto, o objeto representa algo real ou virtual, formado por propriedades (variáveis) e procedimentos (métodos). As variáveis definem os valores que podem representar como número inteiro, número real, caractere. Enquanto métodos são rotinas que ao serem executadas alteram o conteúdo da variável do objeto. Um exemplo de objeto real e físico seria uma casa, está por sua vez possui propriedades como: número de portas e janelas, tamanho e conforto. O objeto casa também possuí procedimentos, como entrar, como arrumá-la entre outros. Outro exemplo menos real, mas não menos importante seria um software qualquer, que tem uma de suas propriedades, senha de acesso e como procedimento associado à propriedade: alterar, criar ou apagar a senha. Estes objetos têm características, que dentro da Orientação a Objeto seriam definidos como atributos, como por exemplo: cor, tamanho, modelo, interface gráfica entre outros. O conceito de ação é a operação efetuada pelo objeto. Todas as janelas, por exemplo, controlam a iluminação e temperatura ambiente, dependendo do seu design. Outro termo utilizado na Programação Orientada a Objeto é a classe, que é algo abstrato. A classe é construída pelo programador, onde ficarão os códigos do programa, e será utilizada por meio de uma da declaração de uma variável. Classe seria um molde que construído uma vez servirá para diversos objetos. A Programação Orientada a Objeto, é uma forma de programar, mais próxima da natureza do ser humano do que outros tipos de programação. Isto porque dês de os tempos primórdios, nos fazemos valer de nossa capacidade de raciocínio e abstração para resolvermos os mais variados tipos de situações que se apresentam no cotidiano. A necessidade de contar os rebanhos e a produção

agrícola para ter um controle melhor, fez o homem desenvolver os numerais, as primeiras máquinas de calcular surgiram da necessidade de obterem-se cálculos exatos em um curto espaço de tempo. 2. PRINCÍPIOS DA PROGRAMAÇÃ ORIENTADA A OBJETO 2.1 Abstração: Abstração é a capacidade de abstrairmos algo, sem esquecer as suas características básicas. O ser humano demonstra facilmente o uso da abstração para imaginar coisas. Tomamos por exemplo o automóvel citado nos exemplos acima; ao fecharmos os olhos e o imaginarmos, provavelmente imaginaremos o automóvel de maneira diferente uns dos outros. Colocando neste as informações que achamos necessárias para a sua função, não levando em conta se o mesmo é novo ou velho, possuí duas ou quatro portas ou se nacional ou importado; o que importa é que tenha as informações necessárias para o cumprimento de sua função. Um exemplo básico de abstração de dados é: a criação de uma tabela de produtos em um determinado banco de dados, ao abstrair um determinado produto e suas informações necessárias para sua utilização. E a linguagem de programação utilizada possibilitar referir-se a tabela como um todo, atinge-se um objetivo da abstração de dados. Pois a linguagem deve propiciar a passagem de um registro para uma função, não apenas de um campo para outro. Por conta disso se em uma tabela de banco de dados tivermos os seguintes campos: valor unitário de um produto e quantidade do produto, não tem como na tabela especificarmos o campo valor total, pois este é um campo calculado e dependerá dos dados digitados pelo usuário do sistema para realizar a operação de multiplicação. O campo valo total deverá ser adicionado por meio da linguagem de programação utilizada no desenvolvimento.

2.2 Encapsulamento Encapsulamento é esconder do programador as linhas de código que estão por trás de uma determinada classe de um objeto, ele poderá modificar as propriedades e métodos, mas não sabe como está implementado, ou seja o código está encapsulado. 2.3 Herança Herança é um mecanismo empregado dentro da orientação a objeto, que permite a reutilização dos códigos. Também pode ser entendido como um conjunto de códigos criados a partir de um outro conjunto de códigos com características semelhantes, e estes herdam todas as características do conjunto original. Dentro deste contexto é possível criar novas classes a partir de uma já existente, e estas classes criadas herdam características da original, podendo ter propriedades e métodos próprios, isto torna o mecanismo herança uma técnica eficaz na construção, organização e reutilização do código. Esta nova classe criada, se comportará de maneira diferente apenas naquilo que foi alterado nela, em relação à classe original ou primária. 2.4 Polimorfismo Polimorfismo significa, de várias formas, na Programação Orientada a Objeto, é definido como um código que possuí várias formas ou vários comportamentos em diferentes classes de objetos. Sem que isto interfira em seu funcionamento, o mesmo pode comportar-se de maneira diferente em classes distintas de objetos, e estes reagirem de formas diferentes. 3.0 VANTAGENS DA PROGRAMAÇÃO ORIENTADA A OBJETO Com o crescimento, complexidade e demanda de novos sistemas, a Programação Orientada a Objeto se mostra apta a suprir as necessidades dos desenvolvedores. Implementando as seguintes vantagens:

Exatidão: Devido a pouca quantidade de código programável, reduz os problemas relacionados à mudança de rotinas durante o desenvolvimento de um projeto. Potencialidade: A forma como os programas se portam perante erros imprevistos. Extensibilidade: Um sistema desenvolvido na Linguagem Orientada a Objeto, tem a possibilidade de adequar-se de forma melhor às especificações definidas na análise do sistema, principalmente no layout de telas. Reutilização: Com a reutilização dos códigos no desenvolvimento de um sistema, otimiza a produtividade do programador. Mas depende de como o software de desenvolvimento disponibilizará a sua reutilização. 4.0 CONSIDERAÇÕES FINAIS Com o término deste trabalho sobre a Programação Orientada a Objeto, podem-se tirar as seguintes conclusões. Primeiro, a abordagem Orientada a Objeto é a maneira mais eficiente no desenvolvimento de sistemas altamente complexos. Segundo, a estreita relação com o mundo real permite-nos termos um melhor entendimento do assunto, quando o mesmo é tratado com exemplos cotidianos. 5.0 REFERÊNCIAS BIBLIOGRÁFICAS RIBEIRO, José Ricardo Cosme Lerias. Curso de Delphi 7: Passo a Passo. Goiânia: Ed. Terra, 2004. Revista Espaço Acadêmico Nº. 35 Abril de 2004 Introdução a Programação Orientada a Objeto. Disponível em: http://www.espacoacademico.com.br/035/35amsf.htm (consultado em 20 de abril de 2006). Linha de Código Programação Orientada a Objeto. Disponível em: http://www.linhadecodigo.com.br/artigos.asp?id_ac=506, (consultado em 20 de abril de 2006). CriaWeb O que é Programação Orientada a Objeto. Disponível em: http://www.criarweb.com/artigos/215.php?manual=11, (consultado em 20 de abril de 2006).

Revista UNICAMP Programação Orientada ao Objeto: uma abordagem didática. Disponível em: http://www.revista.unicamp.br/infotec/artigos/leite_rahal.html (consultado em 10 de maio de 2006). Training Programação Orientada a Objeto. Disponível em: http://www.training.com.br/lpmaia/pub_prog_oo.htm (consultado em 10 de maio de 2006).

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO A Programação Orientada ao Objeto deu seus primeiros passos ainda na década de 70. A sua origem vem da linguagem Simula (Simula Language) e como o nome indica linguagem para fazer simulações, desenvolvida na Noruega no início da década de 60; caracterizava-se pela similaridade com o mundo real. Após surgiu a linguagem Smalltalk que foi desenvolvida pela Xerox, e é considerada a linguagem que popularizou a aplicabilidade da Programação Orientada a Objeto. A reutilização de códigos sem dúvida nenhuma é uma das grandes vantagens da Programação Orientada a Objeto, sendo o oposto das linguagens procedurais, é uma maneira diferente de pensar englobando o objeto, que dentro a orientação a objeto nada mais é do que um bloco de dados envolto por códigos que serão usados em uma aplicação (software). Com a Programação Orientada a Objeto temos que pensar uma aplicação de maneira distinta, pois ao programar; dá-se maior ênfase a visualização dos objetos e seus relacionamentos do que a uma rotina de procedimentos e ações emprega na programação procedual. 1. PROGRAMAÇÃO ORIENTADA A OBJETO 1.1 Orientação a Objeto Orientação a Objeto é o nome que os pesquisadores da década de 70 usaram para batizar, essa nova forma de programar, que nada mais é do que uma maneira para desenvolver sistemas mais compreensível ao raciocino do ser humano. Na Orientação a Objeto, descrevem-se as soluções através de objetos, como no mundo real, o oposto da programação estruturada (procedual) que o faz através de comandos e procedimentos.

1.2 Conceitos Objeto é todo o corpo físico que pode ser apreendido pelo sentimento humano, ou seja, que pode ser compreendido pela nossa inteligência. Emprega-se o termo objeto para os corpos físicos trabalhados pelo homem, como por exemplo, aparelho telefônico, uma escultura, carro ou um software com interface gráfica para o usuário. No que diz respeito à Programação Orientada a Objeto, o objeto representa algo real ou virtual, formado por propriedades (variáveis) e procedimentos (métodos). As variáveis definem os valores que podem representar como número inteiro, número real, caractere. Enquanto métodos são rotinas que ao serem executadas alteram o conteúdo da variável do objeto. Um exemplo de objeto real e físico seria uma casa, está por sua vez possui propriedades como: número de portas e janelas, tamanho e conforto. O objeto casa também possuí procedimentos, como entrar, como arrumá-la entre outros. Outro exemplo menos real, mas não menos importante seria um software qualquer, que tem uma de suas propriedades, senha de acesso e como procedimento associado à propriedade: alterar, criar ou apagar a senha. Estes objetos têm características, que dentro da Orientação a Objeto seriam definidos como atributos, como por exemplo: cor, tamanho, modelo, interface gráfica entre outros. O conceito de ação é a operação efetuada pelo objeto. Todas as janelas, por exemplo, controlam a iluminação e temperatura ambiente, dependendo do seu design. Outro termo utilizado na Programação Orientada a Objeto é a classe, que é algo abstrato. A classe é construída pelo programador, onde ficarão os códigos do programa, e será utilizada por meio de uma da declaração de uma variável. Classe seria um molde que construído uma vez servirá para diversos objetos. A Programação Orientada a Objeto, é uma forma de programar, mais próxima da natureza do ser humano do que outros tipos de programação. Isto porque dês de os tempos primórdios, nos fazemos valer de nossa capacidade de raciocínio e abstração para resolvermos os mais variados tipos de situações que se apresentam no cotidiano. A necessidade de contar os rebanhos e a produção

agrícola para ter um controle melhor, fez o homem desenvolver os numerais, as primeiras máquinas de calcular surgiram da necessidade de obterem-se cálculos exatos em um curto espaço de tempo. 2. PRINCÍPIOS DA PROGRAMAÇÃ ORIENTADA A OBJETO 2.1 Abstração: Abstração é a capacidade de abstrairmos algo, sem esquecer as suas características básicas. O ser humano demonstra facilmente o uso da abstração para imaginar coisas. Tomamos por exemplo o automóvel citado nos exemplos acima; ao fecharmos os olhos e o imaginarmos, provavelmente imaginaremos o automóvel de maneira diferente uns dos outros. Colocando neste as informações que achamos necessárias para a sua função, não levando em conta se o mesmo é novo ou velho, possuí duas ou quatro portas ou se nacional ou importado; o que importa é que tenha as informações necessárias para o cumprimento de sua função. Um exemplo básico de abstração de dados é: a criação de uma tabela de produtos em um determinado banco de dados, ao abstrair um determinado produto e suas informações necessárias para sua utilização. E a linguagem de programação utilizada possibilitar referir-se a tabela como um todo, atinge-se um objetivo da abstração de dados. Pois a linguagem deve propiciar a passagem de um registro para uma função, não apenas de um campo para outro. Por conta disso se em uma tabela de banco de dados tivermos os seguintes campos: valor unitário de um produto e quantidade do produto, não tem como na tabela especificarmos o campo valor total, pois este é um campo calculado e dependerá dos dados digitados pelo usuário do sistema para realizar a operação de multiplicação. O campo valo total deverá ser adicionado por meio da linguagem de programação utilizada no desenvolvimento.

2.2 Encapsulamento Encapsulamento é esconder do programador as linhas de código que estão por trás de uma determinada classe de um objeto, ele poderá modificar as propriedades e métodos, mas não sabe como está implementado, ou seja o código está encapsulado. 2.3 Herança Herança é um mecanismo empregado dentro da orientação a objeto, que permite a reutilização dos códigos. Também pode ser entendido como um conjunto de códigos criados a partir de um outro conjunto de códigos com características semelhantes, e estes herdam todas as características do conjunto original. Dentro deste contexto é possível criar novas classes a partir de uma já existente, e estas classes criadas herdam características da original, podendo ter propriedades e métodos próprios, isto torna o mecanismo herança uma técnica eficaz na construção, organização e reutilização do código. Esta nova classe criada, se comportará de maneira diferente apenas naquilo que foi alterado nela, em relação à classe original ou primária. 2.4 Polimorfismo Polimorfismo significa, de várias formas, na Programação Orientada a Objeto, é definido como um código que possuí várias formas ou vários comportamentos em diferentes classes de objetos. Sem que isto interfira em seu funcionamento, o mesmo pode comportar-se de maneira diferente em classes distintas de objetos, e estes reagirem de formas diferentes. 3.0 VANTAGENS DA PROGRAMAÇÃO ORIENTADA A OBJETO Com o crescimento, complexidade e demanda de novos sistemas, a Programação Orientada a Objeto se mostra apta a suprir as necessidades dos desenvolvedores. Implementando as seguintes vantagens:

Exatidão: Devido a pouca quantidade de código programável, reduz os problemas relacionados à mudança de rotinas durante o desenvolvimento de um projeto. Potencialidade: A forma como os programas se portam perante erros imprevistos. Extensibilidade: Um sistema desenvolvido na Linguagem Orientada a Objeto, tem a possibilidade de adequar-se de forma melhor às especificações definidas na análise do sistema, principalmente no layout de telas. Reutilização: Com a reutilização dos códigos no desenvolvimento de um sistema, otimiza a produtividade do programador. Mas depende de como o software de desenvolvimento disponibilizará a sua reutilização. 4.0 CONSIDERAÇÕES FINAIS Com o término deste trabalho sobre a Programação Orientada a Objeto, podem-se tirar as seguintes conclusões. Primeiro, a abordagem Orientada a Objeto é a maneira mais eficiente no desenvolvimento de sistemas altamente complexos. Segundo, a estreita relação com o mundo real permite-nos termos um melhor entendimento do assunto, quando o mesmo é tratado com exemplos cotidianos. 5.0 REFERÊNCIAS BIBLIOGRÁFICAS RIBEIRO, José Ricardo Cosme Lerias. Curso de Delphi 7: Passo a Passo. Goiânia: Ed. Terra, 2004. Revista Espaço Acadêmico Nº. 35 Abril de 2004 Introdução a Programação Orientada a Objeto. Disponível em: http://www.espacoacademico.com.br/035/35amsf.htm (consultado em 20 de abril de 2006). Linha de Código Programação Orientada a Objeto. Disponível em: http://www.linhadecodigo.com.br/artigos.asp?id_ac=506, (consultado em 20 de abril de 2006). CriaWeb O que é Programação Orientada a Objeto. Disponível em: http://www.criarweb.com/artigos/215.php?manual=11, (consultado em 20 de abril de 2006).

Revista UNICAMP Programação Orientada ao Objeto: uma abordagem didática. Disponível em: http://www.revista.unicamp.br/infotec/artigos/leite_rahal.html (consultado em 10 de maio de 2006). Training Programação Orientada a Objeto. Disponível em: http://www.training.com.br/lpmaia/pub_prog_oo.htm (consultado em 10 de maio de 2006).

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO A Programação Orientada ao Objeto deu seus primeiros passos ainda na década de 70. A sua origem vem da linguagem Simula (Simula Language) e como o nome indica linguagem para fazer simulações, desenvolvida na Noruega no início da década de 60; caracterizava-se pela similaridade com o mundo real. Após surgiu a linguagem Smalltalk que foi desenvolvida pela Xerox, e é considerada a linguagem que popularizou a aplicabilidade da Programação Orientada a Objeto. A reutilização de códigos sem dúvida nenhuma é uma das grandes vantagens da Programação Orientada a Objeto, sendo o oposto das linguagens procedurais, é uma maneira diferente de pensar englobando o objeto, que dentro a orientação a objeto nada mais é do que um bloco de dados envolto por códigos que serão usados em uma aplicação (software). Com a Programação Orientada a Objeto temos que pensar uma aplicação de maneira distinta, pois ao programar; dá-se maior ênfase a visualização dos objetos e seus relacionamentos do que a uma rotina de procedimentos e ações emprega na programação procedual. 1. PROGRAMAÇÃO ORIENTADA A OBJETO 1.1 Orientação a Objeto Orientação a Objeto é o nome que os pesquisadores da década de 70 usaram para batizar, essa nova forma de programar, que nada mais é do que uma maneira para desenvolver sistemas mais compreensível ao raciocino do ser humano. Na Orientação a Objeto, descrevem-se as soluções através de objetos, como no mundo real, o oposto da programação estruturada (procedual) que o faz através de comandos e procedimentos.

1.2 Conceitos Objeto é todo o corpo físico que pode ser apreendido pelo sentimento humano, ou seja, que pode ser compreendido pela nossa inteligência. Emprega-se o termo objeto para os corpos físicos trabalhados pelo homem, como por exemplo, aparelho telefônico, uma escultura, carro ou um software com interface gráfica para o usuário. No que diz respeito à Programação Orientada a Objeto, o objeto representa algo real ou virtual, formado por propriedades (variáveis) e procedimentos (métodos). As variáveis definem os valores que podem representar como número inteiro, número real, caractere. Enquanto métodos são rotinas que ao serem executadas alteram o conteúdo da variável do objeto. Um exemplo de objeto real e físico seria uma casa, está por sua vez possui propriedades como: número de portas e janelas, tamanho e conforto. O objeto casa também possuí procedimentos, como entrar, como arrumá-la entre outros. Outro exemplo menos real, mas não menos importante seria um software qualquer, que tem uma de suas propriedades, senha de acesso e como procedimento associado à propriedade: alterar, criar ou apagar a senha. Estes objetos têm características, que dentro da Orientação a Objeto seriam definidos como atributos, como por exemplo: cor, tamanho, modelo, interface gráfica entre outros. O conceito de ação é a operação efetuada pelo objeto. Todas as janelas, por exemplo, controlam a iluminação e temperatura ambiente, dependendo do seu design. Outro termo utilizado na Programação Orientada a Objeto é a classe, que é algo abstrato. A classe é construída pelo programador, onde ficarão os códigos do programa, e será utilizada por meio de uma da declaração de uma variável. Classe seria um molde que construído uma vez servirá para diversos objetos. A Programação Orientada a Objeto, é uma forma de programar, mais próxima da natureza do ser humano do que outros tipos de programação. Isto porque dês de os tempos primórdios, nos fazemos valer de nossa capacidade de raciocínio e abstração para resolvermos os mais variados tipos de situações que se apresentam no cotidiano. A necessidade de contar os rebanhos e a produção

agrícola para ter um controle melhor, fez o homem desenvolver os numerais, as primeiras máquinas de calcular surgiram da necessidade de obterem-se cálculos exatos em um curto espaço de tempo. 2. PRINCÍPIOS DA PROGRAMAÇÃ ORIENTADA A OBJETO 2.1 Abstração: Abstração é a capacidade de abstrairmos algo, sem esquecer as suas características básicas. O ser humano demonstra facilmente o uso da abstração para imaginar coisas. Tomamos por exemplo o automóvel citado nos exemplos acima; ao fecharmos os olhos e o imaginarmos, provavelmente imaginaremos o automóvel de maneira diferente uns dos outros. Colocando neste as informações que achamos necessárias para a sua função, não levando em conta se o mesmo é novo ou velho, possuí duas ou quatro portas ou se nacional ou importado; o que importa é que tenha as informações necessárias para o cumprimento de sua função. Um exemplo básico de abstração de dados é: a criação de uma tabela de produtos em um determinado banco de dados, ao abstrair um determinado produto e suas informações necessárias para sua utilização. E a linguagem de programação utilizada possibilitar referir-se a tabela como um todo, atinge-se um objetivo da abstração de dados. Pois a linguagem deve propiciar a passagem de um registro para uma função, não apenas de um campo para outro. Por conta disso se em uma tabela de banco de dados tivermos os seguintes campos: valor unitário de um produto e quantidade do produto, não tem como na tabela especificarmos o campo valor total, pois este é um campo calculado e dependerá dos dados digitados pelo usuário do sistema para realizar a operação de multiplicação. O campo valo total deverá ser adicionado por meio da linguagem de programação utilizada no desenvolvimento.

2.2 Encapsulamento Encapsulamento é esconder do programador as linhas de código que estão por trás de uma determinada classe de um objeto, ele poderá modificar as propriedades e métodos, mas não sabe como está implementado, ou seja o código está encapsulado. 2.3 Herança Herança é um mecanismo empregado dentro da orientação a objeto, que permite a reutilização dos códigos. Também pode ser entendido como um conjunto de códigos criados a partir de um outro conjunto de códigos com características semelhantes, e estes herdam todas as características do conjunto original. Dentro deste contexto é possível criar novas classes a partir de uma já existente, e estas classes criadas herdam características da original, podendo ter propriedades e métodos próprios, isto torna o mecanismo herança uma técnica eficaz na construção, organização e reutilização do código. Esta nova classe criada, se comportará de maneira diferente apenas naquilo que foi alterado nela, em relação à classe original ou primária. 2.4 Polimorfismo Polimorfismo significa, de várias formas, na Programação Orientada a Objeto, é definido como um código que possuí várias formas ou vários comportamentos em diferentes classes de objetos. Sem que isto interfira em seu funcionamento, o mesmo pode comportar-se de maneira diferente em classes distintas de objetos, e estes reagirem de formas diferentes. 3.0 VANTAGENS DA PROGRAMAÇÃO ORIENTADA A OBJETO Com o crescimento, complexidade e demanda de novos sistemas, a Programação Orientada a Objeto se mostra apta a suprir as necessidades dos desenvolvedores. Implementando as seguintes vantagens:

Exatidão: Devido a pouca quantidade de código programável, reduz os problemas relacionados à mudança de rotinas durante o desenvolvimento de um projeto. Potencialidade: A forma como os programas se portam perante erros imprevistos. Extensibilidade: Um sistema desenvolvido na Linguagem Orientada a Objeto, tem a possibilidade de adequar-se de forma melhor às especificações definidas na análise do sistema, principalmente no layout de telas. Reutilização: Com a reutilização dos códigos no desenvolvimento de um sistema, otimiza a produtividade do programador. Mas depende de como o software de desenvolvimento disponibilizará a sua reutilização. 4.0 CONSIDERAÇÕES FINAIS Com o término deste trabalho sobre a Programação Orientada a Objeto, podem-se tirar as seguintes conclusões. Primeiro, a abordagem Orientada a Objeto é a maneira mais eficiente no desenvolvimento de sistemas altamente complexos. Segundo, a estreita relação com o mundo real permite-nos termos um melhor entendimento do assunto, quando o mesmo é tratado com exemplos cotidianos. 5.0 REFERÊNCIAS BIBLIOGRÁFICAS RIBEIRO, José Ricardo Cosme Lerias. Curso de Delphi 7: Passo a Passo. Goiânia: Ed. Terra, 2004. Revista Espaço Acadêmico Nº. 35 Abril de 2004 Introdução a Programação Orientada a Objeto. Disponível em: http://www.espacoacademico.com.br/035/35amsf.htm (consultado em 20 de abril de 2006). Linha de Código Programação Orientada a Objeto. Disponível em: http://www.linhadecodigo.com.br/artigos.asp?id_ac=506, (consultado em 20 de abril de 2006). CriaWeb O que é Programação Orientada a Objeto. Disponível em: http://www.criarweb.com/artigos/215.php?manual=11, (consultado em 20 de abril de 2006).

Revista UNICAMP Programação Orientada ao Objeto: uma abordagem didática. Disponível em: http://www.revista.unicamp.br/infotec/artigos/leite_rahal.html (consultado em 10 de maio de 2006). Training Programação Orientada a Objeto. Disponível em: http://www.training.com.br/lpmaia/pub_prog_oo.htm (consultado em 10 de maio de 2006).