Tecnología de Programación

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Tecnología de Programación"

Transcripción

1 Tecnología de Programación Clase 6 Diego C. Martínez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur

2 Lenguaje de modelado unificado UML (Unified Modeling Language) es un lenguaje gráfico para el diseño completo de sistemas. Procura abarcar diferentes aspectos del diseño, tanto estáticos como dinámicos, por lo que incluye varios tipos de diagramas, entre ellos: Diagrama de Casos de Uso Diagramas de Clase y Objetos Diagrama de Estados Diagramas de Secuencia Diagramas de Colaboración

3 UML - Diagramas de clases El diagrama de clases es un diagrama de la estructura estática del sistema. Un diagrama de clases describe los tipos de objetos en el sistema y las dependencias estáticas que existen entre ellos. Se describe la estructura de la clase (nombre, atributos, operaciones, responsabilidades) y se muestran las relaciones existentes entre las clases. Las relaciones más comunes son la asociación, la agregación, la composición y la generalización.

4 Asociaciones, agregaciones Asociación Los objetos se conocen unos a otros para poder trabajar juntos Agregación Los objetos juntos conforman una unidad con significado. Composición Cada parte puede conformar solo un objeto agregado FunciónTeatral evento 1 acepta 0..* Reserva Equipo 1 11 Jugador Libro 1 0..* Capitulo

5 Asociaciones, agregaciones y los lenguajes OO Para las agregaciones y composiciones algunos lenguajes ofrecen un mecanismo diferente para el tratamiento de objetos. Se denomina usualmente manipulación de objetos con semántica por valor en contraposición a la semántica por referencia. En la semántica por valor, un objeto puede literalmente contener a otro objeto. Este último se denomina subobjeto del primero. semántica por referencia semántica por valor

6 Manipulación de objetos con semántica por referencia En la semántica por referencia, la creación de objetos es explícita, por medio de algún operador que requiere la invocación de un constructor: celdita = new Celda() celdita =!!crearcelda() Efectos (pasos) de la creación explícita de un objeto: 1 o : Crear una nueva instancia de la clase correspondiente 2 o : Inicializar cada campo de la nueva instancia acorde a los valores por defecto. 3 o : Ejecutar la implementación del constructor. 4 o : Asociar una referencia a este objeto recién creado. punto2d -x:real -y:real <<consultas>>... <<constructor>> punto2d(cx,cy:real) punto2d(cx,cy:real) { x cx y cy } P1 new punto2d(2,3)

7 Manipulación de objetos con semántica por valor En la semántica por valor, la creación de objetos puede ser implícita. El objeto es creado automáticamente cuando se crea el objeto que lo contiene. en C++: Punto p1(2,3); El constructor es invocado implícitamente al momento de la creación (automática) del objeto por valor. Efectos (pasos) de la creación implícita de un objeto: 1 o : Crear una nueva instancia de la clase correspondiente 2 o : Inicializar cada campo de la nueva instancia acorde a los valores por defecto. 3 o : Ejecutar la implementación del constructor. 4 o : Asociar una referencia a este objeto recién creado. El constructor puede invocarse explícitamente, pero no provoca la creación de un nuevo objeto, sino la reinicialización del original. No es posible declarar como subobjeto de una clase A, un objeto de tipo B que a su vez tiene un subobjeto de tipo A

8 Operaciones clásicas con referencias Comparación de Referencias La comparación de referencias es una operación que devuelve verdadero, si la referencia es idénticamente la misma, falso en caso contrario. La denotaremos en diseño con el símbolo = Clonación Es una operación de creación e inicialización en base a un objeto modelo. Se realiza por medio de una función predefinida. nuevo = viejo.clone(); No todos los lenguajes poseen una función predefinida de clonación. Se puede usar en ese caso un constructor por copia...

9 Operaciones clásicas con referencias Clonación en Java y creación por copia en C++ class Vector{ private int x; private int y; private int z; public Vector(int x,int y, int z); { this.x = x; this.y = y; this.z = z; } } Vector a = new Vector(1,2,3); Vector b = (Vector)a.clone(); Java class Vector{ public: Vector(); Vector(const Vector& other): x(other.x), y(other.y), z(other.z){} private: int x, y, z; }; Vector a; Vector b(a); C++

10 Operaciones clásicas con referencias Copia La copia es una operación entre dos referencias, en la que los campos de una toman los valores provistos en los campos de otra. Usualmente: nuevo.copy(viejo) Puede haber librerías en el lenguaje, o debe ser implementado por el programador. No puede utilizarse sobre referencias nulas!

11 Operaciones clásicas con referencias Comparación de objetos La comparación de objetos es una operación entre dos referencias, que devuelve verdadero si los campos de ambos objetos referenciados contiene exactamente los mismos valores, aunque se trate de objetos diferentes. falso en caso contrario. Es una comparación superficial. Usualmente unobjeto.equals(otroobjeto) Java tiene equals. C++ no posee una operación para comparar identidades. PHP tiene los dos niveles de comparación : == e ===

