You are on page 1of 13

PARADIGMA ORIENTADO A OBJETOS

Los objetos en el sentido de la OO han estado presentes entre nosotros desde que se desarroll la conciencia en la especie humana, pero se han tardado miles de aos en aprovecharlos como tcnica. Cunto tiempo ms se necesitar para extraer el mximo rendimiento de la OO? [...] Quiz necesitemos un cambio conceptual antes que una sucesin frentica de cambios tcnicos. Howard Humphrey, 2002

Introduccin
Durante

los ltimos aos la Programacin Orientada a Objetos (POO) ha tomado gran importancia.

El trmino POO indica ms una forma de diseo y

una metodologa de desarrollo que un lenguaje de programacin.

Esta

metodologa busca producir programas portables, reducir los costos de desarrollo y mantenimiento, as como mejorar la calidad.

Introduccin
El atractivo de la orientacin a objetos

es que proporciona conceptos y herramientas con las cuales se modela y representa el mundo real tan fielmente como sea posible.

Orientacin por objetos es un paradigma que

trata de imitar la forma como los seres humanos modelan el mundo

La programacin orientada a objetos es una

tcnica de estructuracin. En ellas los objetos son los principales elementos de construccin

Definicin
La orientacin a objetos permite ver y modelar el

mundo como un conjunto de objetos que intercambian mensajes entre s

La programacin orientada a objetos permite

construir modelos de objetos en el mundo real usando objetos de software

Fundamentos de la POO
Abstraccin Encapsulacin Modularidad Jerarquizacin Tipificado

Esenciales

Complementarias

Concurrencia
Persistencia

Abstraccin
La abstraccin es la facilidad o habilidad para poder concentrarse en el problema que nos apremia y dejar la mente libre de otros temas que nos puedan confundir o mermar nuestra atencin, a mayor grado de abstraccin del ambiente que nos rodee y de problemas ajenos a la reparacin en si mayor efectividad.
Filosofa: La abstraccin consiste en el aislamiento conceptual de una propiedad de un objeto. Informtica: La abstraccin es un principio por el cual se asla toda aquella informacin que no resulta relevante a un determinado nivel de conocimiento.

Encapsulacin

En programacin modular, y ms especficamente en programacin orientada a objetos, se denomina encapsulamiento al ocultamiento del estado, es decir, de los datos miembro, de un objeto de manera que slo se puede cambiar mediante las operaciones definidas para ese objeto.

Modularidad

Es la propiedad que tiene un sistema que ha sido descompuesto en un conjunto de mdulos cohesivos y vagamente conexos. Cada mdulo se puede compilar separadamente, aunque tengan conexiones con otros mdulos.

En un diseo estructural, modularizacin comprende el agrupamiento significativo de subprogramas. En diseo orientado a objetos, la modularizacin debe ceirse a la estructura lgica elegida en el proceso de diseo.

Jerarquizacin
Es una clasificacin u ordenacin de las abstracciones. Por jerarqua denotamos el orden de relacin que se produce entre abstracciones diferentes. Los tipos de jerarqua ms tiles: HERENCIA (generalizacin/especializacin, padre/hijo, jerarqua del tipo "es un"...). Una clase (subclase) comparte la estructura o comportamiento definido en otra clase, llamada superclase. HERENCIA MLTIPLE Una clase comparte la estructura o comportamiento de varias superclases. AGREGACIN Comprende relaciones del tipo "es parte de" al realizar una descomposicin.

Ventajas

Mantenimiento: Alta modularidad. Facilita la extensin del software. Mayor facilidad para realizar los cambios. Rpido desarrollo: Alta reutilizacin. Industrializar la construccin de software a travs del uso intensivo de libreras de clase: herencia.

Ventajas
Diseo conceptual: Los modelos orientados a objetos se aproximan a la realidad. tratando de reflejar en el modelo los objetos que se perciben en el problema. (Intuitivo y fcil de comprender el modelamiento.)
Uniformidad: La representacin de los objetos lleva implcita tanto el anlisis , el diseo y la codificacin de los mismos.

Ventajas
Compresin: Tanto los datos que componen los objetos como los procedimientos que los manipulan estn agrupados en clases. Las clases se corresponden a las estructuras de informacin que los programas tratan.
Flexibilidad: Al tener relacionados los datos con los procedimientos que los manipulan, al tratar cualquier cambio que se realice sobre ellos quedar reflejado automticamente en cualquier lugar donde estos aparezcan.

Ventajas
Reusabilidad: La nocin de objetos permiten que programas que traten las mismas estructuras de datos reutilicen las definiciones de objetos empleados en otros programas. El desarrollo de un programa puede ser una simple combinacin de objetos ya definidos.

You might also like