Posted by : Unknown
lunes, 13 de octubre de 2014
Características de
la Programación Orientada a Objetos (POO)
La POO representa una
metodología de programación que se basa en las siguientes características:
1) Los diseñadores definen
nuevas clases (o tipos) de objetos.
2) Los objetos poseen una
serie de operaciones asociadas a ellos.
3) Las operaciones tienden a
ser genéricas, es decir, operan sobre múltiples tipos de datos.
4) Las clases o tipos de
objetos comparten componentes comunes mediante mecanismos de herencia.
Objeto: Una estructura de datos y conjunto de
procedimientos que operan sobre dicha estructura.
Una definición más completa de objeto es: una entidad de programa que
consiste en datos y todos aquellos
procedimientos que pueden manipular aquellos datos; el acceso a los datos de un objeto es solamente a través
de estos procedimientos, únicamente estos
procedimientos pueden manipular, referenciar y/o modificar estos datos
Clase: Podemos considerar una clase como una colección
de objetos que poseen características y
operaciones comunes. Una clase contiene toda la información necesaria para crear nuevos objetos.
Encapsulación: Es una técnica que permite localizar y
ocultar los detalles de un objeto. La encapsulación
previene que un objeto sea manipulado por operaciones distintas de las definidas.
La encapsulación es como una caja negra que esconde los datos y solamente permite
acceder a ellos de forma controlada.
Las principales razones técnicas
para la utilización de la encapsulación son:
1) Mantener a salvo los
detalles de representación, si solamente nos interesa el comportamiento del
objeto.
2) Modificar y ajustar la
representación a mejores soluciones algorítmicas o a nuevas tecnologías de
software.
Abstracción: En el sentido más general, una abstracción
es una representación concisa de una idea o de un objeto complicado. En un
sentido más específico, la abstracción localiza y oculta los detalles de un
modelo o diseño para generar y manipular objetos. Una abstracción tiene un
significado más general que la encapsulación, pudiendo hablar de Abstracción de
datos en lugar de encapsulación de datos. Como resumen de los 3 conceptos
expuestos anteriormente podemos decir que:
1) Los objetos son
encapsulaciones de abstracciones en la POO.
2) La unidad de encapsulación
en la POO es el objeto.
Una clase es un tipo: Un
objeto es una instancia de ese tipo. Además, la clase es un concepto estático:
una clase es un elemento reconocible en el texto del programa.
Un objeto es un concepto
puramente dinámico, el cual pertenece, no al texto del programa, sino a la
memoria de la computadora, donde los objetos ocupan un espacio en tiempo de ejecución
una vez que haya sido creado.
La programación orientada a
objetos, ha tomado las mejores ideas de la programación estructurada y los ha
combinado con varios conceptos nuevos y potentes que incitan a contemplar las
tareas de programación desde un nuevo punto de vista. La programación orientada
a objetos, permite descomponer más fácilmente un problema en subgrupos de partes relacionadas del problema. Entonces,
utilizando el lenguaje se pueden traducir estos subgrupos a unidades auto
contenidas llamadas objetos.
Objetos: Un objeto es una entidad lógica que contiene
datos y un código que manipula estos datos; el enlazado de código y de datos,
de esta manera suele denominarse encapsulación. Cuando se define un objeto, se
esta creando implícitamente un nuevo tipo de datos.
Polimorfismo: Significa que un nombre se puede utilizar
para especificar una clase genérica de acciones.
Herencia: La herencia es un proceso mediante el cual
un objeto puede adquirir las propiedades de otro objeto.