12 Operaciones clásicas con referencias Clonación y comparación en profundidad Son las operaciones correspondientes (clonación y comparación) aplicadas recursivamente a todos los niveles de referencias entre objetos. No todos los lenguajes las implementan. X deep_clone(y) X.deep_equals(Y)

13 Usando las dos semánticas de manipulación Es posible asociar o comparar entidades con semántica diferente. Se denominan operaciones híbridas. Resultado de una asignación con origen y y destino x x y y x referencia expandido referencia Copia de referencias x.copy(y) expandido x y.clone() x.copy(y) y no puede ser nula

14 Usando las dos semánticas de manipulación Es posible asociar o comparar entidades con semántica diferente. Se denominan operaciones híbridas. Resultado de una comparación con origen y y destino x x = y y x referencia expandido referencia Comparación de identidades x.equals(y) expandido x.equals(y) x.equals(y) Falso si y es nula

15 Una traza... Punto(cx,cy:Entero) { x cx y cy } Clase Triangulo con subobjetos Triangulo(p1,p2,p3:Punto2D) { punto1 p1 punto2 p2 punto3 p3 } Verdadero o falso?: p1=p2? l.deep_equal(l2)? l2.deep_equal(l3)? t = t2? t.equals(t2)? Clase Linea con referencias Linea(p1,p2:Punto2D) { punto1 p1 punto2 p2 } p1 new Punto(2,4) p2 new Punto(12,28) p3 new Punto(1,3) l new Linea(p1,p2) t new Triangulo(p1,p2,p3) p1 p2.clone() l2 l.clone() l3 l.deep_clone() t2 t p3 t.punto1

16 Semántica por referencia El manejo por referencia provee: Problemas: Posibilidad de compartir información Modelamiento de la relación conoce o tiene acceso a entre objetos Manejo de agrupación de datos con identidad Eficiencia en el espacio de memoria Dynamic aliasing Posibilidad de referencias colgadas Problema de la persistencia de objetos

17 Semántica por valor El manejo por valor provee: Manejo de agregación de datos Modelado de la relación contiene o es parte de entre objetos Eficiencia en el tiempo de acceso Problemas: Duplicación de información

18 Diagramas de objetos UML provee también diagramas para reflejar la estructura dinámica formada por objetos en algún momento de la ejecución. El diagrama de objetos muestra las instancias de las clases. ventanaprincipal:frame botonaceptar:button cartelaviso:label botoncancelar:button texto = Bienvenido fondo = colortexto = FFFFFF nombre del objeto tipo del objeto

19 Diagramas de interacción Los diagramas de interacción son modelos que describen cómo un grupo de objetos colabora para realizar una tarea particular. Típicamente captura el comportamiento de un caso de uso del sistema, o de alguna operación interna que requiere varios objetos, siempre desde el punto de vista de los mensajes entre los objetos. Hay dos tipos de diagramas de interacción: Diagramas de secuencia Diagramas de colaboración.

20 Diagramas de secuencia unobjeto:clasea otroobjetomas <<creates>> otroobjeto:claseb unaconsulta() unmensaje() resultado otraconsulta() unmensajelocal()

21 Diagramas de colaboración objetoa objetoc 1:unMensaje() [condicion falsa] 1.1.1: otraaccion() objetob [condicion verdadera] 1.1.2: unaaccion() objetod 1.1: verificarcondicion()

22 Diagramas de interacción - ejemplo Para ilustrar los dos diagramas seguiremos el ejemplo de Martin Fowler en el libro UML Distilled, para el siguiente caso de uso: la preparación para despachar la compra de productos en una orden de compra. 1. La ventana de Ingreso de Orden envía un mensaje prepare a una Orden. 2. La Orden envía entonces un mensaje prepare a cada Línea de Orden en esa Orden. 3. Cada Línea de Orden controla el Stock Item correspondiente. 4. Si el control retorna true, la Linea de Orden quita la cantidad apropiada de Stock Item y crea un item de entrega (delivery). 5. Si el Stock Item cae por debajo del nivel de reposición, ese Stock Item solicita una reposición (reorder). Los diagramas de secuencia y colaboración nos ayudarán a comprender mejor este proceso y visualizarlo correctamente.

23 Diagramas de secuencia La ventana de Ingreso de Orden envía un mensaje prepare a una Orden. La Orden envía entonces un mensaje prepare a cada Linea de Orden en esa Orden. Cada Linea de Orden controla el Stock Item correspondiente. Si el control retorna true, la Linea de Orden quita la cantidad apropiada de Stock Item y crea un item de entrega (delivery). Si el Stock Item cae por debajo del nivel de reposición, ese Stock Item solicita una reposición (reorder). uningresodeorden unaorden unalineaorden unstockitem prepare() prepare() hasstock:=check() tiempo [hasstock] remove() needtoreorder:= needsreorder () [hasstock] new [needtoreorder] new unroitem adelivery Item

