Mind map
Orientação a objetos
Map content
Orientação a objetos
o que é
- tanto na programação quanto na análise e na modelagem de sistemas, está centrada na resolução de problemas na forma bottom-up, ou seja, resolvendo as pequenas partes do problema, chega-se à solução completa. Para que isso seja possível, são utilizados os conceitos de abstração de dados e modularização
- Uma abstração corresponde a um conceito, e, na computação, um tipo abstrato de dados (TAD) é uma especificação de um conjunto de dados e operações que podem ser executadas sobre esses dados. Um exemplo de TAD é uma figura geométrica
- A modularização permite transformar um TAD em um “componente de software”, que pode ser reaproveitado e, se necessário, adaptado para diferentes projetos. Por exemplo, o TAD figura geométrica pode ser utilizado em um projeto de software educativo para o ensino da matemática ou em um projeto de software para desenho industrial (CAD)
- Em modelagem orientada a objetos, uma classe é uma abstração de entidades* e operações existentes no domínio do sistema de software. Entende-se por domínio o espaço em que um problema reside. Um exemplo de domínio de um sistema para controle de envio e recebimento de correspondência é o serviço de correio.
- O que são classes, métodos e atributos
- Podemos definir, então, classe como a descrição de um molde que especifica as propriedades e o comportamento para um conjunto de objetos similares. Esse comportamento é definido pelas funções que os objetos podem realizar, as quais se denominam método; já as propriedades são chamadas de atributos
- Classe corresponde a um conceito abstrato sobre um conjunto de objetos semelhantes, existentes no domínio de um sistema de software. Nesse conceito estão incluídas informações a respeito das propriedades e do comportamento dos objetos aos quais se refere
- O que são classes, métodos e atributos
- tanto na programação quanto na análise e na modelagem de sistemas, está centrada na resolução de problemas na forma bottom-up, ou seja, resolvendo as pequenas partes do problema, chega-se à solução completa. Para que isso seja possível, são utilizados os conceitos de abstração de dados e modularização
o que são objetos
- Os objetos são “unidades” (instâncias) geradas a partir do mesmo modelo (classe). Assim, a partir da classe Lampada, podemos criar vários objetos, cada um com seu próprio conjunto de valores de propriedades, mas com o mesmo resultado na execução dos métodos
- Em Java, os objetos são criados utilizando a palavra reservada new.
- A instrução new serve como chamada para o método construtor da classe. Este, como diz o nome, é utilizado para construir os objetos ou, de forma mais técni- ca, instanciar a classe. Assim, quando instanciamos uma classe, são alocadas áreas de memória independentes para cada objeto. Nessas áreas, são armazenadas as propriedades de cada objeto.
- em Java, existe um construtor-padrão (default). Esse construtor é automaticamente incorporado ao código pela máquina virtual, caso não seja encontrada a implementação de outro construtor para a mesma classe.
- A instrução new serve como chamada para o método construtor da classe. Este, como diz o nome, é utilizado para construir os objetos ou, de forma mais técni- ca, instanciar a classe. Assim, quando instanciamos uma classe, são alocadas áreas de memória independentes para cada objeto. Nessas áreas, são armazenadas as propriedades de cada objeto.
- As atribuições entre variáveis que são referências a objetos correspondem a atribuir uma cópia do OID de um objeto para outro, ou seja, ambas as variáveis passam a apontar para a mesma área de memória
- Utilizar a mesma variável para a criação de outro objeto corresponde à atribuição de um novo OID para a variável em questão. Nesse caso, o conteúdo previamente armazenado na variável será perdido.
- A combinação entre nome do método, parâmetro e valor de retorno é denominada assinatura do método.
- Utilizar a mesma variável para a criação de outro objeto corresponde à atribuição de um novo OID para a variável em questão. Nesse caso, o conteúdo previamente armazenado na variável será perdido.
- Em Java, os objetos são criados utilizando a palavra reservada new.
- Os objetos são “unidades” (instâncias) geradas a partir do mesmo modelo (classe). Assim, a partir da classe Lampada, podemos criar vários objetos, cada um com seu próprio conjunto de valores de propriedades, mas com o mesmo resultado na execução dos métodos
Quais são os tipos de relacionamento existentes entre os objetos?
- Dependência • Relacionamento do tipo A usa B. • Por exemplo: um trem usa uma estrada de ferro (não faz parte do trem, mas este depende dela).
- Agregação • Relacionamento do tipo A é parte de B. • Por exemplo: o farol é parte de uma locomotiva, mas esta não deixará de ser uma locomotiva se não tiver um farol
- Composição • Relacionamento do tipo A é parte essencial de B. • Por exemplo: a locomotiva é uma parte essencial de um trem.
- Generalização/Especialização • • • Relacionamento do tipo A é um tipo B. Por exemplo: um trem é um meio de transporte (meio de transporte corresponde à generalização; trem, à especialização). Relação que estabelece o mecanismo de herança
O que é encapsulamento?
- Cada parte de um problema possui implementação própria e deve realizar seu trabalho independentemente das outras partes. O encapsulamento mantém essa independência, ocultando os detalhes internos por meio de uma interface externa.
- Encapsulamento é o processo de ocultação das características internas do objeto.
O reaproveitamento de código é uma das maiores vantagens da orientação a objetos. Na criação de uma classe para representar os usuários de um sistema, por exemplo, quantos projetos diferentes precisam de autenticação de usuários? É possível escrever uma classe Usuario uma única vez e reutilizá-la infinitas vezes, ganhando tempo no desenvolvimento dos projetos.
O que é herança?
- Por meio do recurso de herança, uma classe pode ser especializada. Dessa forma, é possível criar novas classes (filhas) a partir de uma classe já existente (mãe), re- aproveitando seus atributos e operações. Na relação de classes do tipo mãe-filha, chamamos a classe mãe de superclasse e as classes filhas de subclasses. As classes filhas, por sua vez, podem ter suas próprias filhas, gerando assim uma família de classes.
Polimorfismo
- polimorfismo significa “que um objeto de uma dada classe pode ter várias formas, seja como sua própria classe ou qualquer classe que ele estenda”.
Classes abstratas
- As classes abstratas são criadas para representar de forma genérica uma família de classes. Por exemplo, as figuras triângulo, quadrado e círculo fazem parte de uma família de objetos, a qual podemos denominar FormaGeometrica. Sabe-se que toda forma geométrica pode ser representada graficamente e pode ter sua área e seu perímetro calculados a partir das medidas da figura. Entretanto, as fór- mulas para os cálculos são próprias de cada tipo de figura. Assim, as figuras podem utilizar o método desenhar herdado da superclasse FormaGeometrica, mas de- vem fornecer soluções próprias para os cálculos de área e perímetro.
Information
- Description
- Mind Map on Orientação a objetos, created by Gabriel Sartori on 27/10/2020.
- Created by
- Gabriel Sartori · Oct 2020
- Updated
- Oct 27, 2020
- Views
- 0
- Rating