Presentación poo

18
Etapas del análisis, diseño y programación orientada a objetos

Transcript of Presentación poo

Etapas del análisis, diseño y programación orientada a objetos

Indice

• conoce la evolución de los lenguajes de programación orientado a objetos, para dar soluciones a problemas reales.

• identifica las diversas metodologías de programación existente para dar solución a problemas reales

• ejemplos de la programación orientada a objetos, para dar soluciones a los problemas reales.

• asocia por medio de ejemplos de la vida cotidiana las características básicas de la programación orientada a objetos, para dar soluciones a problemas reales.

• Identifica las herramientas de UML , para elaborar la documentación de un programa.

• Representa los distintos elementos de la P.O.O, con un lenguaje de modelado, para su correcta documentacion.

Introducción

En esta presentación hablaremos sobre diversos temas como los lenguajes de programación

orientado a objetos, las diversas metodologías de programación que existen entre otros puntos

en ellos podrás encontrar soluciones y información relevante a ello

programación orientada a objetos

• La programación orientada a objetos o POO (OOP según sus siglas en

inglés) es un paradigma de programación que usa los objetos en sus

interacciones, para diseñar aplicaciones y programas informáticos. Está

basado en varias técnicas, incluyendo herencia, cohesión, abstracción,

polimorfismo, acoplamiento y encapsulamiento. Su uso se popularizó a

principios de la década de los años 1990. En la actualidad, existe una gran

variedad de lenguajes de programación que soportan la orientación a objetos.

origen

Los conceptos de la programación orientada a objetos tienen origen en Simula 67, un lenguaje diseñado para hacer simulaciones, creado por Ole-Johan Dahl y Kristen Nygaard, del Centro de Cómputo Noruego en Oslo. En este centro se trabajaba en simulaciones de naves, que fueron confundidas por la explosión combinatoria de cómo las diversas cualidades de diferentes naves podían afectar unas a las otras. La idea surgió al agrupar los diversos tipos de naves en diversas clases de objetos, siendo responsable cada clase de objetos de definir sus propios datos y comportamientos. Fueron refinados más tarde en Smalltalk, desarrollado en Simula en Xerox PARC (cuya primera versión fue escrita sobre Basic) pero diseñado para ser un sistema completamente dinámico en el cual los objetos se podrían crear y modificar "sobre la marcha" (en tiempo de ejecución) en lugar de tener un sistema basado en programas estáticos. La programación orientada a objetos se fue convirtiendo en el estilo de programación dominante a mediados de los años ochenta, en gran parte debido a la influencia de C++, una extensión del lenguaje de programación C. Su dominación fue consolidada gracias al auge de las Interfaces gráficas de usuario, para las cuales la programación orientada a objetos está particularmente bien adaptada. En este caso, se habla también de programación dirigida por eventos.

características de POO.

Existe un acuerdo acerca de qué características contempla la "orientación a objetos". Las características siguientes son las más importantes:

Abstracción

Denota las características esenciales de un objeto, donde se capturan sus comportamientos. Cada objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo, informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar cómo se implementan estas características. Los procesos, las funciones o los métodos pueden también ser abstraídos, y, cuando lo están, una variedad de técnicas son requeridas para ampliar una abstracción.

Encapsulamiento

Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los componentes del sistema.

Modularidad

Se denomina modularidad a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar por separado, pero tienen conexiones con otros módulos.

Polimorfismo

Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre; al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando. O, dicho de otro modo, las referencias y las colecciones de objetos pueden contener objetos de diferentes tipos, y la invocación de un comportamiento en una referencia producirá el comportamiento correcto para el tipo real del objeto referenciado.

Metodologías de programación existente, para dar

soluciones a problemas reales.

La Ciencia de la Computación trata cada vez de resolver nuevos problemas que sean difíciles de resolver mediante las técnicas computacionales existentes. Estos problemas generalmente no tienen solución algorítmica conocida o esta es tan compleja que no tiene una implementación práctica computacional.

Los problemas de decisión que normalmente se presentan en la vida empresarial pueden caer en esta clase de problemas. Por lo general existe una serie de recursos escasos (obreros, presupuesto, tiempo, etc.), o bien requisitos mínimos que hay que cumplir (producción necesaria, horas de descanso, mantenimientos, etc.) que condicionan la elección de la estrategia más adecuada. Por lo general el objetivo al tomar la decisión es llevar a cabo el plan propuesto de manera óptima (bien incurriendo en mínimos costes o bien buscando el máximo beneficio).

Este proceso de solucionar un problema se realiza mediante una búsqueda en el

