Hola Christina, cuando te referis a que en la asociacion y la agregacion existe "independencia entre ambas clases", te referis solo a una vez que fueron instanciadas? . porque si el constructor de la clase A requiere recibir un objeto de la clase B para poder instanciar , estariamos hablando de cierta dependencia. No puedo crear un objeto de la clase A sin una instancia de la clase B. Claro que una vez creado el objeto de la clase A, ya su vida no depende necesariamente del otro. y viceversa.
Hola por ejemplo, si tengo una relacion de asociacion: un hombre tiene un auto. Si elimino la instancia de auto, la persona sigue existiendo y a la inversa. Podria tener la persona el atributo auto en null perfectamente. De hecho puedo crear una persona vacia y llenar sus atributos con metodos setter.
@@saezcristinairis-programac8478 Gracias por responder! . Cuando el profe Javier, dice en su video(*) : " si quiero agregar el matiz semántico de que la clase todo no tiene sentido si no tiene sus partes, podemos plasmar eso como una agregacion" , no se refiere entonces a que , literalmente, el objeto depende de sus partes, si no a la interpretación subjetiva de que el objeto necesita su partes para sus propósitos a pesar de poder existir sin ellos. Verdad? Otra duda, para determinar que se trata de una agregacion, además de poder identificar una clase todo y una clase parte, y que son independientes., mencionas que normalmente vamos a encontrar que hay un metodo agregarParte en la clase todo. Esto seria algo que se puede tomar como pauta?, o sea que si no hubiera metodos que permitieran agregar partes puedo considerar que no es agregacion? (*) video de Javier Luis Mercado ua-cam.com/video/kyDmp54k-Ec/v-deo.html
Claro, un ejemplo de agregación es el auto y las ruedas. El auto si le saco las ruedas, puede existir perfectamente. Es mas puedo usar esas ruedas en otro auto
Puedo tener un metodo agregarRuedas(Rueda r), el auto podría no tener ruedas, podria tener todas, podria cambiar sus ruedas con otro auto, etc. Generarlmente tendremos un metodo de agregación. Puedes mirar mi otro video sobre un celular que agrega chips (agregación) y que tiene una batería (composición)
@@saezcristinairis-programac8478 perfecto , me quedo mucho mas claro. Una ultima duda, sobre el ejercicio 1, de la guia 3 extra. Traté de poner una imagen del uml del ejercicio pero me borra el comentario. _____________________________________________________________________ Ej 1 Guia 3 extra: Como vemos en el modelo, una Persona usa un GPS (flecha punteada de dependencia)y el GPS tiene una Posición(flecha continua de asociacion). Con respecto a la clase GPS la lógica de sus métodos especiales es la siguiente: - mover() Este método generará una nueva Posición con valores aleatorios para la latitud y longitud de la misma entre 0 y 1. Esta nueva Posición quedará registrada en la variable atributo “ultimaUbicacion” - obtenerUltimaPosicion() Este método retornará el estado actual de la variable atributo “ultimaUbicacion” En la clase Persona, el método ubicarme() es el que usa el GPS para solicitar que se mueva y luego le pide la última posición que luego mostrará por pantalla. _______________________________________________________________________ Dice que el gps "tiene" una posición, por asociacion (la flecha continua correspondiente a asociacion). Sin embargo observo que en el UML, ni el constructor ni el metodo mover() de gps reciben un objeto posición, por lo que entiendo que deberá ser instanciado dentro de gps. Esto no determina que se trata de una composición en vez de asociacion?, ya que Posición es parte de la composición interna de gps y, como mencionas en el video, el "new" estará en algun lugar en la clase gps, y si esta se destruye, tambien se borra el objeto del tipo posición creado.
La felicito por como explica el tema. Gracias !!!
💪💪💪
Gracias por sus explicaciones, me acabo de suscribir. Un abrazo desde San Luis.
Gracias a vos, pir tu atención
Gracias por tomarte el tiempo de explicarnos las cosas, Cristina!
❤ gracias a vos
genial explicación, felicitaciones!!!!
❤️
43:30
Hola Christina, cuando te referis a que en la asociacion y la agregacion existe "independencia entre ambas clases", te referis solo a una vez que fueron instanciadas? . porque si el constructor de la clase A requiere recibir un objeto de la clase B para poder instanciar , estariamos hablando de cierta dependencia. No puedo crear un objeto de la clase A sin una instancia de la clase B.
Claro que una vez creado el objeto de la clase A, ya su vida no depende necesariamente del otro. y viceversa.
Hola por ejemplo, si tengo una relacion de asociacion: un hombre tiene un auto. Si elimino la instancia de auto, la persona sigue existiendo y a la inversa. Podria tener la persona el atributo auto en null perfectamente. De hecho puedo crear una persona vacia y llenar sus atributos con metodos setter.
@@saezcristinairis-programac8478 Gracias por responder! . Cuando el profe Javier, dice en su video(*) : " si quiero agregar el matiz semántico de que la clase todo no tiene sentido si no tiene sus partes, podemos plasmar eso como una agregacion" , no se refiere entonces a que , literalmente, el objeto depende de sus partes, si no a la interpretación subjetiva de que el objeto necesita su partes para sus propósitos a pesar de poder existir sin ellos. Verdad?
Otra duda, para determinar que se trata de una agregacion, además de poder identificar una clase todo y una clase parte, y que son independientes., mencionas que normalmente vamos a encontrar que hay un metodo agregarParte en la clase todo. Esto seria algo que se puede tomar como pauta?, o sea que si no hubiera metodos que permitieran agregar partes puedo considerar que no es agregacion?
(*) video de Javier Luis Mercado ua-cam.com/video/kyDmp54k-Ec/v-deo.html
Claro, un ejemplo de agregación es el auto y las ruedas. El auto si le saco las ruedas, puede existir perfectamente. Es mas puedo usar esas ruedas en otro auto
Puedo tener un metodo agregarRuedas(Rueda r), el auto podría no tener ruedas, podria tener todas, podria cambiar sus ruedas con otro auto, etc. Generarlmente tendremos un metodo de agregación. Puedes mirar mi otro video sobre un celular que agrega chips (agregación) y que tiene una batería (composición)
@@saezcristinairis-programac8478
perfecto , me quedo mucho mas claro.
Una ultima duda, sobre el ejercicio 1, de la guia 3 extra.
Traté de poner una imagen del uml del ejercicio pero me borra el comentario.
_____________________________________________________________________
Ej 1 Guia 3 extra:
Como vemos en el modelo, una Persona usa un GPS (flecha punteada de dependencia)y el GPS tiene una Posición(flecha continua de asociacion).
Con respecto a la clase GPS la lógica de sus métodos especiales es la siguiente:
- mover() Este método generará una nueva Posición con valores aleatorios para la latitud
y longitud de la misma entre 0 y 1. Esta nueva Posición quedará registrada en la variable
atributo “ultimaUbicacion”
- obtenerUltimaPosicion() Este método retornará el estado actual de la variable atributo
“ultimaUbicacion”
En la clase Persona, el método ubicarme() es el que usa el GPS para solicitar que se mueva y
luego le pide la última posición que luego mostrará por pantalla.
_______________________________________________________________________
Dice que el gps "tiene" una posición, por asociacion (la flecha continua correspondiente a asociacion). Sin embargo observo que en el UML, ni el constructor ni el metodo mover() de gps reciben un objeto posición, por lo que entiendo que deberá ser instanciado dentro de gps. Esto no determina que se trata de una composición en vez de asociacion?, ya que Posición es parte de la composición interna de gps y, como mencionas en el video, el "new" estará en algun lugar en la clase gps, y si esta se destruye, tambien se borra el objeto del tipo posición creado.