add design pattern by the observer and for the weathe monitor examples