Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos UML: Lenguaje de Modelamiento Unificado Toma de Requerimientos.

Slides:



Advertisements
Presentaciones similares
ESTRUCTURA DE DATOS Unidad 01 Conceptos Previos.
Advertisements

Programación orientada a objetos en Visual Basic .NET
Curso de java básico (scjp)
Curso de java básico (scjp)
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
Definición de Clases y Variables de referencia.
Herencia en C#.
Fundamentos de la programación orientada a objetos
Lenguaje de programación Java
Clases Extendidas La clase extendida hereda los campos y métodos de la clase de la cual extiende. La clase original se conoce como superclase y la clase.
UML 1.4 Peter Emerson Pinchao Solis.
Arquitectura CLARO-TECNOTREE
El proceso de desarrollo de software
Herencia y Polimorfismo
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
UNIVERSIDAD LATINA (UNILA)
Aplicación del paradigma orientado a objetos
Diseño y programación de
Encapsulamiento y Abstracción
Abstracción de Datos La abstracción es un recurso fundamental en la programación orientada a objetos y está además fuertemente ligado a reusabilidad.
Programación Orientada a Objetos en Java
PROGRAMACIÓN EN JAVA Curso-taller inicial de programación en JAVA Facultad de Estadística e Informática TEMA II.
HERENCIA.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
Herencia e Interfaces.
Programación Orientada a Objetos usando C++
Modificadores.
PROGRAMACION ORIENTADA A OBJETOS
Herencia y Polimorfismo en JAVA
Polimorfismo Lenguajes de Programación II Corporación Universitaria del Caribe CECAR.
Lic. Rosemary Torrico Bascopé
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Creación de Aplicaciones
Curso Programación en Java
Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Jerarquía de Clases: Herencia, Composición y Polimorfismo
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Diplomado Desarrollo de Aplicaciones en Internet
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Programación Orientada a Objetos usando CONSTRUCTORES DESTRUCTORES.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
PROGRAMACIÓN ORIENTADA A OBJETOS USANDO C++
Herramientas de polimorfismo y herencia en C++
Módulo 7: Programación Orientada a Objetos en Visual Basic 2005.
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
Unidad 2.1: INTRODUCCIÓN A LA ORIENTACIÓN A OBJETOS.
TEMA 9: DIAGRAMA DE CLASE EN UML
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
Detalles Generales sobre Java
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
HERENCIA.
M.C. Pedro Bello López 1 IMPLEMENTACIÓN. M.C. Pedro Bello López2.
Abstracción El concepto de abstracción es esencial en ciencias de la computación. Un programa es en sí mismo una abstracción, un modelo de la resolución.
Programación Orientada a Objetos: CLASES Y OBJETOS
Diagrama de Clases.
Herencias Conceptos básicos i
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Concepto de Tipo y Subtipo Diseño e Implementación Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 10 Versión.
Prof. Manuel B. Sánchez. Es un mecanismo y uno de los pilares de la POO que permite definir nuevas clases a partir de otras preexistentes. La Herencia.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Herencia.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Transcripción de la presentación:

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos UML: Lenguaje de Modelamiento Unificado Toma de Requerimientos Fase de Analisis Fase de Diseño Programación Orientada a Objetos

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Toma de Requerimientos Casos de Uso Actores Pre-Condiciones Descripción Post-Condiciones Excepciones

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Caso de Uso: Matricula de clientes no registrados. Actores: Clientes Pre-Condiciones: Existencia de Cursos en BD Descripción: El cliente ingresa a la vista de cursos, el sistema despliega la lista de cursos disponibles, el cliente selecciona el curso para matricularse, el sistema despliega la vista de registro (Excep. Sin cupo), con los campos nombre, rut e institución, el cliente llena los campos y presiona Aceptar, el sistema confirma la matricula. Post-Condiciones: Se registra un nuevo cliente y se agrega un nuevo alumno al curso seleccionado. Excepciones: Sin cupo. El curso no tiene cupos disponibles.

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Fase de Análisis Diagrama de Clases Clase: “Estructura que modela las propiedades y funcionalidades que definen un conjunto determinado de objetos”. Objeto: “Modelo de una entidad, ya sea real o abstracta, de identificación única”. Curso Alumno Profesor Prof_ContraProf_Horas dicta1*

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Fase de Análisis Diagrama de Secuencia ClienteCursoAlumno verLista() ListaCursos setMatricula(cod) OK setDatos(nom, rut, inst) OK

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Fase de Diseño Diagrama de Clases Curso getLista() setMatricula(cod) Alumno Nombre Rut Institucion setDatos(nom,rut,in) Vst_Cursos LstCursos Abrir() lstCursosSel(cod) Vst_Registro TxtNombre TxtRut TxtInstitucion BtnAceptar BtnAceptarClick()

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Fase de Diseño Diagrama de Secuencia Vst_CursosCursoAlumno getLista() setMatricula(cod) OK setDatos(nom, rut, inst) OK ClienteVst_Registro abrir() Lista_Cursos lstCursosSel(cod) abrir() Datos OK btnAceptarClick()

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos Programación Orientada a Objetos Encapsulamiento: “Posibilidad de agrupar propiedades y funcionalidad de una clase en una sola estructura, controlando el acceso y la manipulación de dichas estructuras” Herencia: “Posibilidad de recibir en una clase toda o parte de las propiedades y funcionalidades de otra clase” Polimorfismo: “Posibilidad de darle mas de una forma a una funcionalidad especifica dentro de una clase o entre clases distintas”

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Encapsulamiento Atributos (Variables Miembro) De clase (estáticos) De instancia Métodos (Funciones Miembro) Estáticos De instancia class Rectangulo { int Dim1; int Dim2; int area() { return Dim1*Dim2; } int perimetro() { return 2*(Dim1+Dim2); }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Encapsulamiento Control de Acceso Privado Publico Protegido class Rectangulo { private int Dim1; private int Dim2; public int area() { return Dim1*Dim2; } publico privado protegido clase clases hijas aplicación

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Encapsulamiento Control de Acceso Control programado Convenciones class Rectangulo { public int Dim1; public int Dim2; public int area() { return Dim1*Dim2; } class Rectangulo { private int Dim1; private int Dim2; public void setDim1(int d1) { Dim1 = d1; } public int getDim1() { return Dim1; } : public int area() { return Dim1*Dim2; }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Encapsulamiento Constructores y Destructores Constructor por defecto Constructor programado Destructor Referencias a si mismo (this) class Rectangulo { private int Dim1; private int Dim2; public Rectangulo() { this.Dim1 = 10; this.Dim2 = 10; } : public int area() { return Dim1*Dim2; }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Encapsulamiento Instanciando clases Rectangulo rec1 = new Rectangulo(); Rectangulo rec2 = new Rectangulo(); : rec2.setDim1(30); Rectangulo int Dim1 int Dim2 Rectangulo() void setDim1(int d1) int getDim1() void setDim2(int d2) int getDim2() int area() rec1 Dim1 = 10 Dim2 = 10 rec2 Dim1 = 30 Dim2 = 10 Instancia 1 Instancia 2

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Herencia Clases Base y Derivadas Herencia Simple y Múltiple Profesor Prof_ContraProf_Horas PersonaProfesional Clase Base y Derivada Clase Base Clase Derivada

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Herencia El control de acceso Protegido Referencias al constructor de la clase base (super) class Rectangulo { public Rectangulo(int d1, int d2) { super(d1, d2); } : public int area() { return Dim1*Dim2; } class Figura { protected int Dim1; protected int Dim2; public Figura(int d1, int d2) { this.Dim1 = d1; this.Dim2 = d2; } : } Clase Base Clase Derivada

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Herencia Instanciando clases derivadas Clases finales Rectangulo rec1 = new Rectangulo(5,10); Elipse eli1 = new Elipse(8,12); Figura fig1; if (tipo = = “Rect”) { fig1 = new Rectangulo(5,10); } else if (tipo = = “Elip”) { fig1 = new Elipse(8,12); }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Herencia Clases abstractas Figura Dim1 Dim2 area() perimetro() Rectangulo area() perimetro() Elipse area() perimetro() abstract class Figura { protected int Dim1; protected int Dim2; : public abstract int area(); public abstract int perimetro(); }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Herencia Interfaces interface Figura { public int area(); public int perimetro(); } interface Dibujable { public void dibuja(Graphics g); } interface Persistente { public void grabar(); public void cargar(String pk); } class Rectangulo {: public int area() { return Dim1*Dim2; } public int perimetro() { return 2*(Dim1+Dim2); } public void dibuja(Graphics g) {: } public void grabar() {: } public void cargar(String pk) {: } Implementa

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Polimorfismo Sobrecarga de operaciones Sobrecarga del Operador + int + int = int float + float = float float + int = float String + String = String String + int = String Rectangulo+ Rectangulo = Rectangulo String + Rectangulo = String

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Polimorfismo Sobrecarga del constructor class Rectangulo { private int Dim1; private int Dim2; public Rectangulo(int d1, int d2) { Dim1 = d1; Dim2 = d2; } public Rectangulo(int dim) { Dim1 = Dim2 = dim; } public Rectangulo(String dime) { int dim = Integer.parseInt(dime); Dim1 = Dim2 = dim; } : }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Polimorfismo Sobrecarga de funciones class Formulas { public static double potencia(double bas) { : } public static double potencia(double bas, int exp) { : } public static double potencia(double base, double exp) { : }

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Polimorfismo Polimorfismo por medio de clases abstractas e interfaces class Rectangulo {: public int area() { return Dim1*Dim2; } class Elipse {: public int area() { return (int)(3.1416*Dim1*Dim2); } interface Figura { : public int area(); } Implementan

Lenguaje de Programación Java Profesor: Mauricio Martínez P. Programación Orientada a Objetos Polimorfismo Polimorfismo por medio de clases abstractas e interfaces Figura fig1; if (tipo = = “Rect”) { fig1 = new Rectangulo(5,10); } else if (tipo = = “Elip”) { fig1 = new Elipse(8,12); } int areaFig = fig1.area(); :