Ver Mensaje Individual
  #22 (permalink)  
Antiguo 03/02/2009, 15:10
sergabrod
 
Fecha de Ingreso: febrero-2009
Mensajes: 5
Antigüedad: 15 años, 3 meses
Puntos: 0
Hola, coincido con lo que dice Enrique, a veces tampoco hay que enceguecerse con resolver todo OOP, si tu sistema realmente lo amerita perfecto, te puedo apuntar algo respecto a switch y ifs, si tu sistema abusa de ellos es porque realmente no es 100% o quizá ni siquiera lo sea 50%, si esto ocurre tu sistema presenta un acoplamiento importante y deberías estar usando en ese caso el polimorfismo.

En tu problema, donde podes tener diferentes combinaciones de busqueda y no sabes de antemano cuantas combinaciones vas a tener, un diseño elegante sería usar el patrón Decorator, deberias tener una clase abstracta BusquedaDecorator y sus clases que heredan BusquedaAutor, BusquedaEdicion, BusquedaTitulo, etc. y asi una clase por cada atributo sobre el que quieras realizar la búsqueda, esto permite combinar o "decorar" tu búsqueda por todas las combinaciones que necesites, de esta manera agregar o quitar un criterio de busqueda sería transparente para tu diseño.

Saludos.

http://es.wikipedia.org/wiki/Decorat...de_dise%C3%B1o)

Sergio Gabriel Rodriguez

Perdón, cuando escribí "no es 100% o quizá ni siquiera lo sea 50%" me refería a 100% OOP.

Saludos!.

Sergio Gabriel Rodriguez

Última edición por GatorV; 03/02/2009 a las 15:49