La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

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.

Presentaciones similares


Presentación del tema: "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."— Transcripción de la presentación:

1 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

2 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

3 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.

4 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*

5 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

6 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()

7 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()

8 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”

9 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); }

10 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

11 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; }

12 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; }

13 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

14 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

15 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

16 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); }

17 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(); }

18 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

19 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

20 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; } : }

21 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) { : }

22 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

23 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(); :


Descargar ppt "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."

Presentaciones similares


Anuncios Google