Estoy escribiendo una aplicación web que permite a los usuarios inscribirse en cursos universitarios. Los cursos pueden impartirse en determinados intervalos de tiempo; un intervalo de tiempo es un día (en una semana, es decir, domingo, lunes, etc.) y una hora. Hay espacios de tiempo fijos en los que se pueden impartir cursos. Mi pregunta es: ¿cuál es la mejor manera de implementar estos espacios de tiempo?Cómo representar los intervalos de tiempo en un horario
Un pensamiento que tuve fue el uso de una enumeración, pero luego hay 70 espacios de tiempo. Así que pensé en tener dos enumeraciones, una para el día de la semana (aunque apuesto a que ya existe en algún lugar, ¿sabes dónde puedo encontrar una enumeración existente de este tipo?) Y otra para las horas permitidas (por ejemplo, 8:00). , 9:00, 10:00, etc.) y tienen una clase Timeslot
que contiene ambos.
Sin embargo, creo que debe haber una solución más elegante en la que no haya pensado, ¿qué opinas?
Hola @Amir! Estos intervalos de tiempo también contienen la duración? ¿Por qué quieres instanciarlos a todos? – nick2083
Solo quiero que todas las personas recuerden que no todos los días tienen 24 horas que realmente deberían tenerse en cuenta para cada solución. Personalmente, solo crearía una clase de ranura de tiempo que almacena el desplazamiento desde el lunes 00:00 (y si no todas las ranuras de tiempo tienen que ser de igual longitud y un rango final exclusivo), parece el más simple para trabajar.Para el resultado, podemos (fácilmente no es fácil, pero Jodatime debe cumplir con esa tarea) calcular el día/la hora correctos. – Voo
No todo tiene que depender de JodaTime, parece ser la respuesta a todos estos días. Además, parece que el no todos los días tiene 24 horas de restricción realmente no se aplica aquí. Especialmente porque nunca he visto una clase en todos mis estudios universitarios que duró más de 5 horas (muy por debajo del ciclo de día completo) – Woot4Moo