12
Introducción La programación orientada a objetos es un método de objetos, cada uno de los cuales representan una instancia de alguna clase, y cuyas clases son todos miembros de una jerarquía de clases unidas mediante relaciones de herencias en el que los programas se organizan como colecciones. Además utiliza un conjunto de técnicas que suelen utilizarse para el desarrollo de programas más eficientes, a la par que mejora la fiabilidad de los programas en el cual para el modelado de datos utilizaremos herramienta UML el cual me permite representar nuestro problemas a través de la diagramación, de los diferentes tipos de diagramas como son:Diagrama de Caso de Uso, Diagrama de colaboración, Diagrama de estado, Diagrama de clases el cual representa las clases de los sistemas con sus relaciones estructurales y de herencia. Un diagrama de clases está compuesto por: Nombre, Atributos, métodos. Las clases mantiene las siguientes relaciones Generalización, composición, agregación, asociación su relaciones indica el grado y el nivel de dependencia, se anota en cada extremo de la relación y éstas pueden ser: 1 o muchos 1... (1...n) ó 0 o muchos 0... (0...n) o un número fijo Las clases son los objetos como los tipos de datos son las variables

Introducción Sw

Embed Size (px)

DESCRIPTION

Introduccion

Citation preview

Page 1: Introducción Sw

IntroducciónLa programación orientada a objetos es un método de objetos, cada uno

de los cuales representan una instancia de alguna clase, y cuyas clases

son todos miembros de una jerarquía de clases unidas mediante

relaciones de herencias en el que los programas se organizan como

colecciones.

Además utiliza un conjunto de técnicas que suelen utilizarse para el

desarrollo de programas más eficientes, a la par que mejora la fiabilidad

de los programas en el cual para el modelado de datos utilizaremos

herramienta UML el cual me permite representar nuestro problemas a

través de la diagramación, de los diferentes tipos de diagramas como

son:Diagrama de Caso de Uso, Diagrama de colaboración, Diagrama de

estado, Diagrama de clases el cual representa las clases de los sistemas

con sus relaciones estructurales y de herencia. Un diagrama de clases

está compuesto por: Nombre, Atributos, métodos. Las clases mantiene

las siguientes relaciones Generalización, composición, agregación,

asociación su relaciones indica el grado y el nivel de dependencia, se

anota en cada extremo de la relación y éstas pueden ser: 1 o muchos

1... (1...n) ó 0 o muchos 0... (0...n) o un número fijo

Las clases son los objetos como los tipos de datos son las variables

Hoy en día la tecnología orientada a objetos ya no se aplica solamente a

los lenguajes de programación, además se viene aplicando en el análisis

y diseño al igual que en las bases de datos.

La programación orientada a objetos es una de las formas más

populares de programar y viene teniendo gran acogida en el desarrollo

de proyectos de software desde los últimos años. Esta acogida se debe a

sus grandes capacidades y ventajas frente a las antiguas formas de

programar

Page 2: Introducción Sw

Justificación

La programación orientada a objetos se ha hecho enormemente popular

Escritores y diseñadores de software, junto a compañías importantes en el

campo del software, se dedican de modo continuo a producir compiladores de

lenguajes, sistemas operativos, bases de datos, etc., orientados a objetos.

Hoy en día la Programación orientada a objetos juega un papel muy importante

en la ingeniería del software ya que en la actualidad se requiere hacer

sistemas más pequeños y ligeros, y transformando, de esta manera, la

funcionalidad típica de un sistema en algo del tamaño de un programa. Es aquí

donde la programación orientada a objetos ofrece el rendimiento, la flexibilidad

y funcionalidad requerida para implementaciones en el proceso de desarrollo

del software.

La PO0 (Programación Orientada a Objetos) no sólo son nuevos lenguajes de

programación, sino un nuevo modo de pensar y diseñar aplicaciones que

pueden ayudar a resolver problemas que afectan al desarrollo del software.

Por tal motivo justificamos la vital importancia de la programación orientada a

objetos en la ingeniería del software.

Page 3: Introducción Sw

Objetivos

Objetivo General

Transmitir a nuestros compañeros conocimientos que permitan

desarrollar habilidades para proponer soluciones a problemas de

software utilizando el enfoque de la Programación Orientada a

Objetos y el lenguaje UML

Objetivos específicos

Conceptualizar términos de programación orientados a objetos

Dar a conocer las diferentes tipos de relaciones que existen en el

modelo de clases

Elaborar una exposición de manera dinámica que permita al

estudiante ver la importancia de la programación orientada en

objetos en la ingeniería del software

Page 4: Introducción Sw

Marco conceptual

La programación orientada a objetos

Definición

“La programación orientada a objetos es una extensión natural de la

actual tecnología de programación, y representa un enfoque nuevo y

distinto al tradicional Al igual que cualquier otro programa, el diseño de

un programa orientado a objetos tiene lugar durante la fase de diseño

del ciclo de vida de desarrollo de software El diseño de un programa 00

es único en el sentido de que se organiza en función de los objetos que

manipulará De hecho, probablemente la parte más difícil de la creación

de software orientado a objetos es identificar las clases necesarias y el

modo en que interactúan entre sí” 1

Las Características base son:

Clases y objetos son creados en base al mundo real

Simplificación de los sistemas por medio de la composición,

herencia y polimorfismo

Fácil mantenimiento y evolución del sistema a través de la

encapsulación

Un componente elemental entre la ingeniería del software y la

programación orientada a objetos es el modelo de clases.

EL MODELO DE CLASES

Antes de hablar del modelo de clases tenemos que tener en cuenta que

es una clase.

Una clase es la unidad básica que encapsula toda la información de un

Objeto. La cual esta compuestas por atributos y métodos.

