You are here
Programación Orientada a Objetos Sin categoría 

Programación Orientada a Objetos

Programación Orientada a Objetos

La  Programación Orientada  a  Objetos   (POO)  es  una   metodología  que   basa   la estructura de  los programas en  torno  a los objetos.  Los lenguajes de  POO  ofrecen medios y herramientas para  describir los  objetos  manipulados por  un  programa. Más que describir cada  objeto individualmente, estos lenguajes proveen una construcción (Clase)  que  describe a un  conjunto de objetos  que  poseen las mismas propiedades.

 

 

OBJETO

 

 

 

Es  una   entidad  (tangible o  intangible) que  posee   características  y  acciones   que realiza   por  sí  solo  o  interactuando con  otros  objetos.  Un  objeto  es  una  entidad caracterizada por  sus  atributos propios y cuyo  comportamiento está  determinado por  las acciones  o funciones que  pueden modificarlo, así como también las acciones que  requiere de otros  objetos.  Un objeto  tiene  identidad e inteligencia y constituye una  unidad que  oculta  tanto  datos  como  la descripción de su manipulación. Puede ser  definido como  una   encapsulación  y  una   abstracción:  una   encapsulación de atributos y servicios,  y una abstracción del mundo real.

 

 

Para  el contexto del  Enfoque Orientado a Objetos  (EOO) un  objeto  es una  entidad que  encapsula datos  (atributos) y acciones  o funciones que  los manejan (métodos). También para  el EOO un objeto se define  como una  instancia o particularización de una  clase.  Los  objetos  de  interés   durante el  desarrollo de  software no  sólo  son tomados de la vida real (objetos visibles  o tangibles), también pueden ser abstractos. En  general  son  entidades  que   juegan   un   rol  bien   definido  en  el  dominio del problema.  Un  libro,   una   persona,  un   carro,   un   polígono,  son  apenas  algunos ejemplos  de objeto.

 

Cada  objeto  puede ser considerado como  un  proveedor de servicios  utilizados por otros  objetos  que  son  sus  clientes.  Cada   objeto  puede ser  a  la  vez  proveedor y cliente.  De allí que  un  programa pueda ser  visto  como  un  conjunto de  relaciones entre  proveedores clientes. Los servicios  ofrecidos por los objetos son de dos tipos:

 

 

  1. Los datos,  que llamamos atributos.

 

  1. b. Las acciones  o funciones, que llamamos métodos.

 

 

 

Características Generales

 

 

 

  1. Un objeto se identifica por un nombre o un identificador único que lo diferencia de los demás. Ejemplo:  el objeto  Cuenta de  Ahorros número 12345 es  diferente al objeto Cuenta de Ahorros número 25789. En este caso el identificador que los hace únicos  es el número de la cuenta.

 

 

  1. b. Un objeto posee estado El estado de un objeto está determinado por los valores que poseen sus atributos en un momento dado.

 

 

  1. c. Un  objeto tiene  un  conjunto  de método El  comportamiento  general de  los objetos   dentro  de   un   sistema  se   describe  o   representa  mediante  sus operaciones o métodos. Los métodos se utilizarán para  obtener o cambiar el estado de los objetos, así como para  proporcionar un medio de comunicación entre  objetos.

 

 

  1. Un objeto tiene un conjunto de atributos. Los atributos de un  objeto  contienen valores  que  determinan el estado del  objeto  durante su  tiempo de  vida.  Se implementan con variables, constantes y estructuras de datos  (similares a los campos de un registro).

 

 

 

  1. Los objetos soportan encapsulamiento. La estructura interna de un  objeto normalmente está oculta  a los usuarios del mismo.  Los datos  del objeto están disponibles solo para  ser manipulados por los propios métodos del objeto. El único   mecanismo  que   lo  conecta   con  el  mundo  exterior   es  el  paso   de mensajes.

 

 

  1. f. Un objeto tiene un tiempo de vida dentro del programa o sistema que lo crea y utiliza.

 

Para   ser   utilizado  en  un   algoritmo  el  objeto   debe   ser   creado  con   una instrucción particular (New ó Nuevo) y al finalizar su utilización es destruido con el uso de otra instrucción o de manera automática.

 

 

CLASE

 

 

 

La clase es la unidad de modularidad en el EOO. La tendencia natural del individuo es la de clasificar  los objetos  según  sus características comunes (clase). Por ejemplo, las personas que asisten  a la universidad se pueden clasificar  (haciendo abstracción) en estudiante, docente, empleado e investigador.

 

 

La clase puede definirse como  la agrupación o colección  de objetos  que  comparten una  estructura común y un comportamiento común. Es una  plantilla que contiene la descripción general de una  colección  de objetos.  Consta  de atributos y métodos que resumen las características y comportamientos comunes de un conjunto de objetos. Todo  objeto  (también llamado instancia de  una  clase),  pertenece a  alguna clase. Mientras un  objeto  es una  entidad concreta que  existe  en el tiempo y en el espacio, una clase representa solo una abstracción.

 

Todos aquellos objetos que pertenecen a la misma clase son descritos o comparten el mismo  conjunto de  atributos y métodos. Todos  los  objetos  de  una  clase  tienen  el mismo  formato y comportamiento.

 

 

Su sintaxis  algorítmica es:

 

 

 

Clase <Nombre de la Clase>

 

 

FClase <Nombre de la Clase>;

 

 

 

En Java sería de esta manera:

 

 

 

class [nombre de la clase] { [atributos o variables de la clase] [métodos o funciones de la clase]

[main]

 

}

 

 

 

