PROGRAMAÇÃO ORIENTADA A OBJETOS

Começar. É Gratuito
ou inscrever-se com seu endereço de e-mail
PROGRAMAÇÃO ORIENTADA A OBJETOS por Mind Map: PROGRAMAÇÃO ORIENTADA A OBJETOS

1. Atributos

1.1. São elementos que agregam informações aos objetos

1.1.1. Representando qualidades, estados, características, enfim, propriedades do objeto.

1.2. Cada atributo tem um valor para cada instância de um objeto

1.3. Os atributos e seus valores, juntos, descrevem as instâncias de um objeto.

1.4. Em objetos de uma mesma classe os valores dos atributos podem ser iguais ou diferentes, e duas classes diferentes podem ter atributos com o mesmo nome

2. Herança

2.1. O compartilhamento de atributos e operações entre classes tem como base um relacionamento hierárquico.

2.2. Uma classe pode ser definida de forma abrangente e depois refinada em sucessivas subclasses mais definidas.

2.2.1. Cada subclasse incorpora, ou herda, todas as propriedades de sua superclasse e acrescenta suas próprias e exclusivas características.

2.2.2. As propriedades da superclasse não precisam ser repetidas em cada subclasse.

3. Generalização e Especialização

3.1. Generalização é um mecanismo baseado na ligação semântica (hierárquica), onde as diferenças entre elementos similares são ignoradas para formar um tipo de alto nível de abstração, no qual as semelhanças são enfatizadas.

3.1.1. Tem como principais objetivos representar relacionamentos semânticos do tipo “é um” entre objetos com alto nível de abstração, evitar a repetição de propriedades comuns em cada classe de objetos e possibilitar a definição de classes por refinamento das classes mais gerais

3.1.2. É usada para expressar o que há de comum em diferentes classes.

3.1.3. Por exemplo, se existe uma classe gato e uma classe cachorro, pode-se criar uma generalização de ambas as classes, chamada animal.

3.2. O processo inverso é chamado de especialização

4. Agregação

4.1. Relacionamento “parte todo” ou “uma parte de”, na qual objetos que representam componentes de alguma coisa são associados a um objeto que representa a estrutura inteira.

4.2. É uma forma especial de associação utilizada para mostrar um objeto composto, pelo menos em parte, de outro em uma relação todo/parte, por exemplo, a roda é-parte-de carro ou, usando a associação inversa, carro tem roda

5. Operações e Metódos

5.1. O comportamento dos objetos é representado pelas operações. Contudo, a operação para um objeto representa apenas a definição do serviço que ele oferece a outras estruturas.

5.2. Quando tratamos da implementação dessa operação, ou seja, da sua representação em código, estamos nos referindo ao seu método.

6. Paradigma

6.1. Processo conceitual independente da linguagem de programação. O desenvolvimento baseado em objetos é fundamentalmente uma forma de pensar e não uma técnica de programação

7. Abstração

7.1. Habilidade de esconder detalhes e concentrar-se no geral quando se avalia as propriedades comuns a um conjunto de objetos

8. Classes e Objetos

8.1. Uma classe é uma abstração que descreve propriedades importantes para uma aplicação e ignora o restante.

8.2. Cada classe descreve um conjunto possivelmente infinito de objetos individuais.

8.3. Cada objeto é dito ser uma instância de sua classe.

8.3.1. Cada instância da classe tem seu próprio valor para cada atributo, mas compartilha os nomes de atributos e operações com outras instâncias da mesma classe.

8.3.2. Um objeto é uma extensão do conceito de objeto do mundo real em que se podem ter coisas tangíveis, um incidente (evento ou ocorrência) ou uma interação (transação ou contrato).

9. Encapsulamento

9.1. Consiste em evidenciar ou não as funcionalidades do objeto ao ambiente externo

9.2. Conceito de encapsulamento é a ação de ligar uma TV: não é interessante para o telespectador saber se o diodo da televisão foi acionado, ou se o circuito interno está respondendo ao determinado componente.

10. Associação

10.1. Ligações e associações são os meios para estabelecermos relacionamentos entre objetos e classes

10.2. É importante determinar a quantidade de objetos que podem ser conectados pela instância de uma associação.

10.2.1. Ela representa o intervalo de inteiros que especifica o tamanho possível do conjunto de objetos relacionais. É escrita como uma expressão com valores mínimos e máximos, que podem ser iguais

10.2.2. um (1), zero ou um (0..1), muitos (0..*) ou um ou mais (1..*).