Programacion Estructurada Y Progracion Orientada
Enviado por karma1412 • 17 de Septiembre de 2014 • 15.202 Palabras (61 Páginas) • 287 Visitas
Indice
1. Introduccion
2. Herencia y polimorfismo
3. El Paradigma Concurrente
4. El Paradigma Logico
5. El paradigma funcional
1. Introduccion
1-programacion orientada a objetos (p.o.o.).
Un proyecto de software es complejo. Las gui, acceso transparente a datos y capacidad de trabajo
En red, lo hacen mas complejo aun. Para enfrentarse a esta complejidad nace la poo.
2-que es la poo?.
Es una tecnica o estilo de programacion que utiliza objetos como bloque fundamental de Construccion.
3-elementos basicos de la poo.
Bloques
Son un conjunto complejo de datos (atributos) y funciones (metodos) que poseen una determinada
Estructura y forman parte de una organizacion.
Los atributos definen el estado del objeto; los metodos, su comportamiento.
Metodos
Es un programa procedimental que esta asociado a un objeto determinado y cuya ejecucion solo
Puede desencadenarse a traves del mensaje correspondiente.
Mensajes
Es simplemente una peticion de un objeto a otro para que este se comporte de una manera
Determinada, ejecutando uno de sus metodos.
Los mensajes comunican a los objetos con otros y con el mundo exterior. A esta tecnica de enviar
Mensajes se la conoce como paso de mensajes.
Clases
Es un tipo definido por el usuario que determina la estructura de datos y las operaciones
Asociadas con ese tipo.
4-caracteristicas.
Abstraccion
Significa extraer las propiedades esenciales de un objeto que lo distinguen de los demas tipos de
Objetos y proporciona fronteras conceptuales definidas respecto al punto de vista del observador.
Es la capacidad para encapsular y aislar la informacion de diseno y ejecucion.
Encapsulamiento
Es el proceso de almacenar en un mismo compartimiento (una caja negra) los elementos de una
Abstraccion (toda la informacion relacionada con un objeto) que constituyen su estructura y su
Comportamiento. Esta informacion permanece oculta tanto para los usuarios como para otros objetos
Y puede ser accedida solo mediante la ejecucion de los metodos adecuados.
Herencia
Es la propiedad que permite a los objetos construirse a partir de otros objetos.
La clase base contiene todas las caracteristicas comunes. Las sub-clases contienen las
Caracteristicas de la clase base mas las caracteristicas particulares de la sub-clase.
Si la sub-clase hereda caracteristicas de una clase base, se trata de herencia simple.
Si hereda de dos o mas clases base, herencia multiple.
Polimorfismo
Literalmente significa "cualidad de tener mas de una forma". En poo, se refiere al hecho que una
Misma operacion puede tener diferente comportamiento en diferentes objetos. En otras palabras,
Diferentes objetos reaccionan al mismo mensaje de modo diferente.
5-ventajas.
Modelos
La poo permite realizar un modelo de sistema casi independientemente de los requisitos del
Proyecto. La razon es que en la poo la jerarquia la establecen los datos, en cambio en la
Programacion estructurada la jerarquia 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.
Modularidad
Un programa es modular si se compone de modulos independientes y robustos. Esto permite la
Reutilizacion y facilita la verificacion y depuracion de los mismos. En poo, los modulos estan
Directamente relacionados con los objetos. Los objetos son modulos naturales ya que corresponden
A una imagen logica de la realidad.
Extensibilidad
Durante el desarrollo de sistemas, ocurre la aparicion de nuevos requisitos, por eso es deseable
Que las herramientas de desarrollo permitan anadirlos sin modificar la estructura basica del
Diseno. En poo es posible lograr esto siempre y cuando se hayan definido de forma adecuada la
Jerarquia de clases, los atributos y metodos.
Eliminacion de redundancia
En el desarrollo de sistemas se desea evitar la definicion multiple de datos y funciones comunes.
En poo esto se logra mediante la herencia (evita la definicion multiple de propiedades comunes a
Muchos objetos) y el polimorfismo (permite la modificacion de metodos heredados). Solo hay que
Definir los atributos y los metodos en el antepasado mas lejano que los comparte.
Reutilizacion
La poo proporciona un marco perfecto para la reutilizacion 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 anadir una nueva clase o
Un modulo nuevo (extensibilidad) sin afectar al resto de la aplicacion.
6-lenguajes en poo.
Puros
Son los que solo permiten realizar programacion orientada a objetos. Ej: smalltalk, java.
Hibridos
Son los que permiten la poo con la programacion estructurada. Ej: c++, pascal.
7-poo en c++ y java.
A)tipos de clases
Una de las principales decisiones al trabajar con poo es la de seleccion de clases. Existen 4
Tipos:
• Manejadoras de datos o de estados: su responsabilidad principal es mantener informacion
De datos o estado. Se reconocen como los sustantivos en la descripcion de un problema y
Generalmente son los bloques de construccion mas importantes de un diseno.
• Pozos o fuentes de datos: estas clases generan datos o los aceptan para procesarlos mas
Adelante. A diferencia de los anteriores, estas clases no retiene los datos por un periodo de
Tiempo sino que los genera sobre demanda o los procesa cuando se le llama.
• Vistas: se encargan de la presentacion de la informacion.
• Auxiliares o de ayuda: guardan poca o ninguna informacion de estado, pero que asisten en
La ejecucion de tareas complejas.
B)sintaxis de una clase
C++:
Class nombre_clase [: [public/protected/private] clase_madre]
{
[lista de atributos];
[lista de metodos];
};
Java:
[public] [final/abstract] class nombre_clase [extends clase_madre]
[implements interface1, [interface2,...]...]
{
[lista de atributos];
[lista de metodos];
};
C)modificadores de acceso a miembros de clases
Existen 3 tipos de usuarios de una clase:
• La propia clase.
• Usuarios
...