scieee AI-readable full text Open interactive document viewer

Uma conceituação didática sobre orientação a objetos

Reis, Davi Silvestre Moreira

Abstract

Este breve artigo predispõe-se a apresentar, de forma clara e sucinta, o conceito do paradigma da Orientação a Objetos, em voga atualmente em todas as etapas do desenvolvimento de um sistema, desde seu início, no levantamento de requisitos, até o final da fase de programação – ou codificação –, quando é enfatizado, passando pela análise e modelagem dos dados e atualmente sendo encontrado, inclusive, na própria persistência dos dados, sejam estes inseridos ou processados, que é o banco de dados. Este pequeno ensaio objetivará apresentar aos iniciantes em programação, e aos desconhecedores da Orientação a Objetos, uma abordagem didática e simples, visando facilitar a compreensão e o aprendizado desta metodologia de desenvolvimento tão solidificada e difundida nos dias de hoje. Versão publicada na Revista Processando o Saber:https://www.fatecpg.edu.br/revista/index.php/ps/article/view/111

Full text

Processando o Saber nº 2, 2010 31 UMA CONCEITUAÇÃO DIDÁTICA SOBRE ORIENTAÇÃO A OBJETOS REIS, Davi Silvestre Moreira dos, Especialista* * Faculdade de Tecnologia de Praia Grande Departamento de Informática para Gestão de Negócios Pça. 19 de Janeiro, 144, Boqueirão, Praia Grande / SP, CEP: 11700-100 Fone (13) 3591-1303 davismd[email protected] RESUMO Este breve artigo predispõe-se a apresentar, de forma clara e sucinta, o conceito do paradigma da Orientação a Objetos, em voga atualmente em todas as etapas do desenvolvimento de um sistema, desde seu início, dos dados e atualmente sendo encontrado, inclusive, na própria persistência dos dados, sejam estes inseridos ou processados, que é o banco de dados. Este pequeno ensaio objetivará apresentar aos iniciantes em programação, e aos desconhecedores da Orientação a Objetos, uma abordagem didática e simples, visando facilitar a compreensão e o difundida nos dias de hoje. PALAVRAS-CHAVE: Encapsulamento. ABSTRACT This brief article is to present, clearly and succinctly, the concept of the paradigm of the Objects Oriented, en vogue currently in all the stages of the development of a system, since its beginning, in the survey of -, when it is emphasized, passing by the analysis and modeling of the data and currently being found, also, in the proper persistence of the https://doi.org/10.5281/zenodo.15587563 Processando o Saber nº 2, 2010 32 básica para o desenvolvimento de sistemas abrangendo todo o ciclo, desde a análise até a construção de códigos, é uma prática bem recente. Apenas na década de 80 é que surgiram os primeiros estudos sobre o uso da Orientação Porém, outros autores compartilham a opinião de que esse conceito bem-sucedido de desenvolvimento de sistemas de informática surgimento da linguagem Simula, na Noruega, e principalmente em meados da década de 70, quando do desenvolvimento da linguagem Smalltalk, que seria a primeira totalmente orientada a objetos (INGALLS, 1981). É ponto comum, entretanto, considerar a linguagem Simula e, mais efetivamente, a linguagem Smalltalk, como origem do conceito A seguir, observaremos quais são esses importantes conceitos que compõem o paradigma da orientação a objetos. 2 CONCEITOS Também encontram-se algumas divergências de opiniões com relação à quantidade, e quais seriam, os conceitos básicos que integram De acordo com Cantú (1998), por exemplo, a Orientação a Objetos é baseada em três conceitos fundamentais: classes, herança e Já segundo Ambler (1998), os conceitos fundamentais são em maior número: classes, objetos, instância, atributos, métodos, abstração, encapsulamento, herança, persistência, relacionamento entre instâncias, acoplamento, entre outros. De modo geral, podemos dizer que os conceitos fundamentais, dos quais surgem os demais, são: abstração, classe, objeto, bstração Por uma conceituação simplista, pode-se dizer que abstração é a capacidade natural do ser humano utilizada para tratar de situações Processando o Saber nº 2, 2010 33 data, inserted or processed, which are the database. This small essay will objectify to present to the beginners in programming, and the ones that don’t know about Objects Oriented, a didactic and simple boarding, aiming at facilitating the understanding and the learning of this methodology of development so solid and spread out nowadays. KEY-WORDS: Objects-Oriented, Polymorphism, Inheritance, Encapsulation. INTRODUÇÃO Um dos objetivos do paradigma da orientação a objetos é tentar representar, através de programas, ou seja, no mundo do software, objetos supostamente existentes no mundo real, utilizando, para tanto, uma característica não encontrada nos modelos de desenvolvimento se tornarmos nossos computadores compatíveis com a mente, ao baseada na elaboração de partes independentes que, unidas, formam compor outros sistemas, e podem ter seus códigos recombinados, o que permite a criação de novos objetos, facilitando e diminuindo o trabalho de desenvolvimento. 1 ORIGEM As opiniões de alguns autores divergem sobre a origem exata do conceito de Orientação a Objetos. Por exemplo, de acordo com Booch (1996, p.4): O uso da orientação a objeto como metodologia Processando o Saber nº 2, 2010 34 Quando o programa contendo a classe é executado, essa classe é estudo). A classe é construída uma única vez, em um determinado trecho do código, e, a partir de então, são declaradas variáveis dessa classe, contendo todas suas características. Essas variáveis serão instâncias dessa classe, e a essas instâncias damos o nome de objetos, como veremos mais adiante. De uma forma mais prática, é comum dizermos Em suma, pode-se dizer que a classe seria uma forma, um molde, e a partir desse molde construímos diversos objetos. Há ainda, um outro conceito dentro de classes: a de classeA superclasse é hierarquicamente superior à(s) subclasse(s). Estas, herdando, como se verá mais adiante) todos seus métodos e atributos. As subclasses podem, ainda, implementar novos métodos e atributos que não existiam inicialmente na superclasse. Objetivo Sinteticamente falando a partir do item anterior, podemos dizer que um objeto uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele; assim como se relacionar e enviar mensagens a outros Pode ser uma pessoa, um carro ou mesmo uma janela. Processando o Saber nº 2, 2010 35 processos. É o reconhecimento de similaridades entre objetos, situações e processos do mundo real, concentrando os estudos nessas similaridades, nesses aspectos essenciais, e ignorando, apenas nesse momento, suas diferenças, ou as características menos importantes. Um mesmo problema pode ter abstrações diferentes. Isso está diretamente relacionado com a perspectiva de quem o observa. Toma-se como exemplo uma criança. Figura 1 – Perspectiva de observação Porém, o ponto comum que podemos enxergar em ambos os contextos A classe representa um conjunto de objetos com características eles serão capazes de manter, através de atributos (propriedades). Para se diferenciar entre métodos e atributos, pode-se dizer que métodos De uma forma possivelmente mais clara, classe é o objeto abstrato (como no item anterior) construído computacionalmente. Processando o Saber nº 2, 2010 36 calçado que a criança utiliza) provavelmente deveria existir, mas seria provavelmente é o lugar onde o atributo que armazena tal informação foi criado). compartilhamento de atributos e operações entre classes, baseado de uma superclasse não precisam ser repetidos em suas subclasses, que automaticamente herdam estes elementos. A reutilização que isto proporciona é uma das principais características da orientação a Em outras palavras, pode-se dizer que herança é o mecanismo que permite criar uma nova classe aproveitando os métodos e atributos idéia de herança múltipla, quando uma subclasse possui mais de uma superclasse. Vale ressaltar uma interessante observação: a classe que herda na subclasse podem ter número e tipos dos parâmetros diferentes do método correspondente da superclasse. Processando o Saber nº 2, 2010 37 características e comportamentos da classe que o originou. Poderíamos, de um casal, enquanto poderíamos ter vinte objetos criados a partir de sido criados para representar outras crianças que não fossem, nem Posto isto, pode-se observar que todos os objetos possuem Um dos conceitos básicos por trás da orientação a objetos é o encapsulamento. O Encapsulamento consiste na separação de aspectos internos e externos de um objeto. Este mecanismo é amplamente utilizado como proteção, para impedir o acesso direto ao estado de um objeto (seus atributos) ou mesmo alguns métodos, disponibilizando externamente apenas os também permite acesso a qualquer tipo de comunicação com o objeto através, por exemplo, de mensagens. armazenaria informações sobre o número que a criança calça. Podemos exposta a todos que acessarem os objetos instanciados a partir das Processando o Saber nº 2, 2010 38 e atributos que necessitassem, elas não teriam o poder ter alterar os De acordo com Ferreira e Jarabeck (1991), um exemplo bem Esse equipamento tem a função de moer carne, produzindo carne moída para fazer bolinhos. Desse modo, não importa o tipo (classe) de carne alimentada; o resultado será sempre carne moída, não importa se de boi, de frango ou de qualquer outro tipo. As restrições impostas pelo pelo usuário do produto. variações em forma e função de membros de uma mesma espécie. Por é a capacidade de permitir tratar objetos semelhantes de uma maneira uniforme; é a capacidade de permitir a um objeto se comportar de acordo que objetos diferentes têm de reagirem, segundo a sua função, a uma entrar em ação, seja ele uma janela, uma porta ou uma tampa de garrafa. Para todos ocorrerá uma abertura, mas essa abertura se dará de modo diferente, de acordo com cada objeto. Cabe, aqui, uma observação do conceito de herança e aplica-se apenas aos métodos da classe. mesmo, mas as ações a serem tomadas serão um pouco diferentes, se comportando de acordo com a classe a qual pertencer. Processando o Saber nº 2, 2010 39 Apesar de todos os conceitos anteriores serem relativamente é a característica que cada objeto tem de ser único, de possuir uma ou acessado dentro de todo o sistema, mesmo sendo criado a partir de muito comum, cada objeto é único dentro do sistema. E, como cada objeto tem sua própria identidade, mesmo tendo sendo criados a partir de uma mesma classe e mesmo que seus atributos e seus métodos sejam idênticos, dois ou mais objetos existentes no sistema serão sempre diferentes. portanto, mesmo que esses objetos tenham os mesmos atributos e são na vida real. CONCLUSÃO Pode-se observar que o paradigma da Orientação a Objetos é, conceitualmente, muito simples de ser compreendido. Há, contudo, observações e detalhes importantes aos quais devemos nos ater no momento de desenvolver um sistema utilizando-se essa metodologia. É fácil visualizar a grande ambição da metodologia de Orientação a Objetos: trazer para o mundo do software determinadas e propriedades, que são, originalmente, inerentes ao nosso mundo real, passível de compreensão a todas as pessoas. que é fácil vislumbrarmos sua empregabilidade não mais restrita à informática, como fora concebida, mas ampliando seu campo de atuação