Conceptos básicos de la Orientación a Objetos

Definición de objeto

Un objeto es:

  • Una cosa tangible y/o visible.
  • Algo que puede comprenderse intelectualmente.
  • Una entidad software.

Características de un objeto

Un objeto tiene:

  • Identidad: un identificador unívoco.
  • Estado: un conjunto de propiedades (atributos). Comportamiento: un conjunto de operaciones (métodos).
  • Los términos objeto e instancia son intercambiables.

Estructura de un objeto

Métodos

  • Es una acción que se realiza sobre un objeto para consultar o modificar su estado.
  • Tipos de operaciones:

    • Modificador (setter): altera el estado de un objeto.
    • Selector (getter): accede al estado de un objeto sin alterarlo.
    • Iterador: permite acceder a todas las partes de un objeto.
    • Constructor: crea un objeto e inicializa su estado.
    • Destructor: limpia el estado de un objeto y lo destruye.
    • Propósito general: la lógica del programa.

Atributos

  • Conceptos básicos de la Orientación a Objetos
  • Es una característica fundamental de cada objeto de una clase.
  • Una clase puede definir un cierto número de atributos estáticos.
  • Todos los atributos tienen algún valor. Este valor puede ser una cantidad, una relación con otro objeto, etc…

Interfaz

  • Es el aspecto externo del objeto. La parte visible y accesible para el resto de objetos.
  • También se le define como el protocolo de comunicación de un objeto.
  • Puede estar formado por uno o varios métodos. No todos los métodos de un objeto tienen porque formar parte del interfaz.

Clase

  • Una clase es la representación de la estructura y comportamiento de un objeto
  • Es un patrón para la definición de atributos y métodos para un tipo particular de objetos.
  • Todos los objetos de una clase dada son idénticos en estructura y comportamiento pero son únicos (aunque tengan los mismos valores en sus atributos).
  • Instancia es el término utilizado para referirse a un objeto que pertenece a una clase concreta.

Clases vs. Objetos

Clase

  • Un patrón para la definición del estado y el comportamiento de un tipo particular de objetos.
  • Todos los objetos de una clase dada son idénticos en estructura y comportamiento, pero tienen identidad única.

Objeto (instancia)

  • Pertenece a una clase en particular.
  • Los objetos son creados y destruidos en tiempo de ejecución. Residen en el espacio de memoria.