Problema
¿Quién es el responsable cuando el comportamiento varía en función del tipo? ¿Cómo manejar las alternativas basadas en el tipo1? ¿Cómo crear componentes software conectable (pluggable)2?
¿Quién es el responsable cuando el comportamiento varía en función del tipo? ¿Cómo manejar las alternativas basadas en el tipo1? ¿Cómo crear componentes software conectable (pluggable)2?
Cuando las alternativas o comportamientos relacionados varían según el tipo (clase), asigne la responsabilidad del comportamiento –utilizando operaciones polimórficas- a los tipos para los que varía el comportamiento.
1 Alternativas basadas en el tipo: La variación condicional es un tema fundamental en los programas. Si se diseña un programa utilizando sentencias de lógica condicional if-then-else o case, entonces, si aparece una nueva variación, requiere la modificación de la lógica de casos. Este enfoque dificulta que el programa se extienda con facilidad con nuevas variaciones porque se tiende a necesitar los cambios en varios sitios –en donde quiera que exista la lógica condicional.
2 Componentes software conectables: Viendo los componentes en las relaciones cliente-servidor, ¿cómo podemos sustituir un componente del servidor por otro, sin afectar al cliente?
Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0