Características Generales

 

 

 

  1. Una clase es un nivel de abstracción alto. La clase permite describir un conjunto de características comunes para  los objetos  que  representa. Ejemplo:  La clase Avión  se puede utilizar para  definir los  atributos (tipo  de  avión,  distancia, altura, velocidad de  crucero,  capacidad, país  de  origen,  etc.) y los métodos (calcular  posición en el vuelo,  calcular  velocidad de vuelo,  estimar tiempo de llegada, despegar, aterrizar, volar,  etc.) de los objetos  particulares Avión  que representa.

 

  1. b. Un objeto es una  instancia de una  cla Cada  objeto  concreto dentro  de  un sistema es miembro de una  clase específica  y tiene  el conjunto de atributos y métodos especificados en la misma.

 

 

  1. c. Las  clases se  relacionan entre  sí  mediante  una  jerarquía. Entre   las  clases  se establecen diferentes tipos  de  relaciones de  herencia, en  las  cuales  la  clase Hija (subclase) hereda los atributos y métodos de la clase Padre (superclase), además de incorporar sus propios atributos y méto

 

 

Ejemplos:

 

Superclase: Clase Avión.

 

Subclases  de Avión: Clase Avión  Comercial, Avión  de Combate, Avión de Transporte.

 

 

  1. Los nombres o identificadores de las clases deben colocarse  en singular (Clase

 

Animal, Clase Carro,  Clase Alumno).

 

 

 

RELACIÓN ENTRE OBJETO Y CLASE

 

 

 

Algorítmicamente, las clases  son  descripciones netamente estáticas o plantillas que describen objetos. Su rol es definir nuevos tipos conformados por atributos y operaciones.

 

 

Por  el contrario, los objetos  son  instancias particulares de una  clase. Las clases  son una especie de molde  de fábrica, en base al cual son construidos los objetos. Durante la ejecución  de un programa sólo existen  los objetos, no las clases.

 

La  declaración  de  una   variable  de  una   clase  NO  crea  el  objeto.  La  asociación siguiente: <Nombre_Clase> <Nombre_Variable>; (por  ejemplo,  Rectángulo R), no genera o no crea automáticamente un objeto Rectángulo. Sólo indica  que R será una referencia o una variable de objeto de la Clase Rectángulo.

 

 

La creación  de  un  objeto  debe  ser  indicada explícitamente por  el programador de forma  análoga a como  inicializamos las variables con un  valor  dado sólo que  para los objetos se hace a través  de un método Constructor.

 

 

ATRIBUTO

 

 

 

Son los datos  o variables que  caracterizan al objeto y cuyos  valores  en un momento dado indican su estado.

 

 

Un  atributo es  una  característica de  un  objeto.  Mediante los  atributos se  define información oculta  dentro de  un  objeto,  la cual  es manipulada solamente por  los métodos definidos sobre  dicho  objeto. Un atributo consta  de un  nombre y un valor. Cada  atributo está  asociado a un  tipo  de  dato,  que  puede ser  simple  (entero,  real, lógico, carácter, string)  o estructurado (arreglo, registro, archivo, lista, etc.).

 

 

Su sintaxis  algorítmica es:

 

 

 

<Modo  de Acceso> <Tipo de dato>  <Nombre del Atributo>; Los modos de acceso son:

 

  1. Público: Atributos (o Métodos) que  son accesibles  fuera  de la clase. Pueden ser llamados por  cualquier clase, aun  si no está relacionada con ella. Este modo  de acceso también se puede representar con el símbolo  +.

 

 

  1. b. Privado:  Atributos   (o   Métodos)   que    sólo   son   accesibles    dentro   de   la implementación de la clas También se puede representar con el símbolo  –.

 

 

  1. c. Protegido: Atributos (o Métodos) que  son  accesibles  para  la propia clase  y sus clases hijas (subclases). También se puede representar con el símbolo  #.

 

 

MÉTODO

 

 

 

Son  las  operaciones (acciones  o funciones) que  se  aplican sobre  los  objetos  y que permiten crearlos,   cambiar su  estado o  consultar el  valor   de  sus  atributos.  Los métodos constituyen la  secuencia  de  acciones   que  implementan las  operaciones sobre los objetos. La implementación de los métodos no es visible fuera de objeto.

 

 

La sintaxis  algorítmica de los métodos expresados como funciones y acciones  es:

 

 

 

  • Para funciones se pueden usar  cualquiera de estas dos sintaxis:

 

 

 

<Modo  de Acceso> Función <Nombre> [(Lista Parámetros)]: <Descripción del Tipo de datos>

 

 

  • Para acciones:

 

 

 

<Modo  de Acceso> Acción <Nombre> [(Lista Parámetros)]

 

donde los parámetros son opcionales.

 

 

 

Características Generales

 

 

 

  1. Cada método tiene un nombre, cero o más parámetros (por valor o por referencia) que recibe o devuelve y un algoritmo con el desarrollo del mismo.

 

 

  1. b. En particular se destaca el método constructor, que no es más que el método que se ejecuta cuando el objeto es creado. Este constructor suele tener el mismo  nombre de la Clase/Objeto, pero  aunque es una  práctica común, el método constructor no necesariamente tiene  que  llamarse igual  a  la  clase  (al  menos,   no  en  pseudo- código).  Es un  método que  recibe  cero  o más  parámetros y, lo usual,  es  que inicialicen los valores  de los atributos del objeto.

 

 

  1. c. En lenguajes como  Java y C++ se puede definir más  de un  método constructor, que  normalmente se  diferencian entre  sí  por  la  cantidad de  parámetros que reciben.

 

 

  1. Los métodos se ejecutan o activan cuando el objeto recibe un mensaje, enviado por un objeto o clase externo al que lo contiene, o por el mismo  objeto de manera local.

 

 

 


Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros

Cursos y Diplomados de Tecnología Web visita www.uneweb.edu.ve  para más información

 

Related posts