Escolar Documentos
Profissional Documentos
Cultura Documentos
O trabalho tem com o objectivo abordar tudo que tenha relação com o tema em vigor.
O grupo tem como principal objectivo decifrar e sanar todos os equivos em relação ao que for
abordado no trabalho.
1
Historial
Farinelli diz também que a orientação a objectos surgiu com o objectivo de tornar o
desenvolvimento de software menos complexo e mais produtivo. A ideia era termos estruturas de
dados, que possuem estado e comportamento e colaboram entre si. Dessa forma, deixaríamos de
ter todas as rotinas e sub-rotinas “espalhadas” pelo sistema e passamos a atribuir elas a uma
dessas estruturas de dados, de forma coesa, cada qual com sua responsabilidade. Além disso,
encapsularíamos as variáveis nestas mesmas estruturas, controlando o acesso às mesmas e
tornando público apenas aquilo que for pertinente.
2
Fundamentos de programação orientada a objectos
Classe de objecto
Classe é um tipo de dado que representa tudo aquilo que um objecto deste tipo poderá ter/fazer.
Na classe determinamos o que será armazenado em seu estado e quais comportamentos ele terá,
ela funciona como uma estrutura de referência para a criação de objectos. Uma classe pode ter
vários objectos ou pode ser instanciada diversas vezes, dando origem a diversos objectos
diferentes.
Objecto é uma instância de uma classe. É a estrutura completa, criada em memória, que irá
representar a classe com tudo o que foi definido nela, inclusive com os valores armazenados nos
seus respectivos atributos.
3
Exemplo:
Gatos
1. Encapsulamento
Se refere ao agrupamento de dados com os métodos que operam nesses dados ou à restrição do
acesso directo a alguns dos componentes de um objecto, ele é usado para ocultar os valores ou o
estado de um objecto de dados estruturados dentro de uma classe, evitando o acesso directo de
partes não autorizadas a eles, também prevê o isolamento a determinados elementos do objecto
(métodos /atributos) de acordo com a necessidade de acesso a eles. Este conceito parte da
premissa de que nem todo método e atributo precisam estar visíveis e acessíveis publicamente.
Existem elementos que são pertinentes apenas ao próprio objecto, outros pertinentes aos objectos
filhos e outros que são pertinentes a todos os objectos associados.
4
Os Benefícios do Encapsulamento:
5
2. Polimorfismo
6
Os objectos de cada classe responderam à mesma mensagem (locomover˗se), mas cada um de
uma forma diferente. O que caracteriza o principal conceito do polimorfismo:
Tipos de polimorfismo
Polimorfismo Ad-hoc
Polimorfismo Universal
Polimorfismos Ad-hoc são números finitos de variações, que nelas possuem 2 grupos:
Polimorfismos Universal são números infinitos de variações, que nelas possuem 2 grupos:
7
Polimorfismo Universal Subtipagem/Inclusão ˗ é o modelo de herança e subtipos, que permite
a um objecto pertencer a várias classes simultaneamente, criando uma hierarquia de herança.
Numa subclasse, um objecto pode ter um comportamento modificado com relação à classe
original. Assim só ocorre em linguagens que permitem subtipo e herança. Uma instância de uma
subclasse pode ser manipulada pelas mesmas funções que manipulam instâncias da super classe.
3. Herança
Em orientação a objectos, herança é quando uma classe (filha) herda todas as características
(atributos e métodos) de outra classe (pai). A herança está directamente relacionada ao
polimorfismo, pois através da herança podemos subscrever e estender funcionalidades do
sistema.
A Herança possibilita que as classes compartilhem seus atributos, métodos e outros membros da
classe entre si. Para a ligação entre as classes, a herança adopta um relacionamento
esquematizado hierarquicamente.
8
Classe Derivada: é a classe que herda as características da classe base.
O fato de as classes derivadas herdarem atributos das classes bases assegura que programas
orientados a objectos cresçam de forma linear e não geometricamente em complexidade. Cada
nova classe derivada não possui interacções imprevisíveis em relação ao restante do código do
sistema.
Com o uso da herança, uma classe derivada geralmente é uma implementação específica de um
caso mais geral. A classe derivada deve apenas definir as características que a tornam única.
Por exemplo: uma classe base que serviria como um modelo genérico que pode ser ʺa classe
Pessoaʺ com os campos ʺNome e Idadeʺ. Já uma classe derivada poderia ser ʺFuncionárioʺ
com os campos ʺNome e Idadeʺ herdados da classe Pessoa, acrescido do campo Cargo.
Mais um exemplo: vamos analisar a relação entre animais, mamíferos e cachorros. Os animais,
sob uma descrição abstracta, apresentam atributos, tais como tamanho, inteligência e estrutura
óssea. Apresentam também aspectos comportamentais como mover-se, dormir, comer, respirar,
etc. Esses atributos e aspectos comportamentais definem a classe dos animais.
Analisando os mamíferos, que são filhos da classe animais, veremos atributos detalhados e
específicos a ele, como por exemplo, tipo de dente, pelos e glândulas mamárias.
Assim, podemos afirmar que os mamíferos são classificados como uma classe derivada dos
animais, que por sua vez, são uma classe base dos mamíferos.
Pela chamada hierárquica de classes, a classe derivada mamíferos recebe todos os atributos de
animais, partindo do princípio que uma classe derivada recebe por herança todos os atributos de
seus ancestrais.
9
10
Conclusão
Chegando a esse momento é importante deixar claro que o tema ʺfundamentos básicos de
programação orientada a objectoʺ permite melhorar a reusabilidade e extensibilidade dos
softwares.
11
Bibliografia
Google.com
Www. Fundamentos de programação orientada a objectos.com
12