Programación en Java. Horario: 3:00 PM 7:00PM

Documentos relacionados
INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA

Contenido. 1 Qué es un diagrama de clase? 2 Elementos de un diagrama de clase. 3 Clase, atributo, método y visibilidad. 4 Agregación y composición

UNIDAD 4 IMPLEMENTACION DE PROPIEDADES DE LOS OBJETOS JAVA

Programación. Orientada a Objetos. Prof. Angela Di Serio. Universidad Simón Bolívar Especialización en Telemática

Modelado Estructural F E B R E R O,

UNIDAD 2: INTRODUCCION AL PARADIGMA ORIENTADO A OBJETOS. MODELADO DE OBJETOS USANDO DIAGRAMA DE CLASES

Clases y herencia. FJP Unidad 8. Diseño de clases

Ingeniería del Software Orientada a Objetos. Unidad 5: Conceptos del Paradigma Orientado a Objetos

Introducción a la Programación Orientada a Objetos

Programación Orientada a Objetos. Conceptos Básicos

Introducción a la Orientación a Objetos

Introducción a OOP. Programación Orientada a Objeto

Enfoque de Desarrollo de software OO

acceso Implementación de conceptos P.O.O. en Java Orientada a Objetos 2. Modificadores de en Java Temario

Programación Orientada a Objetos. Integrantes: Santiago Hernández Bolívar Edwin Alexander Bohórquez

INGENIERIA DE SOFTWARE. Dr. Mario Rossainz López Fac. de Cs. de la Computación Benemérita Universidad Autónoma de Puebla Primavera 2017

Reutilización con Delegación y Herencia

Herencia. Implementación en Java

HERENCIA Y TIPOS. Articulo. Video Audio Altavoces. Amplificador

La Orientación a Objetos. Diseño de Software Avanzado Departamento de Informática

Relaciones entre clases

UML: Diagrama de Clases

09/01/2008. Nombre de la clase. Atributos. Métodos/Operaciones

Introducción a la Orientación a Objetos

Introducción al Paradigma Orientado a Objetos

INFORMÁTICA INDUSTRIAL

Cada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas

PROGRAMACIÓN EN JAVA

PROCESOS DE DESARROLLO DE SOFTWARE UNPA UARG (Versión 0.9)

Conceptos Básicos del Paradigma Orientado a Objetos

! Fundamentos de la POO. ! Comportamiento y estado. ! Clases y objetos en Java

Nombre de la clase. Atributos. Métodos/Operaciones

Curso de Java POO: Programación orientada a objetos

Tema 2. Principios del Diseño Orientado a Objetos

Programación Orientada a Objetos. Introducción

Principios de Computadoras II

Programación en Java. Programación en OO

TEMA 5. Agenda. Herencia

Guía del Curso IFCD052PO PROGRAMACIÓN EN JAVA

CONCEPTO DE INTERFACE Y HERENCIA MÚLTIPLE EN JAVA. IMPLEMENTS. EJEMPLOS Y DIAGRAMAS DE CLASES. (CU00696B)

Tema: Programación Orientada a Objetos

SYLLABUS de la Asignatura. : Programación I

Metodologías en la Ingeniería del Software Métodos Orientados a Objetos

TEMA 1. Agenda. Introducción a la Programación Orientada a Objetos

INTRODUCCIÓN A LA NOTACIÓN UML Diagramas de clases

Nombre y Apellido. Martin Villarreal. Daniel Aguil Mallea

Curso de Java POO: Programación orientada a objetos

! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes

PROGRAMACIÓN ORIENTADA POR OBJETOS EN JAVA

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Taller de Programación I. Tema 10: Herencia en Java

Programación n de sistemas

Reutilización con Delegación y Herencia

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Guía práctica de estudio 08: Polimorfismo

Unidad 2. Elementos Intermedios del Lenguaje

APLICACIONES MOVILES NATIVAS. Sesión 5: Objetos, mensajes y clases. Abstracción, encapsulamiento, herencia y polimorfismo

Modelos de Software. Ingeniería en Sistemas de Información

Reutilización con delegación, herencia y polimorfismo

PROGRAMACION ORIENTADA A OBJETOS: Tema 2. Conceptos básicos de la Programación Orientada a Objetos