espacio X. Existen tres esquemas básicos de solución de problemas:

- Esquema de producción.

- Esquema de reducción.

- Esquema de reducción débil.

Analicemos cada uno de estos esquemas

Esquema de Producción:

- Estados: situaciones en que se pueden encontrar los objetos que

caracterizan al problema durante su solución.

En este esquema el problema a solucionar se

representa en un espacio de estados y su solución se reduce a la búsqueda en

este espacio. Los conceptos principales en este esquema son:

- Movimientos: acciones legales que permiten pasar de un estado del

problema a otro.- Función de evaluación de estados: asigna a un estado un estimado

heurístico del esfuerzo necesario para alcanzar una solución desde

este estado.

Esquema de reducción:

En este esquema el problema se descompone en varios subproblemas, los cuales se

resuelven de manera independiente y luego se combinan sus soluciones para obtener la

solución del problema original. Existen dos tipos de movimientos: uno de ellos se encarga de

la descomposición de un estado en otros y el otro constituye un movimiento terminal que

resuelve el problema completamente. Los conceptos principales de este esquema, así como

su procedimiento general son similares a los del esquema de producción, pero las funciones

de evaluación de estado, selección de estados y selección de movimientos se basan en

consideraciones diferentes. Es usual representar los problemas que se resuelven con este

esquema mediante árboles y/o.

Esquema de reducción débil:

Este esquema está orientado a tareas de planificación.

ejemplos de la programación orientada a objetos

Ejemplos de la vida cotidiana P.O.O

Herramientas de UML

La interfaz de UModel® 2015 se puede personalizar para que el usuario tenga sus vistas y herramientas favoritas al alcance de la mano nada más iniciar la aplicación, aumentando su productividad y eficiencia. En UModel puede

personalizar todos los aspectos de los diagramas: su tamaño, posición, color, tipos de fuente, estilos de línea, etc. Desde la ventana de estilos puede acceder fácilmente a todas las opciones de visualización y modificar elementos, un grupo de elementos o una categoría entera. También puede elegir los colores del menú desplegable o asignar

colores personalizados a los elementos, ya sea uno por uno, por grupos y familias o a todo el proyecto.

UModel ofrece flexibles opciones de diseño para organizar los modelos de la manera más lógica y clara posible. La cuadrícula de alineación sirve de base a la hora de colocar elementos en el diagrama. Mientras crea elementos

nuevos o mueve elementos por el panel de dibujo, aparecen líneas visuales que le ayudan a alinear los elementos con los demás elementos del diagrama.

En la barra de herramientas de diseño puede seleccionar elementos del diagrama y definir su alineación, tamaño y espaciado. También puede elegir varios estilos de línea para las transiciones, generalizaciones, asociaciones, etc.

Cada tipo de diagrama cuenta con una barra de herramientas propia. Estas barras de herramientas y sus etiquetas de texto se pueden activar o desactivar.

Ejemplos UML.

Distintos elementos de P.O.O

• Simula (1967) es aceptado como el primer lenguaje que posee las

características principales de un lenguaje orientado a objetos. Fue creado para

hacer programas de simulación, en donde los "objetos" son la representación

de la información más importante. Smalltalk(1972 a 1980) es posiblemente el

ejemplo canónico, y con el que gran parte de la teoría de la programación

orientada a objetos se ha desarrollado.

• Entre los lenguajes orientados a objetos se destacan los siguientes:

•ABAP -> SAP Lenguaje orientado a eventos

•ABL Lenguaje de programación de OpenEdge de Progress Software

•ActionScript

•ActionScript 3

•Ada

•C++

•C#

•Clarion

•Clipper1

•D

•Object Pascal (Embarcadero Delphi)

•Gambas

•Genie

•Harbour

•Eiffel

•Fortran 90/95

•Java

•JavaScript2

Muchos de estos lenguajes de programación no son puramente orientados a objetos, sino que son híbridos que

combinan la POO con otros paradigmas.

Al igual que C++, otros lenguajes, como OOCOBOL, OOLISP, OOPROLOG y Object REXX, han sido

creados añadiendo extensiones orientadas a objetos a un lenguaje de programación clásico.

Un nuevo paso en la abstracción de paradigmas de programación es la Programación Orientada a

Aspectos (POA). Aunque es todavía una metodología en estado de maduración, cada vez atrae a más

investigadores e incluso proyectos comerciales en todo el mundo.

Les dejamos con esta presentación sobre

los diversos temas espero y les pueda servir

de algo

gracias

Equipo:

Josue fco othon sarabia.

Luz adriana carretas urias.

Nadia esmeralda zepeda ruelas.