APO2 - Presentacion nivel 10
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

APO2 - Presentacion nivel 10

  • 2,735 views
Uploaded on

Esta es la presentación del Nivel 10 del curso "ISIS-1205 Algorítmia y Programación por Objetos 2" (APO2) de la Universidad de los Andes, Bogotá, Colombia.

Esta es la presentación del Nivel 10 del curso "ISIS-1205 Algorítmia y Programación por Objetos 2" (APO2) de la Universidad de los Andes, Bogotá, Colombia.

More in: Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,735
On Slideshare
2,263
From Embeds
472
Number of Embeds
2

Actions

Shares
Downloads
59
Comments
0
Likes
0

Embeds 472

http://jorgeportella.wordpress.com 461
https://jorgeportella.wordpress.com 11

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. NIVEL 10 ALGORÍTMICA Y PROGRAMACIÓN 2 (APO 2) Mario José Villamizar Cano mj.villamizar24@uniandes.edu.co Oficina ML-637http://sistemas.uniandes.edu.co/~mj.villamizar24/dokuwiki/doku.php Grupo de Tecnologías de Información y Comunicación (COMIT) Departamento de Ingeniería de Sistemas y Computación Universidad de los Andes, Bogotá D.C., Colombia
  • 2. NIVEL 10 REDES SOCIALES mjvc007@hotmail.com http://twitter.com/mariocloudhttp://linkedin.com/in/mariojosevillamizarcano
  • 3. NIVEL 10NIVEL 10 – MECANISMOS DE REUTILIZACIÓN Y DESACOPLAMIENTOCaso de estudio 1 – Editor de dibujos Interfaces Referencia de tipo interfaz Clases que implementas interfaces Interfaces para contenedores (Collection, List) Iteradores para recorrer secuencias (Iterator) Interfaces de niveles anteriores (ActionListener, ListSelectionListener, Serializable)
  • 4. NIVEL 10NIVEL 10 – MECANISMOS DE REUTILIZACIÓN Y DESACOPLAMIENTOCaso de estudio 1 – Editor de dibujos Herencia Extensión de interfaces Uso de herencia en niveles anteriores Manejo de menús Manejo de eventos del ratón Dibujo básico en Java
  • 5. NIVEL 10 CASOS DE ESTUDIOCaso de estudio 1: Un Editor de Dibujos
  • 6. NIVEL 10 HOJAS DE TRABAJOHoja de trabajo 1: Mapa de la Ciudad
  • 7. NIVEL 10 HOJAS DE TRABAJOHoja de trabajo 2: Triqui
  • 8. NIVEL 10 HOJAS DE TRABAJOHoja de trabajo 3: Partitura
  • 9. NIVEL 10 CASOS DE ESTUDIOCaso de estudio 1: Un Editor de Dibujos
  • 10. NIVEL 10 CASO DE ESTUDIO 1 – UN EDITOR DE DIBUJOSRequerimientos funcionales.
  • 11. NIVEL 10 CASO DE ESTUDIO 1 – UN EDITOR DE DIBUJOSRequerimientos funcionales.
  • 12. NIVEL 10 CASO DE ESTUDIO 1 – UN EDITOR DE DIBUJOSRequerimientos funcionales.
  • 13. NIVEL 10 CASO DE ESTUDIO 1 – UN EDITOR DE DIBUJOSRequerimientos NO funcionales.
  • 14. NIVEL 10 CASO DE ESTUDIO 1 – UN EDITOR DE DIBUJOSModelo del Mundo
  • 15. NIVEL 10 CASO DE ESTUDIO 1 – UN EDITOR DE DIBUJOSModelo del la Interfaz
  • 16. NIVEL 10 INTERFACES Responsabilidades de los tres tipos de figuras Líneas RectángulosResponsabilidades de la clase Linea: Responsabilidades de la clase Rectangulo:Dibujar la figura Dibujar la figuraEstá dentro un punto Está dentro un puntoRetornar el texto Retornar el textoCambiar el texto Cambiar el textoRetornar el tipo de letra Retornar el tipo de letraCambiar el tipo de letra Cambiar el tipo de letraRetornar el tipo de figura Retornar el tipo de figuraGuardar figura a archivo Guardar figura a archivo Óvalos NUEVA FIGURAResponsabilidades de la clase Ovalo: Responsabilidades de una nueva figura:Dibujar la figura Dibujar la figuraEstá dentro un punto Está dentro un puntoRetornar el texto Retornar el textoCambiar el texto Cambiar el textoRetornar el tipo de letra Retornar el tipo de letraCambiar el tipo de letra Cambiar el tipo de letraRetornar el tipo de figura Retornar el tipo de figuraGuardar figura a archivo Guardar figura a archivo
  • 17. NIVEL 10 INTERFACES Responsabilidades de los tres tipos de figurasTodas las figuras tienen unas responsabilidades comunes.La idea con una interfaz es agrupar bajo un mismo conjunto designaturas de métodos los compromisos de una o varias clases. Aunquecada figura los puede implementar de manera distinta, todas las clasesque implementen las figuras DEBEN tener estos métodos oresponsabilidades. Interface IFigura Responsabilidades de TODAS LAS FIGURAS: Dibujar la figura Está dentro un punto Retornar el texto Cambiar el texto Retornar el tipo de letra Cambiar el tipo de letra Retornar el tipo de figura Guardar figura a archivo
  • 18. NIVEL 10 INTERFACESDeclaración de una interface
  • 19. NIVEL 10 INTERFACES Declaración de una clase que implementa la interfazpublic class Linea implements IFigura{ //Implementación de los métodos de la interfaz}public class Rectangulo implements IFigura{ //Implementación de los métodos de la interfaz}public class Ovalo implements IFigura{ //Implementación de los métodos de la interfaz} Con este esquema las tres clases deberían implementar TODOS los métodos de la interfaz IFigura
  • 20. NIVEL 10 MODELO DE CLASESDefinición en UML de la interfaces <<interface>> IFigure <<implements>> <<implements>> Linea Rectangulo Ovalo
  • 21. NIVEL 10 REFERENCIA DE TIPO INTERFAZ Ejemplos con referencia de tipo Interfaz Una vez definida una interfaz, es posible crear atributos, parámetros ovariables y manipularlos como si fueran objetos normales, con la ÚNICArestricción que los ÚNICOS métodos que se pueden invocar sobre estas referencias son los contenidos en la interfaz.
  • 22. NIVEL 10 IMPORTANCIA DE LAS INTERFACES Ejemplos con referencia de tipo Interfaz Con la definición de la interfaz IFigura ya se logró un primer nivel dedesacoplamiento entre las clases del programa, lo que nos va a permitir a agregar nuevas figuras al editor con mínimas modificaciones.
  • 23. NIVEL 10 INTERFACES PARA CONTENEDORAS Interfaces para contenedorasEn Java existen dos interfaces llamadas Collection y List que permitena un programador manipular grupos de objetos, sin necesidad derestringirse a una implementación concreta.La clase ArrayList que se ha utilizado hasta el momento implementa lasinterfaces Collection y List.Las clases Vector y LinkedList de Java también implementan lasinterfaces Collection y List, por lo cual estas clases pueden reemplazaren cualquier momento a un ArrayList.Este modelo permite que si un método recibe una referencia a un objetoque cumpla con la interfaz Collection, este método podría recibir unainstancia de la clase ArrayList, LinkedList o Vector y dicho métodofuncionará correctamente.
  • 24. NIVEL 10 INTERFACES PARA CONTENEDORASDefinición en UML de la interfaces Vector <<interface>> Collection ArrayList <<interface>> List LinkedList
  • 25. NIVEL 10 INTERFACES PARA CONTENEDORAS Interfaz CollectionUtilizada para manejar grupos de elementos, sin ningún orden o posiciónespecífica.public interface Collection{ public boolean add( Object o ); public boolean addAll( Collection c ); public void clear(); public boolean contains( Object o ); public boolean isEmpty( ); public Iterator iterator( ); public boolean remove( Object o); public int size();}
  • 26. NIVEL 10 INTERFACES PARA CONTENEDORAS Interfaz ListIncluye todos los métodos de la interfaz Collection concretando enalgunos casos su comportamiento. Contiene los métodos necesariospara manejar secuencias de valores, en los cuales cada elemento tieneuna posición.public interface List{ public void add( int i, Object o ); public Object get( int i ); public int indexOf( Object o ); public Object remove( int i ); public Object set( int i, Object o);}
  • 27. NIVEL 10 INTERFACES PARA CONTENEDORAS Clase ArrayList, LinkedList y VectorLas clases ArrayList, LinkedList y Vector de Java implementan lasinterfaces Collection y List.public class ArrayList implements Collection, List{ // Implementación de los métodos de las interfaces // Collection y List}public class LinkedList implements Collection, List{ // Implementación de los métodos de las interfaces // Collection y List}public class Vector implements Collection, List{ // Implementación de los métodos de las interfaces // Collection y List}
  • 28. NIVEL 10 INTERFACES PARA CONTENEDORASEjemplo con un ArrayList de figuras
  • 29. NIVEL 10 INTERFACES PARA CONTENEDORASEjemplo con un LinkedList de figuras Solo se cambia la implementación de la clase que implementa las interfaces Collection y List.
  • 30. NIVEL 10 INTERFACES PARA CONTENEDORASEjemplo con un Vector de figuras Solo se cambia la implementación de la clase que implementa las interfaces Collection y List.
  • 31. NIVEL 10 REFERENCIAS DE TIPO INTERFAZ EN EL CASO DE ESTUDIO Con el uso de interfaces se logra el desacoplamiento a nivel dela implementación de la contenedora de figuras utilizada. La única restricción es que sólo se pueden llamar los métodos contenidos en la interfaz List.
  • 32. NIVEL 10 REFERENCIAS DE TIPO INTERFAZ EN EL CASO DE ESTUDIO Con el uso de interfaces se logra el desacoplamiento a nivel delas diferentes clases de figuras que puede contener el editor dedibujos. La única restricción es que sólo se pueden llamar los métodos contenidos en la interfaz IFigura.
  • 33. NIVEL 10 ITERADORES PARA RECORRER SECUENCIAS Sirve para recorrer los elementos de una contenedora sin teneren cuenta la implementación exacta de la contenedora (ArrayList,LinkedList, Vector, etc.).public interface Iterator{ public boolean hasNetx( ); public Object next();}
  • 34. NIVEL 10 ARCHIVO DE PERSISTENCIA DEL CASO DE ESTUDIO La información de todas las figuras se guardan en un archivo detexto.
  • 35. NIVEL 10 ARCHIVO DE PERSISTENCIA DEL CASO DE ESTUDIO La información de todas las figuras se guardan en un archivo detexto. Clase Dibujo:
  • 36. NIVEL 10 ARCHIVO DE PERSISTENCIA DEL CASO DE ESTUDIO La información de todas las figuras se guardan en un archivo detexto. Clase Figura:
  • 37. NIVEL 10 IMPLEMENTACIÓN DEL EDITOR DE FIGURAS Defina los siguientes métodos en la clase Dibujo:public void agregarFigura( IFigura f ); // Agrega una nueva figurapublic void reiniciar ( ); // Borra todas las figuraspublic void hacerClick ( int x, int y ); // Ultima figura en x, ypublic IFigura darSeleccionada ( ); // Retorna la figura seleccionadapublic void eliminarFigura ( ); // Elimina la figura seleccionadapublic boolean haSidoModificado ( ); // Indica si el dibujo fue modificadopublic int darNumeroOvalos ( ); // Retorna el número de óvalos del dibujopublic void darFigurasConTexto ( String texto ); // Retorna el número defiguras del dibujo que tienen el texto recibido como parámetro.
  • 38. NIVEL 10 OTRAS INTERFACES UTILIZADAS ANTERIORMENTE En los niveles anteriores se habían trabajado con la siguientesinterfaces:Nombre de la interface: ActionListenerPaquete: java.awt.eventMétodos: void actionPerformed ( ActionEvent e )Nombre de la interface: ListSelectionListenerPaquete: java.swing.eventMétodos: void valueChanged ( ListSelectionEvent e )Nombre de la interface: SerializablePaquete: java.ioMétodos: Ninguno
  • 39. NIVEL 10PREGUNTAS
  • 40. NIVEL 10HOJA DE TRABAJO
  • 41. NIVEL 10 HERENCIAAtributos de los tres tipos de figuras Líneas RectángulosAtributos de una línea: Atributos de un rectángulo:El primer punto (donde empieza) El primer punto (donde empieza)El segundo punto (donde termina) El segundo punto (donde termina)El texto El textoEl color de la línea El color de la líneaEl tipo de línea El tipo de líneaEl ancho de la línea El ancho de la línea El color de fondo Óvalos Atributos de un óvalo: El primer punto (donde empieza) El segundo punto (donde termina) El texto El color de la línea El tipo de línea El ancho de la línea El color de fondo
  • 42. NIVEL 10 HERENCIA Atributos de los tres tipos de figurasTodas las figuras tienen atributos comunes, algunas tiene atributosparticulares. Líneas Rectángulos Atributos de una línea: Atributos de un rectángulo: El primer punto (donde empieza) El primer punto (donde empieza) El segundo punto (donde termina) El segundo punto (donde termina) El texto El texto El color de la línea El color de la línea El tipo de línea El tipo de línea El ancho de la línea El ancho de la línea El color de fondo Óvalos NUEVA FIGURA Atributos de un óvalo: Atributos de una nueva figura: El primer punto (donde empieza) El primer punto (donde empieza) El segundo punto (donde termina) El segundo punto (donde termina) El texto El texto El color de la línea El color de la línea El tipo de línea El tipo de línea El ancho de la línea El ancho de la línea El color de fondo Atributos específicos
  • 43. NIVEL 10 HERENCIA Permite crear una estructura base para crear nuevas clases abajo costo (sin tener que redefiniendo atributos comunes en todaslas figuras). Clase Figura Atributos comunes a todas las figuras: El primer punto (donde empieza) El segundo punto (donde termina) El texto El color de la línea El tipo de línea El ancho de la línea
  • 44. NIVEL 10 SUPERCLASES Y SUBCLASES Atributos de los tres tipos de figuras (Revisión de todo elmodelo)
  • 45. NIVEL 10 DECLARACIÓN DE SUPERCLASES Y SUBCLASESRevisión de todo el modelo
  • 46. NIVEL 10 CLASES ABSTRACTAS Son una implementación parcial, que sólo puede ser utilizadapara construir otras clases de manera más eficiente. No se pueden crear instancias de una clase abstracta, así tengadefinido un método constructor. En el modelo Figura es una clase abstracta
  • 47. NIVEL 10 DECLARACIÓN DE UNA CLASE ABSTRACTA En Java se utiliza la palabra abstract para definir este tipo declases.
  • 48. NIVEL 10 MÉTODOS ABSTRACTOS Son definido en las clases abstractas. Un método abstracto es un método definido en una claseabstracta, para el cual no existe una implementación. Las clases que se construyan de una clase abstracta seránresponsables de implementar los métodos abstractos.
  • 49. NIVEL 10 DECLARACIÓN DE MÉTODOS ABSTRACTOS En Java se utiliza la palabra abstract para definir este tipo demétodos como parte de su signatura.
  • 50. NIVEL 10 DECLARACIÓN DE MÉTODOS ABSTRACTOS Todos los métodos de una clase abstracta NO son abstractos.Son abstractos aquellos cuya implementación es específica paralas subclases (cada subclase los implementa de manera diferente).
  • 51. NIVEL 10ASPECTOS IMPORTANTES EN LA DECLARACIÓN DE SUPERCLASES Y SUBCLASES Cuando una clase hereda (extiende) de otra, hereda todos losatributos y métodos de la superclase, la subclase solo debe incluir:Los nuevos atributos.Los nuevos métodos.Una implementación para los métodos abstractos de la superclase.Los métodos de la superclase para los cuales se quiera cambiar laimplementación. Esto se logra utilizando la misma signatura delmétodo heredado, con esto, el compilador automáticamenteentiende que la nueva clase quiere modificar la implementacióndefinida en la superclase. En el momento de redefinir un método sedebe respetar exactamente la misma signatura.
  • 52. NIVEL 10 POLIMORFISMO Y ASOCIACIÓN DINÁMICA Polimorfismo: Propiedad de los lenguajes orientados a objetos quele permite a una variable tomar como valor un objeto de cualquiera desus subclases. Asociación dinámica: Propiedad que garantiza que la decisión decuál método invocar se toma siempre en tiempo de ejecución.
  • 53. NIVEL 10 ELEMENTOS PRIVADOS Y PROTEGIDOS Hasta el momento hemos definido que todos los atributos sonprivados y que todos los métodos son públicos. En muchos casos es deseable que los métodos de una subclasetengan acceso directo a los métodos de la superclase, sin llegar alextremo de dejarlos públicos para todo el mundo. Se puede utilizar el nuevo tipo de visibilidad denominadoprotected.
  • 54. NIVEL 10 ELEMENTOS PRIVADOS Y PROTEGIDOS Dependiendo de la visibilidad de un elemento (atributo ométodo) es posible restringir o permitir el acceso a ellos de lasiguiente manera:Si es privado ( private ), el acceso está restringido a los métodos dela clase.Si es protegido ( protected ), tienen acceso los métodos de la clasey los métodos de las subclases.Si es público ( public ), todos tienen acceso al elemento.
  • 55. NIVEL 10 ACCESO A MÉTODOS DE LA SUPERCLASE La variable super nos permite acceder a los métodos de lasuperclase cuando:Queremos invocar su método constructor.Queremos invocar el método que estamos redefiniendo.En ningún otro caso es necesario usarla.
  • 56. NIVEL 10 EJERCICIO DE REPASO DE LOS TEMAS VISTOS Se desea desarrollar un programa que genere el número de puntosacadémicos de los egresados de una universidad. Se sabe que por cadatítulo que tenga un egresado se otorgan MÁXIMO los siguientes puntos,teniendo en cuenta el promedio acumulado que haya tenido el egresadoen cada título (de manera proporcional) :Pregrado (Máximo 50 puntos, si sacó 5)Especialización (Máximo 100 puntos, si sacó 5)Maestría (Máximo 200 puntos, si sacó 5)Doctorado (Máximo 400 puntos, si sacó 5)De todos los egresados se conoce el código, y el nombre, la demásinformación depende de los títulos que haya obtenido cada egresado.El objetivo principal inicial de todo el mundo, es que dada la informaciónde UN egresado, se retorne el número de puntos que ha ganado elegresado de acuerdo a sus títulos académicos. Tenga en cuenta queen un futuro cercano dependiendo del título que tenga un egresadose adicionarán nuevos atributos.
  • 57. NIVEL 10 TAREA Definir todo el modelo del mundo para el nuevo ejercicio planteado,incluyendo.InterfacesClases (abstractas y no abstractas)Atributos (privados o protegidos)Métodos (privados o protegidos) (abstractos y no abstractos)
  • 58. NIVEL 10 SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS Definir todo el modelo del mundo para el nuevo ejercicio planteado. <<interface>> Estudiante EgresadoPregrado IEstudiante codigo promedioPregrado nombreEgresadoDoctorado EgresadoMaestria EgresadoEspecializacionnotaProyectoDoctorado promedioMaestria promedioEspecializacion Si TODOS los atributos SON PRIVADOS, a cuantos atributos podría acceder cada clase directamente.
  • 59. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS <<interface>> IEstudiante
  • 60. NIVEL 10 SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS Estudiantecodigonombre
  • 61. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS EgresadoPregrado promedioPregrado
  • 62. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS EgresadoEspecializacion promedioEspecializacion
  • 63. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS EgresadoMaestria promedioMaestria
  • 64. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PRIVADOS EgresadoDoctorado notaProyectoDoctorado
  • 65. NIVEL 10 SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS Definir todo el modelo del mundo para el nuevo ejercicio planteado. <<interface>> Estudiante EgresadoPregrado IEstudiante codigo promedioPregrado nombreEgresadoDoctorado EgresadoMaestria EgresadoEspecializacionnotaProyectoDoctorado promedioMaestria promedioEspecializacion Si TODOS los atributos SON PROTEGIDOS, a cuantos atributos podría acceder cada clase directamente.
  • 66. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS <<interface>> IEstudiante
  • 67. NIVEL 10 SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS Estudiantecodigonombre
  • 68. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS EgresadoPregrado promedioPregrado
  • 69. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS EgresadoEspecializacion promedioEspecializacion
  • 70. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS EgresadoMaestria promedioMaestria
  • 71. NIVEL 10SOLUCIÓN TAREA CON ATRIBUTOS PROTEGIDOS EgresadoDoctorado notaProyectoDoctorado
  • 72. NIVEL 10CLASE PRINCIPAL DEL MUNDO PARA AMBOS CASOS <<interface>>SistemaEgresados estudiante IEstudiante
  • 73. NIVEL 10PREGUNTAS
  • 74. NIVEL 10HOJA DE TRABAJO
  • 75. NIVEL 10 LA CLASE OBJECT Todas las clases de Java heredan de la clase Object de maneraimplícita (no es necesarios colocar el extends). Es la única clase que no tiene superclase. La clase Object NO es abstracta y tiene tres métodos:public boolean equals (Object o): Recibe como parámetro otro objeto yretorna un valor indicando si dicho objeto y el objeto a quién se le llamael método son el mismo.public String toString ( ): Retorna una representación como cadena decaracteres del objeto. Por defecto nombreClase@numero.protected Object clone ( ): Retorna una copia del objeto.
  • 76. NIVEL 10LA CLASE OBJECT
  • 77. NIVEL 10 LA CLASE OBJECT Sirve para garantizar que todos los objetos tengan uncomportamiento común mínimo. Son las base para construir clases adaptables que aprovechen elpolimorfismo y la asociación dinámica. Por ejemplo el ArrayList. En una ArrayList se almacenan objetos de tipo Object, por lo cual enestas contenedoras es posible guardar objetos de cualquier clase.Debido a esto es que es necesario hacer una operación de casting cadavez que se saca un elemento con el método get.
  • 78. NIVEL 10 EXTENSIÓN DE INTERFACES <<interface>> <<interface>> I1 I2 3 métodos propios 5 métodos propios public interface I3 extends I1, I2 <<interface>> { I3 6 métodos propios } La herencia también es aplicable a las interfaces. En este caso seinterpreta como la suma de los contratos de la interfaces de las cualesse hereda.
  • 79. NIVEL 10 USO DEL MECANISMO DE HERENCIA EN NIVELES ANTERIORES En niveles anteriores se ha utilizado la herencia en tres casosespecíficos.Para crear Ventanas.public class InterfazNueva extends JFramepublic class DialogoNuevo extends JDialogPara crear Panelspublic class PanelNuevo extends JPanel implements ActionListenerPara crear Excepciones.public class NuevaException extends Exception
  • 80. NIVEL 10 MANEJO DE MENÚS En Java los menús se proveen utilizando tres clase principales.JMenuBar: contiene los JMenuJMenu: contiene los JMenuItemJMenuItem
  • 81. NIVEL 10 MANEJO DE MENÚS Clases JMenuBar, JMenu y JMenuItem.JMenuBar JMenuJMenuBar( ) JMenu( título )add ( instancia_de_JMenu ) add ( instancia_de_JMenuItem ) addSeparator ( ) JMenuItem JMenuItem( nombre ) setActionCommand ( comando ) addActionListener ( responsable )
  • 82. NIVEL 10 MANEJO DE MENÚSLa barra de menús en el modelo de clases de la interfaz.
  • 83. NIVEL 10 MANEJO DE MENÚSCreación de la barra de menús.
  • 84. NIVEL 10 MANEJO DE MENÚSCreación de la barra de menús.
  • 85. NIVEL 10 MANEJO DE MENÚSCreación de la barra de menús.
  • 86. NIVEL 10 MANEJO DE MENÚSCreación de la barra de menús.
  • 87. NIVEL 10 TEMAS PENDIENTESManejo de eventos del ratónModelo gráfico en JavaManejo de la superficie de dibujoManejo de formas geométricasEvolución del editor
  • 88. NIVEL 10 LABORATORIO DEL NIVEL 10 EN EL LABORATORIO DEL NIVEL SEREPASARAN TODOS LOS TEMAS DEL NIVEL 10
  • 89. NIVEL 10PREGUNTAS
  • 90. NIVEL 10HOJA DE TRABAJO