Académique Documents
Professionnel Documents
Culture Documents
CONCEPTOS
Introduccin
Un concepto muy importante introducido por la
programacin estructurada es la abstraccin. La
abstraccin se puede definir como la capacidad de
examinar algo sin preocuparse de los detalles
internos.
En un programa estructurado es suficiente
conocer que un procedimiento dado realiza una
tarea especfica. El cmo se realiza la tarea no
es importante; mientras el procedimiento sea
fiable se puede utilizar sin tener que conocer
cmo funciona su interior. Esto se conoce como
abstraccin funcional.
Abstraccin de datos
La abstraccin de datos permite no preocuparse
de los detalles no esenciales. Existe en casi
todos los lenguajes de programacin. Las
estructuras de datos y los tipos de datos son un
ejemplo de abstraccin. Los procedimientos y
funciones son otro ejemplo. Slo recientemente
han emergido lenguajes que soportan sus
propios tipos abstractos de datos (TAD), como
Pascal, Ada, Modula-2 ,C++, etc...
Qu es la programacin orientada a
objetos?
Se puede definir POO como una tcnica o estilo
de programacin que utiliza objetos como bloque
esencial de construccin.
Los objetos son en realidad como los tipos
abstractos de datos. Un TAD es un tipo definido por
el programador junto con un conjunto de
operaciones que se pueden realizar sobre ellos. Se
denominan abstractos para diferenciarlos de los
tipos de datos fundamentales o bsicos.
- Objetos fsicos
* automviles en una simulacin de
trfico
* aviones en un sistema de control de
trfico areo
* animales mamferos, etc
- Elementos de interfaces grficos de usuarios
* ventanas
* iconos
* mens
* ratones
- Estructuras de datos
* arrays
* pilas
* rboles binarios
- Tipos de datos definidos por el usuario
* nmeros complejos
* hora del da
Definicin de objetos
Un objeto es una unidad que contiene datos
y las funciones que operan sobre esos
datos. Los datos se denominan miembros
dato y las funciones mtodos o funciones
miembro.
Los datos y las funciones se encapsulan en
una nica entidad. Los datos estn ocultos
y slo mediante las funciones miembro es
posible acceder a ellos
Clases
Una clase es un tipo definido por el usuario que
determina las estructuras de datos y las operaciones
asociadas con ese tipo. Cada vez que se construye un
objeto de una clase, se crea una instancia de esa
clase. En general, los trminos objetos e instancias de
una clase se pueden utilizar indistintamente.
Una clase es una coleccin de objetos similares y un
objeto es una instancia de una definicin de una clase.
La comunicacin con el objeto se realiza a travs del
paso de mensajes. El envo a una instancia de una
clase produce la ejecucin de un mtodo o funcin
miembro. El paso de mensajes es el trmino utilizado
para referirnos a la invocacin o llamada de una
funcin miembro de un objeto.
Herencia
La herencia es la propiedad que permite a los
objetos construirse a partir de otros
objetos.
Una clase se puede dividir en subclases. La
clase original se denomina clase base; las
clases que se definen a partir de la clase
base, compartiendo sus caractersticas y
aadiendo otras nuevas, se denominan
clases
derivadas.
Las clases derivadas pueden heredar cdigo
y datos de su clase base aadiendo su propio
cdigo
y
datos
a
la
misma.
La
herencia
impone
una
relacin
jerrquica entre clases en la cual una
clase hija hereda de su clase padre. Si
una
clase
slo
puede
recibir
caractersticas de otra clase base, la
herencia se denomina herencia simple.
Si una clase recibe propiedades de ms
de una clase base, la herencia se
denomina herencia mltiple.
Polimorfismo
En un sentido literal, significa la cualidad de
tener ms de una forma. En el contexto de
POO, el polimorfismo se refiere al hecho
de que una misma operacin puede tener
diferente comportamiento en diferentes
objetos. Por ejemplo, consideremos la
operacin sumar. El operador + realiza la
suma de dos nmeros de diferente tipo.
Adems se puede definir la operacin de
sumar dos cadenas mediante el operador
suma.
Este concepto es uno de los mas importantes
en trminos de seguridad dentro de nuestra
aplicacin, la encapsulacin es la forma de
proteger nuestros datos dentro del sistema,
estableciendo bsicamente los permisos o
niveles de visibilidad o acceso de nuestros
datos
Con el polimorfismo usamos la generalizacin
olvidando los detalles concretos de los objetos para
centrarnos en un punto en comn mediante una clase
padre.
Tomando como ejemplo la imagen anterior, podemos
decir que un objeto de la clase FiguraGeometrica
puede usarse para referirse a cualquier objeto de
cualquier subClase de FiguraGeometrica..............
en otras palabras una figura geomtrica puede ser un
cuadro, un tringulo, un cuadrado o cualquier figura
que en trminos generales sea geomtrica......
(Ejemplo1) (Ejemplo2)