1 Programación orientada a objetos por Luis Joyanes Aguilar

Page 5: Introducción Sw

Una clase es un contenedor de uno o más datos. Junto a las operaciones

de manipulación de dichos datos. Es normal representarla con un

rectángulo. Ejemplo:

Luego de saber que es una clase vamos a ver que es una modelo de

clases

“Un modelo de clases es una descripción de las clases en un sistema y

sus relaciones” 2

En los modelos de clases existen diferentes relaciones entre ellas

tenemos:

GENERALIZACIÓN

Es la relación entre una clase y una o más reuniones de esa misma clase

que conecta a la superclase con sus subclases.

Indica que una clase (clase derivada) hereda los métodos y atributos

especificados por una clase (clase base), por lo cual una clase

derivada además de tener sus propios métodos y atributos, podrá

acceder a las características y atributos visibles de su clase base.

2 Ingenieria del Software, Roger Pressman 6ta Edición, Mc Graw Hill 2012.

Page 6: Introducción Sw

Ejemplo:

AGREGACIÓN

Es una asociación entre clases que representa una relación entre iguales

donde uno de los elementos que intervienen constituyen el todo y el

otro la parte. No hay relación entre los ciclos de vida de las instancias.

Por lo general está representada por una línea con un rombo hueco

COMPOSICIÓN

Es una forma especial de agregación, esta se usa cuando se tiene una

situación en la que un objeto contiene un número de otros objetos.

cuando un objeto contenedor se elimina todas las instancias que están

contenidas también desaparecen. Este se lo representa con un rombo

negro. Ejemplo:

Page 7: Introducción Sw

ASOCIACIONES:

Es una relación que se da entre clases, permite asociar objetos que

colaboran entre sí. Cabe destacar que no es una relación fuerte, es

decir, el tiempo de vida de un objeto no depende del otro.

CASOS DE USO

“Es una estructura para describir la forma en que un sistema lucirá para

los usuarios potenciales es una colección de escenarios iniciados por una

entidad llamado actor”3

EL ACTOR.

Los actores representan un tipo de usuario del sistema, en los diagrama

de caso de uso se los representan con una silueta humana pero no por

ello se dice que debe ser humana, un actor puede ser un objeto, una

persona o en algunos casos sistemas computarizados.

3 Aprendiendo UML en 24 horas

Page 8: Introducción Sw

COLABORACIONES

“Durante la ejecución de un sistema orientado a objetos, los objetos

interactúan con cada uno de los otros objetos “4 aquí es donde veremos

esa interacción mediante los diagramas de secuencia y colaboración.

Un diagrama de secuencia permite modelar las interacciones de los

objetos en el sistema.

Este diagrama nos va mostrando pasos a paso los intercambios de

mensajes, así como los estados de cada uno de los objetos que

intervienen en el sistema.

Los diagramas de colaboración permiten ver a la relación que hay entre

los objetos así como la secuencia de interacción de los mensajes que

están indicadas por números.

Definen las interacciones de la misma manera que el diagrama de

secuencia. Muestra la colaboración de varios objetos en un solo sistema.

A diferencia de los de secuencia estos pueden mostrar el contexto de la

operación

DIAGRAMA DE ESTADO.

Este es otro componente importante en UML, muestra los diferentes

estados en que un objeto se encuentra. Estos diagramas se utilizan para

describir el comportamiento de un sistema, representa los diferentes

estados que puede adquirir una clase, como representarla a diferentes

etapas de su vida el estado de un objeto se puede caracterizar por el

valor de uno o varios de los atributos de su clase, además, el estado de

un objeto también se puede caracterizar por la existencia de un enlace

con otro objeto.

CONCLUSIÓN4 Ingenieria del Software, Roger Pressman 6ta Edición, Mc Graw Hill 2012.

Page 9: Introducción Sw

La programación orientada a objetos no sólo son nuevos lenguajes de

programación, sino un nuevo modo de pensar y diseñar aplicaciones que

pueden ayudar a resolver problemas que afectan al desarrollo del

software a través de la flexibilidad y funcionalidad requerida para

implementaciones del desarrollo software.

Además la programación orientada a objetos permite la optimización del

código generado mediante la herencia, atributos estáticos, pues el

código que se utiliza debe ser común o genérico para volverlo a utilizar.

Un objeto es el alma de un programa, es lo que le permite realizar

trabajos, aunque no es una rutina es el resultado de la instanciación de

una clase.

Mediante el conocimiento impartido sobre la programación orientada a

objetos podemos establecer que una solución antigua de un problema

real, tan solo con relacionarlo con objetos podremos utilizarlo para

proponer soluciones a problemas software.

Hemos dado a conocer a nuestros compañeros de una forma sencilla

los mecanismos que se usan en este nivel de programación de tal

manera que desarrollen sus habilidades y sean capaces de proponer

soluciones software.

Page 10: Introducción Sw

BIBLIOGRAFÍAS

Ingenieria del SoftwareRoger Pressman 6ta EdiciónMc Graw Hill 2012.

Aprendiendo UML en 24 horas

Programación orientada a objetos

Luis Joyanes Aguilar

Ingeniería del softwareSéptima ediciónIAN SOMMERVILLETraducciónMaría Isabel Alfonso Galipienso-Antonio Botía

Programación orientada a objetos

Roberto Rodriguez Echeverria – Encarna Sosa Sánchez

LINKOGRAFIAS

http://www.usmp.edu.pe/publicaciones/boletin/fia/info67/UML.pdf

http://docs.kde.org/stable/es/kdesdk/umbrello/uml-elements.html

http://jms32.eresmas.net/tacticos/UML/Indices/

ResumenGraficos.html

http://hannetomala.blogspot.com/