Documentos de Académico
Documentos de Profesional
Documentos de Cultura
orientada a objetos
Elaborado por: Martín Sánchez Morales
Edición: 5.0
ISBN: 978-84-16492-61-9
No está permitida la reproducción total o parcial de esta obra bajo cualquiera de sus formas gráficas
o audiovisuales sin la autorización previa y por escrito de los titulares del depósito legal.
Glosario.............................................................................. 783
Soluciones.......................................................................... 787
UD1
Introducción al paradigma
orientado a objetos
UF2404: Principios de la programación orientada a objetos
Un poco de historia
Una idea que se les ocurrió fue diseñar el programa de manera paralela y con
todas las piezas que tuviera, si tenía 20 piezas el código también tendría 20
módulos, uno por cada pieza. Con esta total correspondencia entre el sistema
físico y el sistema informático, el lenguaje también se enviaba mensajes. Era una
manera de abstraer informáticamente cada pieza en un módulo independiente.
los dos problemas planteados, ya que el principio es lógico que al partir el pro-
grama en módulos como unidades informáticas, la descomposición es auto-
mática desde la visión de las unidades físicas. Y la forma natural de fragmentar
algo muy complejo era una buena manera del resolverse. La reparación muy
sencilla y controlable. El segundo punto también se resuelve ya que, a cada
iteración de simulación, el analista querrá cambiar o bien piezas enteras o bien
el comportamiento de alguna pieza. En ambos casos la localización de los
cambios está perfectamente clara y su alcance se reduce a un componente,
siempre y cuando el interfaz del mismo no cambie. Por ejemplo, si se estuvie-
se simulando un motor de coche, puede que se quisiera modificar la caja de
13
UF2404: Principios de la programación orientada a objetos
Importante
Este lenguaje Smalltalk tuvo gran aceptación e intentaron crear uno que fuera
sucesor de C en los años 80 por la ATT–Bell, así fue como incorporaron las
principales ideas de Smalltalk y de Simula, creando el lenguaje C++. Puede
afirmarse que se debe a este último la gran extensión de los conceptos de la
programación orientada a objetos.
14
UD1
Importante
–– Abstracción y clasificación
–– Herencia y polimorfismo.
15
UF2404: Principios de la programación orientada a objetos
Desde hace cuantiosos años, estas iniciaciones han estado utilizables en los
lenguajes de programación, aunque su uso era voluntario. La diferencia es que
los lenguajes orientados a objetos dan soporte sintáctico a los dos conceptos,
y que su uso es obligado en muchos lenguajes puros orientados a objetos.
16
UD1
cuento o suma) sobre la entidad. Es decir, además de unos tipos que vienen de-
finidos por el lenguaje (enteros, reales, caracteres), el usuario puede crear otros
nuevos y, a partir de éstos, crear instancias o variables de los tipos del usuario.
Cuando esto sucede, se puede definir un cliente abstracto como lo que tie-
nen en común todos los clientes para asignar a continuación, en cada uno de
los tipos de clientes que se tienen, sólo aquello que le es exclusivo. Es decir,
cliente mayorista heredará toda la descripción de cliente abstracto y le sumará
algunas de las características adicionales.
Importante
Existen varios tipos de herencia: los más significativos son simple y múltiple.
Con ello pretendo recalcar que, al inverso de la herencia biológica donde
eternamente se hereda de dos padres, en la orientación a objetos se puede
heredar de uno, dos o más padres. La ilustración de cliente minorista a partir
de cliente es una muestra de herencia simple. Y se podría definir un vehículo
anfibio como una herencia (una subclase) de otras dos clases: coche y barco.
17
UF2404: Principios de la programación orientada a objetos
Esta instrucción es notable para todos los clientes sean del prototipo que
sean. Por ello con un mismo recado y según sea el receptor, se establecen
diferentes rutinas (diferentes representaciones para un mismo mensaje = poli-
morfismo). También y mientras se amplíe que todo cliente tiene una operación
asociada de calculo_descuento, podremos crear nuevos tipos de clientes sin
necesidad ni de recompilar el programa de facturas.
18
UD1
Importante
19
UF2404: Principios de la programación orientada a objetos
20