es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tipo sellado de Java con interruptores de patrón vs. visitante de patrón.

Un comentario adicional: Antes de Java 15, para solucionar esto, las personas solían utilizar el patrón “visitante de tipo seguro”. Recomiendo no aprender eso por tu cordura, pero si tienes curiosidad, puedes ver el código que ANTLR genera. Todo ello forma una gran jerarquía de estructuras de datos con diferentes “formas”.

Fuente: sección 2, https://stackoverflow.com/questions/64188082/what-is-the-point-of-a-sealed-interface-in-java/64831364#64831364

En el caso en el que usemos el Visitante para evitar múltiples “instanceof”:
– ¿Cuál es la ventaja de utilizar el patrón Visitante en lugar de utilizar un tipo sellado con coincidencia de patrones de cambio?
– ¿Cuál es la ventaja de utilizar un tipo sellado con coincidencia de patrones de cambio en lugar de utilizar un Visitante?
– ¿Deberíamos dejar de utilizar el Visitante?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    La ventaja de utilizar el patrón Visitor sobre utilizar tipos sellados con coincidencia de patrones de interruptor es que proporciona más flexibilidad y extensibilidad. Con el patrón Visitor, se pueden agregar nuevos comportamientos al código sin modificar el código existente o violar el principio Abierto/Cerrado. En contraste, con los tipos sellados y la coincidencia de patrones de interruptor, agregar nuevos comportamientos requiere modificar el código existente y puede ser más engorroso.
    – La ventaja de utilizar tipos sellados con coincidencia de patrones de interruptor sobre utilizar el patrón Visitor es que es más simple y requiere menos código boilerplate. Los tipos sellados y la coincidencia de patrones de interruptor se pueden utilizar con menos clases y métodos, mientras que el patrón Visitor requiere crear clases visitantes separadas y modificar las clases existentes para implementar la interfaz del visitante.
    – Si seguir utilizando el patrón Visitor depende del caso de uso específico y los requisitos del proyecto de software. En algunos casos, utilizar Visitor puede seguir siendo la mejor opción para la extensibilidad y flexibilidad, mientras que en otros casos, utilizar tipos sellados con coincidencia de patrones de interruptor puede ser más simple y apropiado. En última instancia, depende de los compromisos entre flexibilidad y simplicidad en un contexto dado.

Comments are closed.