PROGRAMACIÓN ORIENTADA A OBJETOS. Programa sintético PROGRAMACIÓN ORIENTADA A OBJETOS III Introducción a la Orientación a Objetos

Tutorial Java con acceso a datos

PROGRAMACIÓN ORIETADA A OBJETOS

Programación bajo UML

Conceptos Básicos. Programación Orientada a Objetos 2

DATOS DE IDENTIFICACIÓN DEL CURSO Departamento de Ciencias Computacionales ACADEMIA A LA QUE PERTENECE: Técnicas Modernas de Programación

A3F. Objetos (uso) Carlos Fontela

NOMBRE DEL TEMA: PROGRAMACIÓN ORIENTADA A OBJETOS Y MODELADO NOMBRE DEL ALUMNO: SANCHEZ SANTIAGO NOE. ASIGNATURA: FUNDAMENTOS DE PROGRAMACIÓN

UML: INTRODUCCIÓN, ORIENTACIÓN a Objetos

Héctor Cuadra. Diseño de Sistemas de Información

MODULO IV. Análisis y Diseño de Sistemas de Información INF-162 II. METODOLOGIAS. Análisis y Diseño OO. Facilitador: Miguel Cotaña

Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET

PROGRAMACIÓN ORIENTADA A OBJETOS

PARTE 1: INTRODUCCIÓN DE LA PLANIFICACIÓN. Carrera y plan: Analista Programador Universitario Plan 2008.

Programación orientada a objetos. Introducción

Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET 2010

Diseño Orientado a Objetos: Conceptos y Principios

Tema 1. Introducción al Paradigma Orientado a Objetos

Objetivos. Objetivos. Herencia. Objetivos. agregar funcionalidad a una clase existente, sin compilar su nueva definición.

Presentación del Curso Presencial. Programación en Java Nivel Básico

Programación Orientada por Objetos. Prof. Yudith Cardinale Universidad Simón Bolívar Dpto de Computación y Tecnología de la Información

Patrón Façade Patrón Template Method Conclusiones

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores.

Programación en Java. Instructor:

Edwin Andrés Cubillos Vega

Tema 5. Herencia. Departamento de Lenguajes y Sistemas Informáticos Universidad de Granada

Introducción código transversal

UNIVERSIDAD DE GUADALAJARA

Administración e Ingenierías Ingeniería de Sistemas

Resumen Clase Anterior Ejercicio Introducción a OOP. ING1310 Introducción a la Computación. Introducción. Introducción a OOP

Universidad Salesiana de Bolivia

Técnicas de desarrollo

Derechos de Acceso: COMPOSICION

PNFSI. Asignatura: Desarrollo de Software. Tema 1: Programación Orientada a Objetos

UAA-DSE Programación 2 / C++ Eduardo Serna-Pérez

Programación orientada a objetos I

UML (Lenguaje de Modelado Unificado) y Diagramas de Casos de Uso

Transcripción:

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: Usando Collections

Lección 1: Orientación a objetos 1. Definiciones básicas

Objetivos Conocer los conceptos básicos necesarios para entender el paradigma de orientación a objetos Definir las características que definen a la Definir las características que definen a la orientación a objetos.

Definiciones Básicas La orientación a objetos cuenta con cuatro características: Abstracción Encapsulamiento Herencia Polimorfismo

Abstracción Es una simplificación o modelo de un concepto complejo, proceso o una objeto del mundo real. La abstracción nos permite simplificar nuestro La abstracción nos permite simplificar nuestro entendimiento del mundo así que ese entendimiento es practico sin llegar a abrumarnos

Abstracción Una buena abstracción nos permite acentuar las características y comportamiento relevante de algún objeto, el cual puede ser muy complejo para entenderlo por lo completo.

Abstracción En que nos ayuda la abstracción? Nos permite entender cual es la interacción de un conjunto de partes que conforma un modelo de mayor escala. En la orientación a objetos a ese conjunto de partes se les conoce como objetos.

Encapsulamiento Especifica los datos y el comportamiento lógico que se encuentra oculto en un objeto. El encapsulamiento nos permite hacer sistemas El encapsulamiento nos permite hacer sistemas o componentes mas comprensibles, reusables y extendibles.

