Foros del Web » Programación para mayores de 30 ;) » Programación General »

problema de diseño

Estas en el tema de problema de diseño en el foro de Programación General en Foros del Web. Estimados: Tengo una duda con el diseño de una aplicación. resulta que para una entidad, realizo mediciones que pueden ser de diversos tipos, y cada ...
  #1 (permalink)  
Antiguo 10/05/2011, 08:36
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años, 6 meses
Puntos: 2
problema de diseño

Estimados:

Tengo una duda con el diseño de una aplicación.

resulta que para una entidad, realizo mediciones que pueden ser de diversos tipos, y cada medición tiene x cantidad de determinaciones.
Supongamos:

entidad 1:
----Mediciónes:
---------Ensayo.
-----------Array de valores.
---------Ensayo2.
------------Valor
---------Ensayo 3:
-----------Array de valores


el diseño ideal, sería una clase base medición y clases específicas para cada tipo de ensayo.
El tema es que el usuario quiere definir los tipos de mediciones en una tabla, es decir que no tengo control de cuantas son.
Cómo solventarían este tema?

Muchas gracias desde ya.
  #2 (permalink)  
Antiguo 11/05/2011, 05:34
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 10 meses
Puntos: 39
Respuesta: problema de diseño

La solución que propones como ideal me parece perfecta, pero no logro entender cual es el problema que encuentras a que el usuario defina los tipos de mediciones en una tabla (quizás no entendí muy bien tú problema). Si pudieses explicar más tú problema para que pueda entenderlo quizás pueda ayudarte.
  #3 (permalink)  
Antiguo 11/05/2011, 06:28
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años, 6 meses
Puntos: 2
Respuesta: problema de diseño

Gracias por la respuesta.

El tema es que las mediciones tienen determinaciones distintas (atributos distintos).
Por ejemplo, si el usuario selecciona la opción de medición x, se tiene en cuenta los atributos z,c,y v
en cambio para medir Y se tienen los atributos q,w,e.

es decir, cada medición tiene su especificidad, que es diferente a la de otra medición.
a lo mejor me estoy enroscando, pero no encuentro la forma de hacerlo

Saludos
  #4 (permalink)  
Antiguo 11/05/2011, 06:39
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 10 meses
Puntos: 39
Respuesta: problema de diseño

Entendí mejor (era como yo suponía), la solución que planteas me sigue pareciendo perfecta, lo que no veo es el problema a la hora de que el usuario seleccione el tipo de medición.
  #5 (permalink)  
Antiguo 11/05/2011, 06:54
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años, 6 meses
Puntos: 2
Respuesta: problema de diseño

A lo mejor no me expresé correctamente.
El usuario da de alta una determinación nueva y yo no se de antemano cuales son los atributos que esta tiene.
Si supiera podría generar las clases base, pero el alta de las determinaciones se da en producción.
  #6 (permalink)  
Antiguo 11/05/2011, 07:01
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 9 meses
Puntos: 89
Respuesta: problema de diseño

Puedes hacer una clase (o estructura) que sea atributo/valor y crear un array de esa clase como atributo de la clase medicion.

Cada vez que cree una medicion, vas a base de datos, ves los atributos que se tienen en cuenta e inicializas el array con esos datos.

No se si se entiende lo que quiero decir exactamente.
  #7 (permalink)  
Antiguo 11/05/2011, 07:29
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años, 6 meses
Puntos: 2
Respuesta: problema de diseño

Gracias por la respuesta.
Había pensado en una solución parecida a esa, almacenando un xml en un campo de la medición, pero quería descartar antes que no exista una opción mas POO.
  #8 (permalink)  
Antiguo 11/05/2011, 12:37
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 10 meses
Puntos: 39
Respuesta: problema de diseño

Creo que ya entendí bien tú problema.

Si el usuario crea un nuevo tipo de medición este necesita su clase con sus atributos para ser POO. El problema que tienes es que quieres generar una clase en base a lo que indica el usuario, es decir, crear código, y eso no es POO.

Debes aplicar la solución ideal que encontraste, esa si es POO, y si se quiere un nuevo tipo de medición implementar una clase más con los atributos que correspondan. Crear una nueva medición es implementar una clase más, no es indicar el nombre y que atributos tiene. Si intenta usar/crear un tipo de medición que no existe simplemente no debes permitirlo.

Eso para que sea POO. Si esa solución no le gusta al usuario entonces tendrás que buscar una alternativa, pero entonces ya no sería POO o sería todo POO menos esa parte. En cualquier caso no sería POO al 100%.
  #9 (permalink)  
Antiguo 11/05/2011, 12:47
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años, 6 meses
Puntos: 2
Respuesta: problema de diseño

Muchas Gracias Ruben. me queda claro ahora el concepto.

Saludos

Etiquetas: diseño, ingeniería-del-software-y-gestión-de-proyectos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:09.