Buenas tardes a todos, espero se encuentren bien.
Vimos en clase que la intención del padrón State es permitir a un objeto cambiar su comportamiento cuando cambia su estado interno. Ahora bien, supongamos que para un determinado estado del objeto, ciertas operaciones resultaran inválidas; sería correcto (en el contexto de la aplicación del patrón) lanzar una excepción para esas operaciones?
Entiendo que, en general, hacer eso supondría violar el principio de sustitución, pero me da la sensación que en el contexto del patrón es aceptable y hasta incluso necesario hacerlo (podría ser lanzar una excepción o hacer nada, dependiendo del caso).
Muchas gracias.
Saludos!
Hola Juan Manuel:
Sí, lo que proponés es válido en términos generales. Recordá que no hay una solución única y este tipo de dilemas dependen mucho del contexto puntual donde lo querés aplicar respecto de las demás alternativas que tengas, por lo que no se puede determinar en modo abstracto si el modelado es "correcto".
Te recomiendo que analices qué otras posibilidades tenés para resolver ese problema y las compares de acuerdo a cuál de ellas te permite tener una cohesión más alta.
Saludos,
Tomás
Gracias Tomás por la respuesta.
Saludos,