Tema 4 Introducción a la Orientación a Objetos. Ingeniería del Software I
|
|
- María Carmen Sara Carrizo Lozano
- hace 7 años
- Vistas:
Transcripción
1 Tema 4 Introducción a la Orientación a Objetos Ingeniería del Software I feliu.trias@urjc.es
2 Definición: Orientación a Objetos Paradigma de computación Define y organiza el software basándose en entidades denominadas objetos Los objetos combinan datos, comportamiento e identidad Ámbitos Programación Bases de datos Procesos de desarrollo Arquitectura Comunicaciones Etc. Introducción
3 Elementos Elementos del paradigma O. O. Mecanismos que permiten abstracción, encapsulación, modularización y jerarquización. Objetos y clases Mensajes y métodos Estado y atributos Herencia y polimorfismo
4 Objetos y Clases Elementos Clase: descripción de los datos (atributos) y de las operaciones que describen el comportamiento de un cierto conjunto de elementos homogéneos Resultado del proceso de abstracción. Abstracción de los conceptos del dominio del problema. Molde de infinitos objetos con ciertas características para crear en el dominio de la computadora un reflejo del mundo real Infinitud de objetos no estrictamente necesaria (meses, universo) Ej.: autobús, fracción, pila, radio, persona
5 Objetos y Clases Clases: Elementos Principio de encapsulación: vistas Pública o Interfaz: comportamiento (a qué operaciones responden los objetos de esta clase) Privada o Implantación: estructuras de datos de la clase y cómo manipulan las operaciones los datos Clase = nuevo bloque de construcción modular cohesión entre datos y operaciones
6 Elementos Objetos y Clases Objeto: Def.1: Ejemplar concreto (instancia) de una clase que responde al comportamiento definido por las operaciones de la clase a la que pertenece Def.2: Proyección de parte del mundo real (del dominio del problema o del de la solución), en la computadora Características: Pueden ser: Tangibles (libros) o Intangibles (deudas) Todo objeto se identifica unívocamente Todo objeto tiene unos datos propios (atributos) y un comportamiento determinado Ej: mi coche, pila nº 2, gastos/ingresos, radio del salón, autobús 518
7 Elementos Objeto: TUNE ON OFF FM Mhz FM AM AM Khz L H L H L H VOLUME TONE BALANCE Estado: valor del volumen valor del tono AM/FM apagado/encendido frecuencia seleccionada CD introducido Comportamiento: Subir/bajar volumen Cambiar tono Cambiar banda Encender/Apagar Selecc. frecuencia Introducir CD
8 Elementos Ejercicios: Definir e identificar Clases y Objetos Ej1.: Se desea crear un sistema software que permita realizar las operaciones de suma, resta, multiplicación y división. Se desea almacenar el conjunto de operaciones realizadas en un intervalo de tiempo determinado. Los números podrán ser reales o imaginarios. Ej2.: Un reproductor MP3 consta de una pantalla de visualización y una serie de botones que permiten: cambiar de canción, subir el volumen, ver cuánta batería le queda al dispositivo y cambiar los colores de la pantalla. Ej3.: La universidad desea almacenar la información de todos los profesores, las asignaturas de cada profesor, el campus en el que se imparten, las páginas Web de cada asignatura. También desea realizar la gestión de las nóminas de estos profesores en función del número de asignaturas y horas impartidas por cada profesor. Ej4.: En un zoo se quiere implementar un sistema de venta de entradas interactivo. En él se podrá consultar la información de los animales que tiene el parque, los horarios y precios del zoo. Este sistema deberá ser accesible para los discapacitados visuales. Ej5.: Se desea crear un sistema de intercambio de datos legales basado en la tecnología P2P. Para ello habrá que tener en cuenta el tipo de ficheros que se va a descargar, los protocolos de comunicaciones entre diferentes sistemas de la red P2P, los servidores a los que se conectan los clientes, el progreso de la descarga y un sistema de búsqueda eficiente de contenidos.
9 Elementos Mensajes y métodos Mensaje: Es la invocación de una operación sobre un objeto Un objeto es el agente activo que lanza el mensaje y otro objeto es el agente pasivo que recibe el mensaje El objeto que recibe el mensaje debe contemplar dicha operación entre las definidas por la clase a la que pertenece Puede verse como la solicitud de un servicio a un objeto Un objeto siempre devuelve un objeto como respuesta al mensaje (a veces él mismo) Método: definición de una operación de una clase Consiste en la descripción formal del comportamiento asociado a un objeto Puede entenderse como un servicio que ofrece el objeto
10 Mensajes y métodos Método: Tipos Elementos producen un cambio en el estado del objeto sobre el que se ejecuta el método aquellos que sin producir ningún cambio en el estado del objeto calculan cierto valor métodos específicos para la inicialización y finalización de la vida de un objeto (constructores y destructores) Permiten la colaboración entre objetos: paso de parámetros/argumentos en los métodos (información del exterior )
11 Estado y atributos Atributo: cada uno de los datos de una clase Representan las características que tiene un determinado objeto Son definidas en la clase del objeto Ej.: Elementos Coche: tipo de gasolina, capacidad del depósito, cilindrada, etc. Estado: conjunto de los valores de los atributos que tiene un objeto, por pertenecer a una clase, en un instante dado Ej.: mi coche con gasoil, depósito vacío, 1.200cc, etc.
12 Elementos Herencia y polimorfismo Concepto de herencia: Forma de estructurar tipos/clases según su comportamiento mediante la creación de una jerarquía de clasificación Clase padre/madre/base Superclase Clase hija/extendida/derivada Subclase B A Generalización Especialización A hereda de B A es un refinamiento de B A está más especializada que B A es una subclase de B B es superclase de A A es un B
13 Elementos Propiedades de la herencia: Intuitivamente fácil de comprender Una subclase extiende las propiedades de su superclase Una subclase es una forma restringida de la superclase Un objeto de una subclase puede acceder a campos y métodos declarados en su superclase hereda sus atributos y operaciones Propósitos Especificación: Si la superclase es un interfaz o una clase abstracta Especialización: La superclase proporciona funciones a las subclases, pero éstas pueden redefinir los métodos adecuándolos a su comportamiento específico Extensión: La subclase añade nueva funcionalidad (métodos y campos) pero no modifica ni altera lo heredado Subtipo Combinación múltiple: Se hereda de varias clases herencia múltiple
14 Elementos Beneficios de la herencia Reusabilidad del Software: se reutiliza el código heredado Mayor fiabilidad: al reusarse el código existente, hay más posibilidad de encontrar errores y subsanarlos Consistencia de interfaces: la jerarquía de herencia asegura que objetos similares tienen vistas públicas similares Prototipado rápido: al reutilizarse código se favorece este método de desarrollo Ocultación de información: la disponibilidad de interfaces claras reduce las interconexiones entre sistemas (clases padre como interfaz)
15 Elementos Ejemplo: (herencia simple) Figura: color rota, mueve, dibuja F_cerrada: perímetro, área Polígono: número_lados Cuadrilátero: perímetro, área Cuadrado: perímetro, área Círculo: radio perímetro Figura F_abierta F_cerrada Polígono Elipse Triángulo Cuadrilátero Cuadrado Círculo - Todas las figuras se pueden: rotar escalar - Todas tienen un color - Clases abstractas: Figura F_Cerrada F_Abierta Polígono
16 Herencia múltiple: Elementos Una clase hereda de más de un antecesor Vehículo Casa Problema: herencia repetida Caravana Vehículo Terrestre Acuático Anfibio Lancha
17 Polimorfismo Elementos Posibilidad que tienen distintos objetos de actuar de una manera diferente (desencadenar operaciones distintas) en respuesta a un mismo mensaje (una misma llamada a función)
18 Elementos Tipos de polimorfismo Ad hoc o estático: Sobrecarga Coerción: conversión de objetos de una clase a otra (cast) Universal Bases: Herencia: no se puede aplicar polimorfismo si no es con clases que hereden de otras Instanciación dinámica: una referencia a un objeto A puede estar haciendo referencia a distintos objetos derivados de la clase A el polimorfismo siempre implica enlace dinámico Beneficios: Abstracción: no es necesario conocer toda la jerarquía de clases derivadas Extensibilidad: aumentar la funcionalidad del programa/sistema sin tener que modificar el código ya escrito
19 Principios básicos (procesos a tener en cuenta) Abstracción Encapsulación u Ocultamiento Modularidad Jerarquía Principios / Bases
20 Principios / Bases Abstracción Def.: Proceso mental de extracción de las características esenciales (requisitos o funciones) de algo, ignorando los detalles superfluos Motivo: No es posible manejar todos los aspectos de un sistema al mismo tiempo un individuo puede comprender 7 ± 2 detalles a la vez Fundamentalmente subjetiva (dependiendo del interés del observador) Punto de vista del cliente (usuario) Implementación en OO Clases Ejemplos: Autobús visto por un mecánico y un pasajero Persona en un historial clínico y en la universidad Radio como emisora o como aparato
21 Principios / Bases Encapsulación u ocultamiento Def.: Proceso por el que se ocultan los detalles del soporte de las características esenciales de una abstracción (cómo se realizan las funciones) Esencial: características del mundo real abstracción Superfluo: estructuras de datos y algoritmos Punto de vista del desarrollador (sistema) Ventajas: Delimita el área de búsqueda de errores Reduce la complejidad del sistema Facilita la modificación del sistema Implementación en OO Un objeto sólo tiene accesible su interfaz (servicios o métodos) Los atributos son siempre privados Acceso por métodos de solicitud y establecimiento de valor
22 Principios / Bases Modularidad Def.: Proceso de descomposición de un sistema en un conjunto de piezas poco acopladas (independientes) y altamente cohesivas (con significado propio): módulos Conceptos asociados: Acoplamiento: fuerza de la dependencia entre módulos ideal: bajo Cohesión: mide el grado de conectividad entre los elementos de un solo módulo ideal: alta Descomposición en OO: Descomponer para obtener las abstracciones claves del dominio del problema El mundo es un conjunto de objetos agrupados que colaboran Cada objeto exhibe un comportamiento definido (no identificable, necesariamente, con una función del sistema)
23 Modularidad Ejemplo 1: Principios / Bases Sistema universitario (alumnos, profesores, rectores, personal administrativo, aulas, bibliotecas, estatutos, planes de estudios) alta modularidad Cohesión: baja se entienden por sí mismos Acoplamiento: bajo no dependen unos de otros para existir Ejemplo 2: Ámbitos personales baja modularidad Cohesión: alta necesitan del entorno, costumbres sociales, cultura para explicarse Acoplamiento: alto una pérdida en la familia repercute en el estado de ánimo de todos
24 Jerarquía Principios / Bases Def.: Proceso de estructuración por el que se produce una organización de un conjunto de elementos en grados o niveles de responsabilidad, de incumbencia o de composición entre otros Tipos: 1. Por grado de composición o de agregación: una abstracción o módulo se compone de un conjunto de elementos 2. Por grados de clasificación, clasificación de las distintas abstracciones de la más general a las más específicas
25 Jerarquía Principios / Bases Univesidad Facultades Rectorado Composición Departamentos Dirección Profesores Clasificación Titulares Asociados Interinos Funcionarios
26 Principios / Bases Jerarquía Favorece la extensibilidad: Facilidad con la que los productos software pueden ser adaptados a cambios incrementales de especificaciones. Principios para facilitar la extensibilidad: Simplicidad de diseño Descentralización Mecanismos para ayudar a conseguir la extensibilidad: Herencia Polimorfismo Añadir una nueva funcionalidad? Identificar qué clase la soportará. Implementar la nueva funcionalidad en esta clase Cómo? Modificar la definición original? Hacer copia y modificar la copia? Modificar la original por crecimiento? Óptimo por crecimiento: se crea una subclase que define las diferencias entre la clase existente y la nueva abstracción: La clase existente no resulta afectada. No hay código repetido
27 Comport. Estructura Conclusión Qué es la orientación a objetos? Organizar el software como una colección de objetos que contiene tanto estructuras de datos como comportamiento. Concepto Abstracción Clase Encapsulación Definición Crear clases para simplificar aspectos de la realidad Una descripción de la organización y acciones compartidas por uno o más objetos similares Diseñar clases y objetos para restringir el acceso a los datos y comportamiento mediante la definición de un conjunto de mensajes que un objeto puede recibir Herencia Objeto Paso de mensajes Los datos y comportamiento de una clase es incluido o usado como base de otra Elemento individual, identificable, real o abstracto, que contiene datos sobre sí mismo y descripciones de cómo manipular dichos datos Un objeto envía datos a otro o le solicita la invocación de un método Método Polimorfismo Forma de acceder, establecer o manipular la información de un objeto Diferentes clases pueden responder de forma diferente ante un mismo mensaje Tabla extraída de The Quarks of Object-Oriented Development. Deborah J. Armstrong. Communications of the ACM. Vol.49/No.2 Febrero 2006
28 Tema 4 Introducción a la Orientación a Objetos Ingeniería del Software I feliu.trias@urjc.es
Tema X: Introducción al Paradigma Orientado. a Objetos. Diana Marcela Sánchez Fúquene Ingeniería del Software de Gestión. www.kybele.urjc.
Tema X: Introducción al Paradigma Orientado Diana Marcela Sánchez Fúquene Ingeniería del Software de Gestión a Objetos Índice Introducción Elementos Clases y Objetos Mensajes y Métodos Atributos y Estado
Más detallesTema 1: Introducción
Tema 1: Programación Orientada a Objetos Marcos López Sanz Máster en Informática Gráfica, Juegos y Realidad Virtual Programación tradicional: Características (I) Secuencial: el tiempo de ejecución de cada
Más detallesProgramación Orientada a Objetos. Conceptos Básicos
Programación Orientada a Objetos Conceptos Básicos Programación Orientada a Objetos Paradigma de programación Un programa orientado a objetos está organizado como un conjunto de agentes en interacción
Más detallesIntroducción a OOP. Programación Orientada a Objeto
Introducción a OOP Programación Orientada a Objeto Evolución Programación no Estructurada, Programación procedimental, Programación modular y Programación orientada a objetos. Programación no Estructurada
Más detallesHERENCIA Y TIPOS. Articulo. Video Audio Altavoces. Amplificador
HERENCIA Y TIPOS. Las clases con propiedades y funciones comunes se agrupan en una superclase. Las clases que se derivan de una superclase son las subclases. Las clases se organizan como jerarquía de clases.
Más detallesIntroducción al Paradigma Orientado a Objetos
Introducción al Paradigma Orientado a Objetos 1 Objetos Qué es un objeto? Un objeto es un componente de software que contiene variables y métodos y que es usado para modelar algún aspecto de la vida real.
Más detallesLa Orientación a Objetos. Diseño de Software Avanzado Departamento de Informática
La Orientación a Objetos Métodos Estructurados y Métodos Orientados a Objetos Métodos estructurados Origen en la programación estructurada (secuencia, ramificación, iteración, función). Pensar en términos
Más detallesFederico Peinado
Federico Peinado www.federicopeinado.es Depto. de Ingeniería del Software e Inteligencia Artificial disia.fdi.ucm.es Facultad de Informática www.fdi.ucm.es Universidad Complutense de Madrid www.ucm.es
Más detallesCurso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM. Programación en Java Diciembre 2010 Índice 1 Introducción 2 Comportamiento y estado 3 POO en Java 4 Relaciones 5 Herencia
Más detallesConceptos de Programación Orientada a Objetos
Paradigmas de programación Prog. orientada a objetos Conceptos de Programación Orientada a Objetos Abstracción de Programación estructurada Programación imperativa 2 Programación estructurada (I) Programación
Más detallesIngeniería del Software Orientada a Objetos. Unidad 5: Conceptos del Paradigma Orientado a Objetos
Ingeniería del Software Orientada a Objetos Unidad 5: Conceptos del Paradigma Orientado a Objetos Por qué la Orientación a Objetos? Proximidad de los conceptos de modelado respecto de las entidades del
Más detallesIntroducción a la Orientación a Objetos
Introducción a la Orientación a Objetos Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones (TIC) Universidad de A Coruña http://www.tic.udc.es/~fbellas fbellas@udc.es
Más detallesTema: Herencia en C#.
Programación II. Guía No. 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Herencia en C#. Objetivos Crear clases a través de la herencia de clases existentes. Describir
Más detallesCada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas
ADyA Hay para todos los gustos Estructurados (C, Pascal, Basic, etc.) Funcionales (CAML) Declarativos (Prolog) Orientados a Objetos (C#, VB.NET, Smalltalk, Java) Orientados a Aspectos Híbridos (Lisp, Visual
Más detallesEdwin Andrés Cubillos Vega
PROGRAMACION ORIENTADA A OBJETOS Edwin Andrés Cubillos Vega Company LOGO Contenido Introducción Clases y Objetos Herencia Constructores y Destructores Polimorfismo Contenido Introducción Clases y Objetos
Más detallesProgramación Orientada a Objetos
Programación Orientada a Objetos Departamento de Lenguajes y Ciencias de la Computación E.T.S.I. Informática Universidad de Málaga Contenido Introducción histórica Conceptos básicos de la Programación
Más detallesEnfoque de Desarrollo de software OO
Enfoque de Desarrollo de software OO Enfoque OO) Ilustraciones de: Object-Oriented Design with Applications,1991, G. Booch 1 Objetivos Presentar los conceptos básicos del enfoque orientado a objetos. 2
Más detallesProgramación Orientada a Objetos
Programación Orientada a Objetos E.T.S.I. Informática Universidad de Málaga http://www.lcc.uma.es/ Contenido Introducción histórica Conceptos básicos de la Programación O. O. Conceptos avanzados de la
Más detallesFundamentos de Programación Orientada a Objetos ( POO ) Parte 2 Desarrollo de Software
República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Trimestre I Fundamentos de Programación Orientada a Objetos ( POO ) Parte 2 1 Qué es la programación orientada a objetos?
Más detallesTema 3: Relaciones entre objetos y clases
Tema 3: Relaciones entre objetos y clases Programación Orientada a Objetos Marcos López Sanz Máster en Informática Gráfica, Juegos y Realidad Virtual Índice Relaciones entre clases Composición Asociación
Más detallesCurso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra l.guerra@upm.es Curso INEM. Programación en Java Marzo 2011 Índice Previo Repaso y encapsulación Empaquetado Relaciones entre clases Herencia
Más detallesANÁLISIS Y DISEÑO ORIENTADO A OBJETOS
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS OBJETIVOS GENERALES Analizar, Diseñar e Implementar Sistemas Computacionales utilizando el Paradigma de la Orientación a Objetos a través del conocimiento de su sustentación
Más detallesProgramación Orientada a Objetos
Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Programación Orientada a Objetos Algoritmos y Programación II Junio, 2004 Las tecnologías de objetos hoy
Más detallesCAPÍTULO 2: CARACTERÍSTICAS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS. ABSTRACCIÓN. ENCAPSULAMIENTO. PRINCIPIO DE OCULTACIÓN. HERENCIA. POLIMORFISMO.
1 UNIDAD 1: ORIENTACIÓN A OBJETOS. CAPÍTULO 1: INTRODUCCIÓN. HISTORIA. ESPÍRITU DEL PARADIGMA ORIENTADO A OBJETOS. CONCEPTOS BÁSICOS: OBJETO, ATRIBUTO, MÉTODO, MIEMBRO, MENSAJE, CLASE, EVENTO. CAPÍTULO
Más detallesLas clases están compuestas por un conjunto de miembros. (datos y funciones) también se conocen como (atributos y métodos)
Clases y Objetos Las clases están compuestas por un conjunto de miembros (datos y funciones) también se conocen como (atributos y métodos) Una clase se usa como el modelo que deben seguir los objetos Un
Más detallesobtenidos a partir de los objetos que manipula. un nuevo paradigma de programación, La POO es Clases su forma de módulo.
(a) definición (b) elementos y notación (c) modelo de computación (d) ejecución de un sistema (e) exportación selectiva Clases Programación Orientada a Objetos DCIC UNS 2002 47 La POO es un nuevo paradigma
Más detallesTema: Funciones Virtuales y Polimorfismo.
Programación II. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Funciones Virtuales y Polimorfismo. Objetivos Comprender que es ligadura e identificar sus tipos.
Más detallesTema: Funciones Virtuales y Polimorfismo.
Programación II. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Funciones Virtuales y Polimorfismo. Objetivos Específicos Comprender que es ligadura e identificar
Más detallesTema 3. Diagramas de Clases y Objetos C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA
Tema 3. Diagramas de Clases y Objetos C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A R Í A B E L É N M E L I Á N BAT I STA J O S É MARCOS
Más detallesUniversidad Salesiana de Bolivia
Universidad Salesiana de Bolivia Ingeniería de Sistemas I DATOS DE IDENTIFICACIÓN PLAN DE DISCIPLINA GESTIÓN II - 2015 INSTITUCIÓN UNIVERSITARIA: Universidad Salesiana de Bolivia RECTOR: Dr. Rvdo. P. Thelian
Más detallesMetodologías en la Ingeniería del Software Métodos Orientados a Objetos
Metodologías en la Ingeniería del Software Métodos Orientados a Objetos García Departamento de Ciencias de la Computación Universidad de Alcalá Contenidos Historia Orientación a Objetos (OO) Problemas
Más detallesAcademia de computación de IE, ICA e ISISA. Unidad didáctica Programación Orientada a Objetos
Academia de computación de IE, ICA e ISISA Unidad didáctica Programación Orientada a Objetos Elaboración y diseño de cien reactivos de opción múltiple para la unidad didáctica programación orientada a
Más detallesProgramación orientada a objetos I
Introducción Programación orientada a objetos I Curso INEM. Programación en C++ Santiago Muelas Pascual smuelas@fi.upm.es Qué es la POO? Un paradigma de programación Un paradigma es una forma de afrontar
Más detallesProgramación Orientada a Objetos. Integrantes: Santiago Hernández Bolívar Edwin Alexander Bohórquez
Programación Orientada a Objetos Integrantes: Santiago Hernández Bolívar Edwin Alexander Bohórquez Tabla de Contenido Historia. Filosofía del paradigma. Conceptos claves. Ventajas y desventajas. Lenguajes
Más detalles09/01/2008. Nombre de la clase. Atributos. Métodos/Operaciones
Diagramas de Clase Angela Carrillo R. Clase Descripción de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semántica Implementa una o más interfaces Nombre de la clase
Más detallesUniversidad Nacional del Santa E.A.P. Sistemas e Informática Microcomputación III
HERENCIA Se entiende por herencia el proceso por el que un objeto puede tomar características de otro objeto. La herencia Se puede usar de dos formas: 1. Cuando una clase escrita no llega a cubrir las
Más detallesModularidad: Tipos abstractos de datos Programación Orientada a Objetos Tema 2: Modularidad
TEMA 2 1 Modularidad: Tipos abstractos de datos CONTENIDOS 2 1. Abstracción 2. Tipos de datos 3. Tipos abstractos de datos 4. Modularidad 5. Reutilización 6. Paradigmas y lenguajes 7. Diseño estructurado
Más detallesTipos Abstractos de Datos (TAD) Lección 1
Tipos Abstractos de Datos (TAD) Lección 1 Esquema Paradigmas de programación Definición de TAD Programación con TAD Ventajas de la programación con TAD Lectura recomendada: secciones 1.1 y 1.2 del libro
Más detallesIntroducción a la Ingeniería de Software
Introducción a la Ingeniería de Software Diseño Software Engineering 7ed Addison Wesley Ian Sommerville Diseño Durante el diseño se refina la arquitectura El diseño es un plano de una solución para el
Más detallesUnidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores.
Unidad IV Métodos. 4.1 Definición de un método. El polimorfismo, en programación orientada a objetos, se refiere a la posibilidad de acceder a un variado rango de funciones distintas a través del mismo
Más detallesTEMA 6: Lenguajes orientados a objetos. Fundamentos teóricos.
15/03/2011 TEMA 6: Lenguajes orientados a objetos. Fundamentos teóricos. Índice 1 INTRODUCCIÓN 1 1.1 Historia de los lenguajes orientados a objetos 2 1.2 Desarrollo de Software orientado a objetos 2 2
Más detallesTema: Funciones Virtuales y Polimorfismo.
POO104. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos Tema: Funciones Virtuales y Polimorfismo. Materiales y Equipo Computadora con el software C
Más detallesPROGRAMACION II. Dr. Mario Rossainz López. Fac. de Cs. de la Computación Benemérita Universidad Autónoma de Puebla Primavera de 2017
PROGRAMACION II Dr. Mario Rossainz López Fac. de Cs. de la Computación Benemérita Universidad Autónoma de Puebla Primavera de 2017 ABSTRACCIÓN: Proceso mental e intelectual que ignora selectivamente partes
Más detallesProgramación Orientada a Objetos
Programación Orientada a Objetos Clases, herencia y contención Programación Avanzada 7 de agosto de 2017 Contenido Introducción Contenido Introducción Introducción al DOO Contenido Introducción Introducción
Más detalles! Fundamentos de la POO. ! Comportamiento y estado. ! Clases y objetos en Java
Introducción a la programación orientada a objetos Curso de Programación en Java! Fundamentos de la POO! Comportamiento y estado! Clases y objetos en Java Contenidos Luis Guerra l.guerra@upm.es Enero 2012
Más detallesUNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA
UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA DIRECCIÓN GENERAL DE ASUNTOS ACADÉMICOS PROGRAMA DE ASIGNATURA POR S I. DATOS DE IDENTIFICACIÓN 1. Unidad Académica: Facultad de Ciencias Químicas e Ingeniería 2.
Más detallesDefiniciones. Orientación a Objetos
Definiciones en Orientación a Objetos Dr. Oldemar Rodríguez Rojas Escuela de Informática Paradigma Funcional Se basan en la idea de que el Dominio de una Aplicación y los Requerimientos se pueden modelar,
Más detallesIntuitivamente es el proceso que se trata de formular y evaluar una solución para un problema dado
Unidad I Conceptos y principios del diseño (fcc) 1.1 El diseño del software e Ingeniería del software Concepto de diseño.- Proceso de aplicar distintas técnicas y principios con el propósito de definir
Más detallesProgramación n de sistemas
Programación n de sistemas Orientación a Objetos en Java I. Programación Basada en objetos II. Programación orientada a objetos Ingeniería Telemática M. Carmen Fernández Panadero mcfp@it.uc3m.es
Más detallesUAA-DSE Programación 2 / C++ Eduardo Serna-Pérez
6 Herencia y Polimorfismo La Herencia y el Polimorfismo son dos de los principales mecanismos de programación que caracterizan a la programación orientada a objetos. La herencia sustenta su mecanismo en
Más detallesIntroducción a la Orientación a Objetos
Introducción a la Orientación a Objetos Breve historia de la OO 1960s. Simula incorpora características propias de la OO. 1970s. Smalltalk. Lenguaje totalmente OO. 1990s. Boom de la OO. 2000-Hoy. Época
Más detallesEvolución de la Programación Orientada a Objetos
Evolución de la Programación Orientada a Objetos Dr. Luis Gerardo de la Fraga Departamento de Computación Cinvestav Correo-e: fraga@cs.cinvestav.mx 7 de diciembre de 2006 Dr. Luis Gerardo de la Fraga Cinvestav
Más detallesDiplomado Programación orientada a objetos con C++ 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 detallesPrincipios de Diseño Orientado a Objetos
Principios de Diseño Orientado a Objetos PRINCIPIOS DE DISEÑO DE CLASES PRINCIPIO ABIERTO-CERRADO (OCP): Un módulo debe ser abierto para extensión pero cerrado para modificación. Wikipidia: La noción de
Más detallesProgramación Orientada a Objetos
Programación Orientada a Objetos PROGRAMACIÓN ORIENTADA A OBJETOS 1 Sesión No. 4 Nombre: Herencia Contextualización Cuando hablamos de informática podemos contemplar varios elementos que se utilizan dentro
Más detallesPROGRAMACIÓN EN JAVA
1. INTRODUCCIÓN A LA PROGRAMACIÓN 1.1. Datos, algoritmos y programas 1.1.1. Definición de algoritmo 1.1.2. Datos 1.1.3. Características de un programa 1.2. Paradigmas de programación 1.2.1. Programación
Más detallesPrograma Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Contenidos Didácticos
Ficha Técnica Titulación: Grado en Ingeniería Informática Plan BOE: BOE número 108 de 6 de mayo de 2015 Asignatura: Módulo: Programación y Estructura de Datos Curso: 1º Créditos ECTS: 6 Tipo de asignatura:
Más detallesIntroducción. Introducción y conceptos de POO. En qué consiste la POO? Vocabulario. Definiciones
Introducción Fernández Universidad Autónoma de Madrid 20 de febrero de 2009 Introducción En qué consiste la Programación Orientada a Objetos? Vocabulario básico Ejemplo sencillo En qué consiste la POO?
Más detallesTema 1. Introducción a la Programación Orientada a Objetos
Tema 1. Introducción a la Programación Orientada a Objetos Dpto. Lenguajes y Ciencias de la Computación. E.T.S.I. Informática. Universidad de Málaga Programación Orientada a Objetos Dpto. Lenguajes y Ciencias
Más detallesModelo de Orientación a Aspectos
Modelo de Orientación a Aspectos Noviembre, 2010 Ing. Sahyra Yépez Agenda Qué es el Modelo Orientado a Aspectos? Qué es un Aspecto? Programación Orientada a Aspectos Funcionamiento de POA Características
Más detallesUnidad I: Introducción a las estructuras de datos
Unidad I: Introducción a las estructuras de datos 1.1 Tipos de datos abstractos (TDA) Los tipos de datos abstractos (TDA) encapsulan datos y funciones que trabajan con estos datos. Los datos no son visibles
Más detallesTRABAJO PRÁCTICO 7: OBJETOS
TEORÍA TRABAJO PRÁCTICO 7: OBJETOS Qué son los métodos Orientados a Objetos? Los métodos OO proveen un conjunto de técnicas para analizar, descomponer y modularizar arquitecturas de software. Se caracterizan
Más detallesProgramación Orientada a Objetos. Introducción
Programación Orientada a Objetos Introducción César Julio Bustacara Medina Facultad de Ingeniería Pontificia Universidad Javeriana 27/01/2016 1 Programación Orientada a Objetos POO es un conjunto de técnicas
Más detallesIntroducción y conceptos de POO
Fernández Universidad Autónoma de Madrid 20 de febrero de 2009 Introducción Introducción En qué consiste la Programación Orientada a Objetos? Vocabulario básico Ejemplo sencillo En qué consiste la POO?
Más detallesProgramación Orientada a Objetos
Programación Orientada a Objetos PROGRAMACIÓN ORIENTADA A OBJETOS 1 Sesión No. 3 Nombre: Conceptos de lenguaje orientado a objetos Contextualización Como se ha mencionado en las sesiones anteriores, los
Más detallesPNFSI. Asignatura: Desarrollo de Software. Tema 1: Programación Orientada a Objetos
PNFSI Asignatura: Desarrollo de Software Tema 1: Programación Orientada a Objetos Ing. Zamantha González Abril, 2008 Contenido Conceptos básicos Clase Objeto o instancia Atributos Métodos Constructores
Más detallesHerencia. Proceso mediante el cual una clase adquiere las propiedades (atributos) y comportamiento (métodos) de otra.
Programación Orientada a Objetos Herencia Ing. Julio Ernesto Carreño Vargas MsC. Herencia Proceso mediante el cual una clase adquiere las propiedades (atributos) y comportamiento (métodos) de otra. Programación
Más detallesCLASE 9: DISEÑO CON PATRONES. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez
CLASE 9: DISEÑO CON PATRONES Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez Diseño de Objetos Identificar requerimientos, crear un modelo del dominio, agregar métodos a las clases
Más detallesProgramación en Java. Horario: 3:00 PM 7:00PM
Horario: 3:00 PM 7:00PM Temario Lección 1: Orientación a objetos Lección 2: Creando una aplicación Java Lección 3: Creando Clases Lección 4: Programando en OO Lección 5: Manejo de excepciones Lección 6:
Más detallesDiseño Basado en Componentes. Curso 2008 / 09
Beneficios de OOP Diseño Basado en Componentes Ingeniería Informática Universidad Carlos III de Madrid Programación Orientada a Objetos (OOP) en VB.NET Diseño Basado en Componentes. Curso Conceptos orientados
Más detallesDiseño arquitectónico 1ª edición (2002)
Unidades temáticas de Ingeniería del Software Diseño arquitectónico 1ª edición (2002) Facultad de Informática objetivo Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado
Más detallesQué es SGBD? Mencionar 4 tipos de SGBD. SGBD de red. Román Gutiérrez Sosa. SGBD jerárquicos. Modelo de datos relacionales.
Qué es SGBD? Es un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. El propósito general de los sistemas de gestión
Más detallesOOP y C++ Indice. 0.1 Análisis orientado a objetos(1/4) Análisis orientado a objetos(2/4) 0.- OOP 1.- INTRODUCCIÓN.
OOP y C++ Un lenguaje para Programadores Carlos PLATERO Indice 0.- OOP 1.-. Objetivos, palabras clave, reglas prácticas, consejos 2.- CLASES Y OBJETOS. Extensión del concepto de estructura en C 3.- HERENCIA.
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS SEBASTIÁN DAVID MORENO BERNAL CRISTIAN CAMILO ORJUELA VELANDIA LENGUAJES DE PROGRAMACIÓN 24/04/2017 1. Introducción 2. Historia 3. Filosofía del paradigma 4. Conceptos
Más detallesPATRONES DE DISEÑO DE CREACIÓN. Abstract Factory Builder Factory Method Prototype
PATRONES DE DISEÑO DE CREACIÓN Abstract Factory Builder Factory Method Prototype Patrones de diseño de creación Abstraen el proceso de creación de instancias Encapsulan el conocimiento sobre las clases
Más detallesGuía del Curso IFCD052PO PROGRAMACIÓN EN JAVA
Guía del Curso IFCD052PO PROGRAMACIÓN EN JAVA Modalidad de realización del curso: Titulación: Online Diploma acreditativo con las horas del curso OBJETIVOS CONTENIDOS UNIDAD DIDÁCTICA 1. INTRODUCCIÓN A
Más detallesProgramación Orientada por Objetos. Prof. Yudith Cardinale Universidad Simón Bolívar Dpto de Computación y Tecnología de la Información
Programación Orientada por Objetos Prof. Yudith Cardinale Universidad Simón Bolívar Dpto de Computación y Tecnología de la Información Contenido Introducción Conceptos básicos de POO Clase Herencia Objeto
Más detallesUNT INGENIERIA INDUSTRIAL INGENIERIA DE SOFTWARE
UNT INGENIERIA INDUSTRIAL INGENIERIA DE SOFTWARE Ing. Francisco Rodríguez Novoa Tema 7 Modelo de Análisis Ing. Francisco Rodríguez Rational Unified Process (RUP) 3 OBJETIVOS Conocer que el Análisis ve
Más detallesJava Avanzado Facultad de Ingeniería. Escuela de computación.
2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas
Más detallesPrograma Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Fundamentos de Programación
Ficha Técnica Titulación: Grado en Ingeniería de Organización Industrial Plan BOE: BOE número 75 de 28 de marzo de 2012 Asignatura: Módulo: TICs (Tecnologías de la Información y las Comunicaciones) Curso:
Más detallesB.- Ejercicio de Herencia y Polimorfismo: FORMAS
B.- Ejercicio de Herencia y Polimorfismo: FORMAS 1. Defina una clase Forma que tenga los siguientes miembros de datos: - Color - Coordenada del centro de la forma (objeto Punto) - Nombre de la forma (char
Más detallesTema 1. Herencia y Polimorfismo
ÍNDICE EDA. Unidad didáctica I: Conceptos de Java para Estructuras de Datos Tema 1. Herencia y Polimorfismo 1. Relaciones entre clases: Reutilización del software. 2. La Herencia como soporte Java del
Más detallesUNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES
UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES Área de formación: Disciplinaria Unidad académica: Programación Orientada a Objetos Ubicación: Cuarto Semestre Clave: 2087 Horas
Más detallesProgramaciónDeclarativa
ProgramaciónDeclarativa 1. Introducción Programación estructurada Programación orientada a objetos Programación lógica Programación funcional Objetivos Establecer los fundamentos de la programación estructurada
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS. Dr. Noé Alejandro Castro Sánchez
PROGRAMACIÓN ORIENTADA A OBJETOS Dr. Noé Alejandro Castro Sánchez Introducción Nueva filosofía para resolución de problemas: Descomposición de la realidad en objetos. Objetos: representación de entidades
Más detallesProgramación Orientada a Objetos y Patrón MVC en PHP5. Pablo Ramirez A.
Presentación: (Arquitecto de Software) Pregrado: Técnico Superior en Informática (CUAM) 2000 Ingeniero en Sistemas (UBA) 2009 Ingeniería en Informática (IUTOMS) (Cursando) Postgrado: Especialista en Gerencia
Más detallesTema 2. Diseño Modular.
Tema 2. Diseño Modular. E.U. Politécnica Curso 2004-2005 Departamento Lenguajes y Ciencias de la Computación. Universidad de Málaga José Luis Leiva Olivencia. Despacho: I-326D (Edificio E.U.P)/ 3.2.41
Más detallesTema 1.- Conceptos básicos de la OO
Tema 1.- Conceptos básicos de la OO 1. HISTORIA DE LOS CONCEPTOS... 2 2. OBJETOS Y MENSAJES... 3 3. CLASES DE OBJETOS... 5 4. HERENCIA... 8 5. OTROS CONCEPTOS... 9 6. DESARROLLO ORIENTADO A OBJETOS...
Más detallesUNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS PROGRAMA DEL CURSO DE INTRODUCCION A LA PROGRAMACION DE COMPUTACION 2 CODIGO: 771 CREDITOS: 5 ESCUELA: Ciencias
Más detallesDefinición. Mónica E. García García Feb 07
Tema 11: Herencia 0 Definición Cuando inicialmente se modelan dos cosas y se tienen datos duplicados y además pudiera darse que el número de métodos también es similar así como la implementación, se requiere
Más detallesINGENIERÍA DEL SOFTWARE
INGENIERÍA DEL SOFTWARE INGENIERÍA DEL SOFTWARE 1 Sesión No. 5 Nombre: Estrategias Contextualización Cómo elegir el lenguaje de programación? La importancia de elegir el lenguaje de programación adecuado
Más detallesARQUITECTURAS DE SOFTWARE
ARQUITECTURAS DE SOFTWARE 1. DEFINICIÓN: La arquitectura de software de un programa o de un sistema computacional está definida por la estructura, comprendida por los elementos de software, las propiedades
Más detallesDerechos de Acceso: COMPOSICION
CLASES Una clase es un tipo definido por el usuario que describe los atributos y los métodos de los objetos que se crearan a partir de la misma. class nombre_clase cuerpo de la clase Derechos de Acceso:
Más detallesUnidad IV: Modelo de Diseño 4.1. Estrategias de diseño
Unidad IV: Modelo de Diseño 4.1. Estrategias de diseño El diseño se define como la búsqueda de una solución en cualquier campo, sin embargo las soluciones no llegan de una manera simple, muchas veces realizamos
Más detallesProgramación Orientada a Objetos (POO)
Programación Orientada a Objetos (POO) Introducción Ing. Ramón Roque Hernández, M.C. ramonroque@yahoo.com Programación: Actividad compleja Sin comentarios Crisis del Software Imponiendo orden al caos Programación
Más detallesDiseño: Arquitectura de Software. IF 7100 Ingeniería del Software
Diseño: Arquitectura de Software IF 7100 Ingeniería del Software 1 Qué es arquitectura de software? Es la definición de una solución estructurada que cumpla todos los requerimientos técnicos y operacionales,
Más detallesPROGRAMACION ORIENTADA A OBJETOS EN C++
PROGRAMACION ORIENTADA A OBJETOS EN C++ 1- INTRODUCCIÓN El lenguaje C++ representa el resultado de los esfuerzos realizados para proporcionar las ventajas de la programación Orientada a Objetos a un lenguaje
Más detallesProgramación orientada a objetos. Resumen de Temas Unidad 5: Herencia
Programación orientada a objetos Resumen de Temas Unidad 5: Herencia 5.1 Introducción a la Herencia La herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona
Más detallesPROCESOS DE DESARROLLO DE SOFTWARE UNPA UARG (Versión 0.9)
PROCESOS DE DESARROLLO DE SOFTWARE UNPA UARG (Versión 0.9) 2007 REVISIONES DEL DOCUMENTO FECHA VERSIÓN DESCRIPCIÓN 17-04-2007 0.9 Confección del documento 3 PROCESOS DE DESARROLLO DE SOFTWARE ÍNDICE 1
Más detallesARQUITECTURAS. Carlos Reveco D. IN73J Arquitectura, Diseño y Construcción de un Negocio con Apoyo TI.
ARQUITECTURAS 1 IN73J Arquitectura, Diseño y Construcción de un Negocio con Apoyo TI Carlos Reveco D. creveco@dcc.uchile.cl Arquitectura de una aplicación 2 Arquitectura: desarrolla un plan general del
Más detalles