El mecanismo de observer es así:
update:, y hay que implementarlo)changed: y addDependent:, que no hay que implementar pero sí usar)Al inicializar todo (antes de que empiece a funcionar) tenés que hacer:
observado addDependent: observador.
Después, el observado necesita avisar que él mismo cambió, y eso lo hace con:
self changed: #variableQueCambió
Pharo mágicamente le va a mandar el mensaje update: #variableQueCambio a todos sus observadores. Entonces, en cada observador tenés que definir el método:
update: nombreDeLoQueCambio
"acá hago lo que sea que quiera hacer el observer."
Algo común para hacer ahí es chequear si me interesa ese nombreDeLoQueCambio, ó bien hacerle preguntas a mi observado (que me guardé de antemano).
