Um paradigma é uma forma de
abordar um problema. O paradigma de
orientação a objetos visualiza um sistema de software como uma coleção de objetos
interconectados. Cada objeto é responsável por realizar tarefas específicas. É
através da interação entre objetos (troca de mensagens) que uma tarefa
computacional é realizada.
Um sistema de software orientado a objetos consiste em uma coleção de
objetos em colaboração com o objetivo de realizar as funcionalidades desse
sistema. Cada objeto é responsável por tarefas específicas. É através da
cooperação entre objetos (troca de mensagens) que a computação do sistema se
desenvolve.
Objeto: são estruturas que representam coisas do mundo real. É uma
entidade que possui um estado e um conjunto definido de operações definidas
para funcionar nesse estado. O estado é representado como um conjunto de
atributos de objeto. As operações associadas ao objeto fornecem serviços a
outros objetos (clientes) que solicitam esses serviços quando alguma computação
é necessária. Diz-se que um objeto é uma instância de uma classe. Os objetos
podem ser transientes (existem apenas na memória principal de um programa –
objetos de controle e de fronteira) ou persistentes (sua existência perdura
durante várias execuções do sistema, precisam ser armazenados e restaurados
quando uma nova execução do sistema é iniciada – objetos de entidade).
Classe: agrupa objetos com características semelhantes. Descreve os
atributos e serviços comuns a um grupo de objetos. A definição de uma classe
inclui declarações de todos os atributos e operações que devem ser associados a
um objeto dessa classe. As classes podem ser classificadas em classes de
fronteira (realizam a interface entre os atores e o sistema), classes de
controle (controlam a lógica de execução correspondente a um caso de uso) e
classes de entidade (armazenam as informações manipuladas pelo sistema).
Operação: define a especificação de uma ação. São as ações que
objeto sabe realizar. Corresponde à descrição das ações que os objetos de uma
classe sabem realizar. Define o comportamento do objeto.
Atributo: descrevem as propriedades de uma classe. São as informações
armazenadas pelos objetos. Corresponde à descrição dos dados armazenados pelos
objetos de uma classe. A cada atributo de uma classe está associado um conjunto
de valores que esse atributo pode assumir. Define o estado do objeto. A
declaração de um atributo é formada pela visibilidade, nome e tipo.
Abstração de dados: é um modelo que dá ênfase aos aspectos mais
importantes, ignorando, ao mesmo tempo, os detalhes menos importantes. A
abstração depende da perspectiva, isto é, do contexto. Quando objetos trocam
mensagens, por exemplo, a abstração está em esconder os detalhes de
funcionamento interno do objeto requisitado (encapsulamento).
PRINCÍPIOS DA ORIENTAÇÃO A OBJETOS
Encapsulamento: consiste em restringir o acesso aos detalhes de
implementação dos métodos de um objeto, mostrando apenas a sua interface. A
interface é a descrição dos serviços que um objeto oferece, determinando quais
mensagens ele pode receber.
Herança: consiste no agrupamento de classes em hierarquias. Esse
mecanismo facilita o compartilhamento de comportamento comum entre um conjunto
de classes semelhantes.
Polimorfismo: indica a capacidade de abstrair várias implementações
diferentes em uma única interface.
Reutilização de componentes
Um componente de software é um
módulo, pacote ou subsistema que tem uma função e uma interface claramente
definidas e pode ser integrado em um ou mais sistemas.
Nenhum comentário:
Postar um comentário