24 Diagramas de colaboración En los diagramas de colaboración se muestran los objetos ejemplo, junto con los mensajes enviados entre ellos, indicando la secuencia, en un caso de uso particular. uningresodeorden 1:prepare() unaorden 2*:[para todas las lineas] prepare() unalineaorden 3:hasStock:= check() 4 [hasstock]: remove() unstockitem 5:needsReorder:= needstoreorder() 7 [hasstock] :new undeliveryitem unreordenitem 6 [needsreorder]: new

25 Diagramas de colaboración Puede usarse otro tipo de numeración denominada Decimal uningresodeorden 1:prepare() unaorden 1.1*:[para todas las lineas] prepare() unalineaorden 1.1.1:hasStock:= check() [hasstock]: remove() unstockitem :needsReorder:= needstoreorder() [hasstock] :new undeliveryitem unreordenitem [needsreorder]: new

Tecnología de Programación

Tecnología de Programación Tecnología de Programación Diego C. Martínez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Lenguaje de modelado unificado UML (Unified Modeling Language) es un lenguaje

Más detalles

Tecnología de Programación DCIC UNS 30/8/2018

Tecnología de Programación DCIC UNS 30/8/2018 Lenguaje de modelado unificado Tecnología de Programación UML (Unified Modeling Language) es un lenguaje gráfico para el diseño completo de sistemas. Diego C. Martínez Departamento de Ciencias e Ingeniería

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1 IWG-101: Introducción a la Ingeniería Departamento de Informática, UTFSM 1 Introducción a UML Historia Potencialidades Diagramas soportados UML en el proceso de desarrollo de SW. Introducción a UML Necesidad

Más detalles

Notación UML para modelado Orientado a Objetos

Notación UML para modelado Orientado a Objetos 1 Notación UML para modelado Orientado a Objetos 2 Notación UML para modelado Orientado a Objetos Índice 1.1. Qué es UML?.. 3 1.2. Por qué interesa UML en la asignatura de Programación Orientada a Objetos?3

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Técnica de modelado de objetos (I) El modelado orientado a objetos es una técnica de especificación semiformal para

Más detalles

DCU Diagramas de casos de uso

DCU Diagramas de casos de uso DCU Diagramas de casos de uso Universidad de Oviedo Departamento de Informática Contenidos Introducción Elementos básicos Más sobre los actores Más sobre los casos de uso Más sobre las asociaciones Otros

Más detalles

Diagramas del UML. A continuación se describirán los diagramas más comunes del UML y los conceptos que representan: Diagrama de Clases

Diagramas del UML. A continuación se describirán los diagramas más comunes del UML y los conceptos que representan: Diagrama de Clases El UML está compuesto por diversos elementos gráficos que se combinan para conformar diagramas. Debido a que el UML es un lenguaje, cuenta con reglas para combinar tales elementos. La finalidad de los

Más detalles

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos: Tutorial de UML Introducción: El Lenguaje de Modelamiento Unificado (UML - Unified Modeling Language) es un lenguaje gráfico para visualizar, especificar y documentar cada una de las partes que comprende

Más detalles

Objetos y Clases en Java. ELO 329: Diseño y Programación Orientados a Objetos

Objetos y Clases en Java. ELO 329: Diseño y Programación Orientados a Objetos Objetos y Clases en Java ELO 329: Diseño y Programación Orientados a Objetos 1 Elementos de Análisis y Diseño orientado a objetos Notación y relaciones entre clases: Las clases son abstracciones para los

Más detalles

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado 1. Introducción Unified Modeling Languaje Fuente: Booch- Jacobson-Rumbauch y diversos sitios Internet, entre otros:

Más detalles

DIAGRAMA DE CLASES EN UML

DIAGRAMA DE CLASES EN UML DIAGRAMA DE CLASES EN UML Mg. Juan José Flores Cueto jflores@usmp.edu.pe Ing. Carmen Bertolotti Zuñiga cbertolotti@usmp.edu.pe INTRODUCCIÓN UML (Unified Modeling Language) es un lenguaje que permite modelar,

Más detalles

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 1. (0,75 PUNTOS) Identificad a continuación las sentencias que son ciertas, descartando

Más detalles

Java Inicial (20 horas)

Java Inicial (20 horas) Java Inicial (20 horas) 1 Temario 1. Programación Orientada a Objetos 2. Introducción y Sintaxis Java 3. Sentencias Control Flujo 4. POO en Java 5. Relaciones entre Objetos 6. Polimorfismo, abstracción