Encapsulamiento VS Abstracción El encapsulamiento puede considerarse lo opuesto de la abstracción. La abstracción remarca los aspectos importantes de un objeto El encapsulamiento oculta los detalles internos de un objeto

Objetos Son la llave para entender la orientación a objetos. Los objetos en software son modelados partiendo de que los objetos de la realidad tienen estado y comportamiento. Por ejemplo: Un perro tiene un tiene estado (nombre, color, raza) y comportamiento (ladrar, traer el periódico, mover la cola ).

Objetos Los objetos en software mantienen su estado en una o más variables y su comportamiento lo implementan en métodos

Clases Una clase es un conjunto de objetos que tienen algo en común. Una clase captura una abstracción particular y Una clase captura una abstracción particular y provee una platilla para la creación de objetos.

Interfaz Define un conjunto de comportamientos relacionados, pero no especifica la implementación del comportamiento. Mas específicamente una interfaz especifica la firma de uno o más métodos, los cuales incluyen parámetros, tipo de retorno y excepciones.

Clases e Interfaces Las interfaces definen la abstracción, sin tomar en cuenta los detalles de implementación. Es decir una interfaz define el comportamiento, mientras que la clase lo hace real. Una clase realiza una interfaz si implementa todos los métodos de la interfaz.

Herencia Es la acción en la que una clase obtiene el comportamiento y atributos definidos en otra clase. A la clase de la que se hereda se le denomina superclase y la clase de la que hereda se le conoce subclase

Polimorfismo En orientación a objetos se refiere a las múltiples implementaciones de una simple abstracción. La abstracción es capturada en clases e interfaces. Así, el polimorfismo puede existir teniendo varias clases que hereden de una clase base o realicen una interfaz

Beneficios del polimorfismo El polimorfismo tiene dos beneficios principales Permite flexibilidad ilimitada en la ejecución de un sistema. Es decir diferentes implementaciones de una abstracción pueden ser mezcladas en tiempo de ejecución para obtener comportamientos interesantes. El sistema puede ser extensible fácilmente. Si la abstracción del sistema no cambia nuevas implementaciones pueden ser agregadas sin modificar el código que depende de una interfase

Ejemplo Utilizando interfaces podemos cambiar el tipo de conexión rápidamente sólo cambiando la referencia a la interfaz Conexion Objeto de acceso a datos +1 +* <<Interface>> Conexion base de datos conectar() : Connection cerrarconexion() <<realiza>> <<realiza>> ConexionMySQL c onect ar() : Connec tion c errarconexion() ConexionPostgreSQL conect ar() cerrarconexion()

Relaciones entre objetos Existen cuatro tipos de relaciones entre objetos: Dependencia. Asociación. Agregación Composición

Dependencia Es una asociación de corto plazo y se presenta cuando un objeto invoca métodos de otro objeto, con el fin de obtener un servicio de el. Ejemplo: Cuando compramos algo en el supermercado dependemos de un cajero, más sin embargo no es una relación a largo plazo

Asociación Es una asociación a largo plazo y en esta relación un objeto mantiene la referencia hacia otro objeto y puede llamarla cada vez que lo necesite. Ejemplo: Consideremos una persona y su automóvil, mientras la persona recuerde donde está, puede tomar su auto y este lo llevará a donde necesite ir.

Agregación Indica que un objeto es parte de uno de mayor tamaño. El objeto puede pertenecer a una o más relaciones de agregación. El objeto existe independientemente del de mayor tamaño. Ejemplo: Un desarrollador, puede pertenecer a dos equipos de desarrollo.

Composición Indica que un objeto está contenido en uno de mayor tamaño. El objeto contenido sólo puede participar en una relación de composición. No existe independientemente del objeto de mayor tamaño Ejemplo: Los botones de una calculadora, estos sólo pueden pertenecer a una calculadora y si ésta se descompone no es factible quitarlos.

Resumen En esta lección se aprendió a: Relacionar los conceptos de la orientación a objetos. Diferenciar una clase y una interfaz y cual es la finalidad de cada una de ellas. Reconocer las relaciones que se manifiestan en la orientación a objetos.