Investigacion Paradigma Orientado A Objetos
Investigacion Paradigma Orientado A Objetos
Integrantes:
Docente:
Grupo:
4N1-CO
Paradigma Orientado Objeto
Fecha:
INDICE
1. Introducción
……………………………………………………..2
2. Antecedentes……………………………………………………..
3
3. Paradigma orientado a objeto………………………………4
Definiciones
Características
Ventajas
Lenguajes de POO
5. Conclusiones………………………………………………………
16
Página
2
Paradigma Orientado Objeto
INTRODUCCIÒN
Página
3
Paradigma Orientado Objeto
ANTECEDENTES
Página
4
Paradigma Orientado Objeto
Página
5
Paradigma Orientado Objeto
Página
6
Paradigma Orientado Objeto
Ejemplo 1:
Página
7
Paradigma Orientado Objeto
Ejemplo 2:
Ejemplo 1:
Página
8
Paradigma Orientado Objeto
Ejemplo 2:
Página
9
Paradigma Orientado Objeto
1. Principio de Abstracción
• Datos
• Procedimientos
2. Encapsulamiento
3. Herencia
• Simple
Página
10
Paradigma Orientado Objeto
• Múltiple
• Constructores
• Destructores
7. Métodos virtuales
8. Sobreposición de operadores
9. Modularidad: Con este término se conoce la propiedad de
todo sistema de ser dividido en varias partes de estudio a fin de
comprenderlo mejor, trabajarlo eficazmente y no abrumarse
con tanta información. De esta manera se puede extraer,
mediante abstracción, una parte de este, comprenderla y, al
codificar y correr el programa, se puede hacer por módulos.
10. Jerarquización: Proceso que consiste en agrupar
jerárquicamente las clases que se obtuvieron de las
abstracciones realizadas. Esta agrupación consiste en
identificar clases que contengan a otras; así se llega al
concepto de Súper-Clase y Sub-Clase, de donde una súper-clase
es una clase que contiene a una o mas clases (por ejemplo: La
clase Medios de trasporte es una súper-clase que contiene
otras, como Medios terrestres, Medios Acuáticos. Así mismo la
clase Medios terrestres contiene otras como: Automóviles,
Trenes, etc.…) y las sub-clases son aquellas contenidas en
clases mayores (como en el caso de la clase Automóvil en el
ejemplo).Cuando se da aplica en concepto de Jerarquía en las
clases, aparecen otros como Herencia simple (cuando una sub-
clase hereda los métodos, estructura y comportamiento de una
súper-clase), Herencia múltiple (cuando una sub-clase hereda
los métodos, estructura y comportamiento de varias súper-
clases) y Agregación (el concepto de herencia pero visto en
sentido inverso; es decir que una sub-clase es parte de [está
agregada a] una súper-clase), conceptos que tienen mucho que
ver con los tipos de relaciones que hay entre las clases. En los
objetos también puede observarse la relación de agregación
que en este caso es como un objeto puede estar formado por
otros (otra relación de los objetos es la de enlace con la que se
percibe envío de mensajes entre los objetos que es algo
parecido a las relaciones de uso entre las clases).Para
establecer cuanto puede heredar una sub-clase de una superior
se ha determinado que la creación de clases valla acompañada
de una especificación de permisos de acceso. Esto puede
notarse el construir clases de tipo privado (solo tiene acceso la
clase), público (puede tener acceso cualquiera) y protegido
(también tienen acceso las sub-clases).
Página
11
Paradigma Orientado Objeto
• Principio de abstracción
iniciar posición
leer x
leer y
saluda
Página
12
Paradigma Orientado Objeto
Ejemplo 2:
En el ejemplo de los números complejos se tiene que éstos son de la
forma (real, imaginaria), donde real e imaginaria son números reales,
de lo que podemos intuir que los datos sean: real e imaginaria
Los atributos que manipulan estos datos pueden ser todos los
operadores aritméticos (+, -, *, /) y los operadores de relación ( =, <
> ).
Ejemplo 1:
En este ejemplo para leer cualquiera de las coordenadas no se puede
directamente sólo leyendo por separado las coordenadas con los
procedimientos de lectura.
Ejemplo 2:
En el ejemplo de los números complejos cada número complejo no se
puede modificar a menos que sea con los operadores.
• Herencia.
Página
13
Paradigma Orientado Objeto
Ejemplo:
En la definición de posición consta de los datos, coordenadas X e Y y
los métodos que inician y devuelven los valores X y Y.
Procedimiento leer X
Regresa valor de X
• Polimorfismo
Ejemplo 1:
Se puede tener más de un procedimiento saluda en la clase posición.
a) Se puede tener un procedimiento
procedimiento Saluda
escribe "Hola soy posición";
Página
14
Paradigma Orientado Objeto
Constructores
Destructores
Un destructor es un procedimiento de la clase que realiza la tarea
opuesta a su constructor, libera la memoria que fue asignada al
objeto que fue creado por el constructor. Es deseable que el
destructor se invoque implícitamente cuando el objeto abandone el
bloque donde fue declarado. El destructor le permite al programador
despreocuparse de tener que liberar la memoria que deja de utilizar y
correr el riesgo de que ésta se sature.
Ejemplos:
Ejemplo 1:
Destructor iniciar
borra x
borra y
• Métodos Virtuales.
Página
15
Paradigma Orientado Objeto
Ejemplo:
En el ejemplo 1, Posición, Punto y Círculo pueden recibir cada uno el
mensaje saluda y responder de distinta forma, los procedimientos
serían:
a) posición saluda
• Sobreposición de Operadores.
Ejemplo:
En el ejemplo 2 de números complejos se tienen los operadores
aritméticos un ejemplo de sobrecarga de operadores sería:
VENTAJAS
• Modelos
La POO permite realizar un modelo de sistema casi
independientemente de los requisitos del Proyecto. La razón es que
en la POO la jerarquía la establecen los datos, en cambio en la
Programación estructurada la jerarquía viene definida por los
programas. Este cambio hace que los modelos se establezcan de
forma similar al razonamiento humano y, por lo Tanto, resulte mas
natural.
Página
16
Paradigma Orientado Objeto
• Modularidad
Un programa es modular si se compone de módulos independientes y
robustos. Esto permite la Reutilización y facilita la verificación y
depuración de los mismos. En poo, los módulos están Directamente
relacionados con los objetos. Los objetos son módulos naturales ya
que corresponden A una imagen lógica de la realidad.
• Extensibilidad
Durante el desarrollo de sistemas, ocurre la aparición de nuevos
requisitos, por eso es deseable que las herramientas de desarrollo
permitan añadirlos sin modificar la estructura básica del Diseño. En
poo es posible lograr esto siempre y cuando se hayan definido de
forma adecuada la Jerarquía de clases, los atributos y métodos.
• Eliminación de redundancia
En el desarrollo de sistemas se desea evitar la definición múltiple de
datos y funciones comunes. En poo esto se logra mediante la
herencia (evita la definición múltiple de propiedades comunes a
Muchos objetos) y el polimorfismo (permite la modificación de
métodos heredados). Solo hay que Definir los atributos y los métodos
en el antepasado más lejano que los comparte.
• Reutilización
La poo proporciona un marco perfecto para la reutilización de las
clases. El encapsulamiento y la Modularidad nos permiten utilizar una
y otra vez las mismas clases en aplicaciones distintas. En Efecto, el
aislamiento entre distintas clases significa que es posible añadir una
nueva clase o Un modulo nuevo (extensibilidad) sin afectar al resto de
la aplicación.
LENGUAJE EN POO
• Puros
Son los que solo permiten realizar programación orientada a objetos.
Ej: smalltalk, java.
• Hibridos
CONCLUSIONES
Página
17
Paradigma Orientado Objeto
Día a día los costos del Hardware decrecen. Así surgen nuevas áreas
de aplicación cotidianamente: procesamiento de imágenes y sonido,
bases de datos multimediales, automatización de oficinas, ambientes
de ingeniería de software, etc. Aún en las aplicaciones tradicionales
encontramos que definir interfases hombre-máquina "a-la-Windows"
suele ser bastante conveniente.
Página
18