Más detalles

Programación Orientada a Objetos en Java

Programación Orientada a Objetos en Java Programación Orientada a Objetos en Java Curso 2006-2007 Tema 3 Clases y Objetos Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Clases y

Más detalles

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.

Más detalles

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1. Partes de un programa en Java A. Ejemplo de un Programa en Java /* class Ejemplo1 { //comienza la clase Ejemplo1. public static void main(string[] args) { // comienza el método main. JFrame miventana;

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

Definiciones. Tema 21_Módulos Menú 1

Definiciones. Tema 21_Módulos Menú 1 Definiciones Un menú es una lista de opciones o de órdenes que forman parte de un mismo título, mediante los cuales se podrán seleccionar determinadas operaciones de la aplicación. El conjunto de todos

Más detalles

Curso de Python Inicial

Curso de Python Inicial Logo IAA-CSIC Curso organizado por el Gabinete de Formación del CSIC Curso de Python Inicial Clases Contenidos 1. Paradigmas de la Programación 2. Programación Orientada a objetos 3. Clases 4. Objetos

Más detalles

BPMN básico. Clase Modelos de Procesos. Javier Bermudez (jbermude@uc.cl)

BPMN básico. Clase Modelos de Procesos. Javier Bermudez (jbermude@uc.cl) BPMN básico Clase Modelos de Procesos Javier Bermudez (jbermude@uc.cl) Para qué modelar? Para sacar el mejor provecho a los artefactos creados por el hombre 2 BPMN Historia Mayo 2004: BPMI Lanza propuesta

Más detalles

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones Univ. Cantabria Fac. de Ciencias Patricia López Modelo de Casos de Uso vs Modelo de Análisis Modelo de Casos de Uso Modelo de Análisis Descrito con el

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

Constructores y Destructores

Constructores y Destructores Ya se ha apuntado que C++ no permite crear objetos sin dar un valor inicial apropiado a todas sus variables miembro. Esto se hace por medio de unas funciones llamadas constructores, que se llaman automáticamente

Más detalles

M III ABSTRACCIÓN Y CLASIFICACIÓN

M III ABSTRACCIÓN Y CLASIFICACIÓN M III ABSTRACCIÓN Y CLASIFICACIÓN COMPLEJIDAD Y ABSTRACCIÓN La abstracción en el desarrollo del programario En todo el proceso de abstracción siempre hay una parte de la situación o del problema que se

Más detalles

Tema 5. Diseño detallado.

Tema 5. Diseño detallado. Ingeniería del Software II 2011 Tema 5. Diseño detallado. Diseño del Software. Los requisitos y el análisis orientado a objetos se centran en aprender a hacer lo correcto: Entender los objetos de nuestro

Más detalles

Programación orientada a objetos

Programación orientada a objetos Repaso Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual smuelas@fi.upm.es! Clase! Objeto! Atributo o variable de instancia! Método! Instanciar/crear un objeto!

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

Procesadores de lenguaje Tema 5 Comprobación de tipos

Procesadores de lenguaje Tema 5 Comprobación de tipos Procesadores de lenguaje Tema 5 Comprobación de tipos Departamento de Ciencias de la Computación Universidad de Alcalá Resumen Sistemas de tipos. Expresiones de tipo. Equivalencia de tipos. Sobrecarga,

Más detalles

GESTIÓN DE REDES PARTE III

GESTIÓN DE REDES PARTE III PARTE III Arquitectura de Gestión OSI 3.1 Introducción La gestión de red OSI, pensada inicialmente para la gestión de las propias redes OSI, debe su implantación práctica al ser adoptada por los estándares

Más detalles

Introducción a la Computación TFA

Introducción a la Computación TFA Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple

Más detalles

Capítulo V. Implementación

Capítulo V. Implementación Capítulo V Implementación En este capítulo se especifican los recursos utilizados en la implementación de la interfaz, así como se describe su arquitectura funcional y las características principales.

Más detalles

Práctica 2 Gráficos Vectoriales con SVG (versión 29.09.14)

Práctica 2 Gráficos Vectoriales con SVG (versión 29.09.14) Práctica 2 Gráficos Vectoriales con SVG (versión 29.09.14) Programación 3 Curso 2011-2012 Departamento de Lenguajes y Sistemas Informáticos Universidad de Alicante 1. Introducción En esta segunda práctica

Más detalles

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS GUIA PROGRAMACIÓN ORIENTADA A OBJETOS 1. Por qué la P.O.O? R= A medida que se van desarrollando los lenguajes, se va desarrollando también la posibilidad de resolver problemas más complejos. En la evolución

Más detalles

Diagrama de Clases. Diagrama de Clases

Diagrama de Clases. Diagrama de Clases Diagrama de Clases 1 Diagrama de Clases El propósito de este diagrama es el de representar los objetos fundamentales del sistema, es decir los que percibe el usuario y con los que espera tratar para completar

Más detalles

Curso de Java POO: Programación orientada a objetos

Curso de Java POO: Programación orientada a objetos Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos

Más detalles

Clases y Objetos. Informática II Ingeniería Electrónica

Clases y Objetos. Informática II Ingeniería Electrónica Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),

Más detalles

PART II: Moviendo al jugador

PART II: Moviendo al jugador UNITY PART II: Moviendo al jugador El movimiento se lo vamos a dar a través de un programa Definición de programa: Un programa es una secuencia de instrucciones, escritas para realizar una tarea específica

Más detalles

Introducción a la Programación Orientada a Objetos (POO) Introducción a la Programación Orientada a Objetos (POO)

Introducción a la Programación Orientada a Objetos (POO) Introducción a la Programación Orientada a Objetos (POO) Diseño Orientado a Objetos. Metodología enfocada a la solución de problemas complejos. Complejidad del software. Problemas difíciles de precisar. Definición de requerimientos vago y cambio en el desarrollo

Más detalles

Capítulo 4 Análisis y diseño del software de los Robots

Capítulo 4 Análisis y diseño del software de los Robots Capítulo 4 Análisis y diseño del software de los Robots En el capítulo del diseño mecánico de los robots se muestran los distintos sensores que se utilizarán como entradas, así como los motores que deberán

Más detalles

Programación Avanzada Ingeniería Civil en Computación

Programación Avanzada Ingeniería Civil en Computación Interfaces Gráficas de Usuario usando Swing Prof. Federico Meza Programación Avanzada Ingeniería Civil en Computación Junio 2007 Programación Avanzada (ICC) Swing GUI s Junio 2007 1 / 13 GUI - Graphical

Más detalles

Programación Avanzada para Sistemas de Telecomunicación Arrays

Programación Avanzada para Sistemas de Telecomunicación Arrays Programación Avanzada para Sistemas de Telecomunicación Arrays Juan Carlos Cruellas cruellas@ac.upc.es Objetos y clases Introducción. Vectores de datos primitivos. Vectores de objetos. Introducción En

Más detalles

Relaciones entre Clases Programación Avanzada Prim. 2009 FCC-Buap Profesor: M. C. Miguel Rodríguez Hernandez

Relaciones entre Clases Programación Avanzada Prim. 2009 FCC-Buap Profesor: M. C. Miguel Rodríguez Hernandez Relaciones entre Clases Programación Avanzada Prim 2009 FCC-Buap Profesor: M C Miguel Rodríguez Hernandez Asociación Es una relación binaria general que describe una actividad entre dos clases Se describe

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

JavaScript como Orientación a Objetos

JavaScript como Orientación a Objetos Gustavo Lacoste (gustavo@lacosox.org) October 2012 Resumen El objetivo de las siguientes notas es generar una estructura en JavaScript que nos permita reutilizar de manera limpia las funciones creadas

Más detalles

Visual Basic 1. Empleo de módulos y Procedimientos. Procedimientos definidos por el usuario

Visual Basic 1. Empleo de módulos y Procedimientos. Procedimientos definidos por el usuario Empleo de módulos y Procedimientos Procedimientos definidos por el usuario Según lo que hemos visto hasta ahora, Visual Basic, almacena el código en módulos. Hay tres clases de módulos: formularios (.frm),

Más detalles

Proyecto Unico Interpretador de SetCalc

Proyecto Unico Interpretador de SetCalc Universidad Simón Bolívar Dpto. de Computación y Tecnología de la Información CI3721 - Traductores e Interpretadores Abril-Julio 2008 Proyecto Unico Interpretador de SetCalc A continuación se describe

Más detalles

Curso PHP Módulo 1 R-Luis

Curso PHP Módulo 1 R-Luis Lenguaje PHP Introducción Archivos HTML y PHP: Crear un archivo php es tan sencillo como cambiarle la extensión a un archivo html, por ejemplo podemos pasar de index.html a index.php sin ningún inconveniente.

Más detalles

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 1. Cuáles de los siguientes enunciados son declaraciones válidas? 2. Cuál de

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS

PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN ORIENTADA A OBJETOS Clase 1. Introducción Profesor: Diego Sánchez Gómez Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases

Más detalles

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante) 1. : La clase Cuenta. Uso de la clase Cuenta 3. Métodos y objetos receptores de mensajes (Importante) 1 Una clase para cuentas de un banco Vamos a modelar con una clase, un nuevo tipo de datos, donde los

Más detalles

Ejercicio Guiado de Análisis y Diseño Orientado a Objetos. Ejemplo: CAJERO AUTOMÁTICO

Ejercicio Guiado de Análisis y Diseño Orientado a Objetos. Ejemplo: CAJERO AUTOMÁTICO Ejercicio Guiado de Análisis y Diseño Orientado a Objetos Ejemplo: CAJERO AUTOMÁTICO El siguiente ejercicio muestra las diferentes actividades que se realizan dentro del desarrollo de un producto software

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

UML, ejemplo sencillo sobre Modelado de un Proyecto

UML, ejemplo sencillo sobre Modelado de un Proyecto UML, ejemplo sencillo sobre Modelado de un Proyecto Normal &DOLILFDU 0L3DQRUDPD 626 (VFULEHSDUD1RVRWURV Por Armando Canchala Contenido Introducción Objetivo Requerimientos Casos de Uso Subcasos de Uso

Más detalles

Capítulos 2 y 5: Modelación con UML y Modelo Objeto

Capítulos 2 y 5: Modelación con UML y Modelo Objeto Capítulos 2 y 5: Modelación con UML y Modelo Objeto Asignando Responsabilidades 2 Responsabilidades son obligaciones de un objeto, o comportamiento relacionado a su rol en el sistema Qué hace un objeto?

Más detalles

TEMA 1.-Programación orientada a objetos (POO) Objetivo

TEMA 1.-Programación orientada a objetos (POO) Objetivo CURSO DE UML Dotar al alumno de los fundamentos de la programación orientada a objetos (POO, a partir de ahora), definir las características básicas del lenguaje de modelado unificado (Unified Modeling

Más detalles

Operación Microsoft Access 97

Operación Microsoft Access 97 Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe

Más detalles

2.2.- Paradigmas de la POO

2.2.- Paradigmas de la POO 2.2.- Paradigmas de la POO Los principios propios de la orientación a objetos son: 2.2.1.- Abstracción de Datos 2.2.2.- Encapsulamiento 2.2.3.- Ocultamiento 2.2.4.- Herencia 2.2.5.- Polimorfismo Cualquier

Más detalles

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3

Más detalles

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL DNI Apellidos y nombre 1. Cuál de las siguientes afirmaciones no es una causa de los problemas del software?

Más detalles

Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net

Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net 2012 Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net Servinet Sistemas y Comunicación S.L. www.softwaregestionproyectos.com Última Revisión: Febrero

Más detalles

Arrays y Cadenas en C

Arrays y Cadenas en C Arrays y Cadenas en C Los arrays son variables estructuradas, donde cada elemento se almacena de forma consecutiva en memoria. Las cadenas de caracteres son declaradas en C como arrays de caracteres y

Más detalles

Definición de clases: Herencia, polimorfismo, ligadura dinámica

Definición de clases: Herencia, polimorfismo, ligadura dinámica Tema 7 Definición de clases: Herencia, polimorfismo, ligadura dinámica Con alguna frecuencia es necesario definir clases de objetos entre las cuales hay elementos comunes. En una aplicación en la cual

Más detalles

Estructura de Datos [Tipos de datos concretos y tipos de datos abstractos]

Estructura de Datos [Tipos de datos concretos y tipos de datos abstractos] Estructura de Datos [Tipos de datos concretos y tipos de datos abstractos] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-O Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Estructura

Más detalles

Ingeniería del Software I

Ingeniería del Software I - 1 - Ingeniería del Software I Introducción al Modelo Conceptual 2do. Cuatrimestre 2005 INTRODUCCIÓN... 2 CLASES CONCEPTUALES... 3 ESTRATEGIAS PARA IDENTIFICAR CLASES CONCEPTUALES... 3 Utilizar lista

Más detalles

ESTÁNDAR DIAGRAMA DE SECUENCIA

ESTÁNDAR DIAGRAMA DE SECUENCIA ESTÁNDAR DIAGRAMA DE SECUENCIA Un diagrama de secuencia muestra las interacciones entre objetos ordenadas en secuencia temporal. Muestra los objetos que se encuentran en el escenario y la secuencia de

Más detalles

"Módulo OOWS para StarUML" INTRODUCCIÓN

Módulo OOWS para StarUML INTRODUCCIÓN UNA HERRAMIENTA PARA DIAGRAMAS OOWS: "Módulo OOWS para StarUML" Richard Medina Z. Universidad de Concepción, Chile INTRODUCCIÓN Una herramienta CASE (Computer Aided Software Engineering,

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Programación Orientada a Objetos en JAVA

Programación Orientada a Objetos en JAVA Programación Orientada a Objetos en JAVA Jorge Pérez Introducción a la Computación Jorge Pérez Programación Orientada a Objetos en JAVA 1 / 36 Orientación a Objetos OO es un paradigma de modelación y programación

Más detalles

Edición de Ofertas Excel Manual de Usuario

Edición de Ofertas Excel Manual de Usuario Edición de Ofertas Excel Manual de Usuario Alfonso XI, 6 28014 Madrid F(+34) 91 524 03 96 www.omie.es Ref. MU_OfertasExcel.docx Versión 4.0 Fecha: 2012-11-26 ÍNDICE 1 INTRODUCCIÓN 3 2 CONSIDERACIONES DE

Más detalles

Modelado Avanzado con Casos de Uso. Diseño de Software Avanzado Departamento de Informática

Modelado Avanzado con Casos de Uso. Diseño de Software Avanzado Departamento de Informática Modelado Avanzado con Casos de Uso Especificación Gráfica de Casos de Uso Una simple secuencia de acciones no puede describir adecuadamente la riqueza de situaciones que se pueden presentar en un caso

Más detalles

http://www.cem.itesm.mx/extension/ms

http://www.cem.itesm.mx/extension/ms Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos

Más detalles

BPMN Business Process Modeling Notation

BPMN Business Process Modeling Notation BPMN (BPMN) es una notación gráfica que describe la lógica de los pasos de un proceso de Negocio. Esta notación ha sido especialmente diseñada para coordinar la secuencia de los procesos y los mensajes

Más detalles

LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS

LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS Los lenguajes de consulta constituyen una funcionalidad importante de los SGBDOO. El usuario puede recuperar los datos especificando simplemente las condiciones

Más detalles

El Concepto De Objeto y Clase

El Concepto De Objeto y Clase TEMA 3 El Concepto De Objeto y Clase V1.2 Manuel Pereira González Agenda Encapsulamiento y Reutilización Introducción a Objetos y Clases Resumen 1 Encapsulamiento y Reutilización Nivel de abstracción ->

Más detalles

Patrones de software y refactorización de código

Patrones de software y refactorización de código Patrones de software y refactorización de código Introducción y antecedentes de los patrones de software Los patrones permiten construir sobre la experiencia colectiva de ingenieros de software habilidosos.

Más detalles

Introducción al UML. Domingo Hernández H. Escuela de Ingeniería de Sistemas Departamento de computación

Introducción al UML. Domingo Hernández H. Escuela de Ingeniería de Sistemas Departamento de computación Introducción al UML Domingo Hernández H. Escuela de Ingeniería de Sistemas Departamento de computación Contenido Qué es UML?. Diagramas Utilizados en UML. Ejemplos. Qué es UML UML es un Lenguaje de Modelado

Más detalles

Interacción Persona - Ordenador

Interacción Persona - Ordenador Interacción Persona - Ordenador Diseño de la interfaz en la Ingeniería del Software Dr. Pedro Latorre Dra. Sandra Baldassarri Dra. Eva Cerezo Ingeniería del Software Ingeniería del Software: Definición

Más detalles

DISEÑO DE COMPONENTES DE SOFTWARE *

DISEÑO DE COMPONENTES DE SOFTWARE * DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.

Más detalles

Objetivo Las personas que realicen el curso aprenderán a:

Objetivo Las personas que realicen el curso aprenderán a: Objetivo Las personas que realicen el curso aprenderán a: Describir el proceso de desarrollo de software orientado a objetos, lo que incluye las metodologías y los flujos de trabajo de la programación

Más detalles

2.- Diseño del comportamiento: Diagrama de actividades. Mª Antonia Zapata

2.- Diseño del comportamiento: Diagrama de actividades. Mª Antonia Zapata 2.- Diseño del comportamiento: Diagrama de actividades Mª Antonia Zapata Introducción Los diagramas de actividades sirven para representar el comportamiento dinámico de un sistema haciendo hincapié en

Más detalles

Algunas Herramientas de Apoyo al Análisis y Diseño de Software. Agustín J. González ELO329: Diseño y programación orientados a objetos

Algunas Herramientas de Apoyo al Análisis y Diseño de Software. Agustín J. González ELO329: Diseño y programación orientados a objetos Algunas Herramientas de Apoyo al Análisis y Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos Resumen Para desarrollar software hay varias herramientas de gran utilidad

Más detalles

Manual Administrador. Descripción Portal de Administración Servicio Correo Electrónico

Manual Administrador. Descripción Portal de Administración Servicio Correo Electrónico Manual Administrador Descripción Portal de Administración Servicio Correo Electrónico Índice 1 INTRODUCCIÓN 3 2 OPCIONES DEL PORTAL 4 2.1 DEFINICIÓN DE ATRIBUTOS 4 2 1 INTRODUCCIÓN Este manual tiene por

Más detalles

Seven ERP Guía De Referencia - Imágenes

Seven ERP Guía De Referencia - Imágenes Seven ERP Guía De Referencia - Imágenes Digital WARE Ltda. Calle 72 # 12-65 P.2 Bogotá, Colombia 2004 Digital Ware, Ltda. Todos Los Derechos Reservados Toda la documentación utilizada en Seven ERP está

Más detalles

Utilización del sistema operativo GNU/ Linux en las netbooks

Utilización del sistema operativo GNU/ Linux en las netbooks Utilización del sistema operativo GNU/ Linux en las netbooks El sistema operativo es la pieza de software básica de un sistema, que permite manejar los recursos de la computadora, abrir programas, manejar

Más detalles

Acronis License Server. Guía del usuario

Acronis License Server. Guía del usuario Acronis License Server Guía del usuario TABLA DE CONTENIDO 1. INTRODUCCIÓN... 3 1.1 Generalidades... 3 1.2 Política de licencias... 3 2. SISTEMAS OPERATIVOS COMPATIBLES... 4 3. INSTALACIÓN DE ACRONIS LICENSE

Más detalles

Generación de código para Hibernate desde modelos UML

Generación de código para Hibernate desde modelos UML Generación de código para Hibernate desde modelos UML Alejandro Nogueiro Mariscal Ingeniería Técnica en Informática de Sistemas, Universidad de Cádiz 24 de Septiembre 2012 1 / 35 Índice 1 Motivación y

Más detalles

abacformacio@abacformacio.com 1

abacformacio@abacformacio.com 1 Cu Oracle 10gg Estudia el servidor de bases de datos Oracle 10g desde el punto de vista de un diseñador y programador de bases de datos, prestando atención a los objetos que puede crear, como tablas, consultas

Más detalles

UML. Lenguaje de Modelado Unificado

UML. Lenguaje de Modelado Unificado Lenguaje de Modelado Unificado Concepto de Reseña Histórica Características Estándares que conforman Modelo Relacional con Ventajas Críticas Concepto de (Unified( Modeling language) Es un lenguaje usado

Más detalles

Oracle 12c DISEÑO Y PROGRAMACIÓN

Oracle 12c DISEÑO Y PROGRAMACIÓN Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo

Más detalles

Santa Fe Empresas. Transferencias Electrónicas de Fondos. Manual del Usuario Funciones del Cliente Marzo de 2009. Página 1 de 19

Santa Fe Empresas. Transferencias Electrónicas de Fondos. Manual del Usuario Funciones del Cliente Marzo de 2009. Página 1 de 19 Santa Fe Empresas Transferencias Electrónicas de Fondos Manual del Usuario Funciones del Cliente Marzo de 2009 Página 1 de 19 1. Contenido 2. Descripción general del procedimiento... 3 3. Funciones del

Más detalles

GVisualPDA Módulo de Almacén

GVisualPDA Módulo de Almacén GVisualPDA Módulo de Almacén GVisualPDA es una aplicación para Windows Mobile 5/6 que amplía más aún las posibilidades de integración del software de gestión GVisualRec permitiendo estar conectados en

Más detalles

ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA

ISTP CIDET COMPUTACION E INFORMATICA ARREGLOS EN JAVA ARREGLOS EN JAVA I I N T R O D U C C I Ó N En las sesiones anteriores, los datos manejados en los programas han sido datos simples (carácter, entero, reales) En un gran número de problemas es necesario

Más detalles

Uso de excepciones en Java

Uso de excepciones en Java Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que

Más detalles

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS 4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia

Más detalles

6.8 La Arquitectura del Sistema. [Proceso]

6.8 La Arquitectura del Sistema. [Proceso] 6.8 La Arquitectura del Sistema. [Proceso] En el Caso de Estudio se ha hecho énfasis en los objetos del Dominio del problema, ya que representan la esencia del sistema y definen su comportamiento. Sin

Más detalles

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases 3.2 TÉCNICA DE MODELADO DE OBJETOS (OMT) (JAMES RUMBAUGH). 3.2.1 Introducción. En este documento se trata tanto el OMT-1 como el OMT-2, el primero contenido en el Libro Modelado y Diseño Orientado (Metodología

Más detalles

Programación Avanzada para Sistemas de Telecomunicación. Objetos y clases. J.C. Cruellas. Objetos y clases

Programación Avanzada para Sistemas de Telecomunicación. Objetos y clases. J.C. Cruellas. Objetos y clases Programación Avanzada para Sistemas de Telecomunicación Objetos y clases Juan Carlos Cruellas cruellas@ac.upc.es Objetos y clases Concepto de objeto. Concepto de clase. Clases, objetos y programas. Clases

Más detalles

Práctica 2: Instalación de un gestor de bases de datos relacionales y desarrollo de una aplicación Web con persistencia de datos

Práctica 2: Instalación de un gestor de bases de datos relacionales y desarrollo de una aplicación Web con persistencia de datos Práctica 2: Instalación de un gestor de bases de datos relacionales y desarrollo de una aplicación Web con persistencia de datos Sistemas de Información Grado de Informática Dpto. de Informática e Ingeniería

Más detalles