Annie

Solo disponible en BuenasTareas
  • Páginas : 3 (638 palabras )
  • Descarga(s) : 0
  • Publicado : 28 de abril de 2011
Leer documento completo
Vista previa del texto
Usted tiene un código de tipo que afecta el comportamiento de una clase, pero no se puede utilizar subclases.
Vuelva a colocar el código de tipo con un objeto de estado.




La motivaciónEsto es similar para reemplazar tipo de código con subclases, pero se puede usar si el código del tipo de
cambios durante la vida del objeto o si otra razón impide subclases. Utiliza cualquiera ªpatrón de estado o de la estrategia [Banda de los Cuatro].
Estado y la estrategia son muy similares, por lo que la refactorización es el mismo que lo que usted utiliza, y
realmente no me importa.Elija el modelo que mejor se adapte a las circunstancias específicas. Si usted está
tratando de simplificar un algoritmo único con Reemplazar condicional con polimorfismo, la estrategia
el término másadecuado. Si usted va a mover los datos específicos de cada estado y pensar en el objeto como
estado cambiante, utiliza el patrón de estado.
Mecánica
• Auto-encapsular el código de tipo.
• Crearuna nueva clase, y el nombre después de que el propósito del código tipo. Este es el estado
objeto.
• Añadir las subclases del objeto del estado, uno para cada tipo de código.
?rarr; It is easier toadd the subclasses all at once, rather than one at a
time.
• Create an abstract query in the state object to return the type code. Create overriding
queries of each state object subclass toreturn the correct type code.
• Compile.

? Rarr; Es más fácil añadir las subclases de una sola vez, en lugar de uno en uno
tiempo.
• Crear una consulta de resumen en el objeto de estado paradevolver el código de tipo. Crear imperiosa
consultas de cada subclase estado del objeto a devolver el código de tipo correcto.
• compilar
• Crear un campo en la clase de edad para el objeto nuevoestado.
• Ajuste el código de tipo de consulta sobre la clase original delegar en el objeto del estado.
• Ajuste el código de tipo de ajuste de los métodos de la clase original para asignar una...
tracking img