Creo que hay partes de la JDK de Java que su uso no es para nada fácil e intuitivo, incluso a veces poco eficiente. Hablo por ejemplo del manejo de ficheros (I/O) y en este caso de calendario, fechas, tiempo, zonas horarias etc.
Resulta realmente lioso hacer uso de ellas para cosas tan sencillas como crear y comparar de fechas o saber cuantos dÃas faltan para una fecha.
De nuevo una librerÃa opensource viene al rescate reimplementando de una manera sencilla esta pata coja de la API. Se trata de la librerÃa Joda, y en su página se define asÃ:
Joda-Time has been created to radically change date and time handling in Java. The JDK classes Date and Calendar are very badly designed, have had numerous bugs and have odd performance effects. Here are some of our reasons for developing and using Joda-Time
Aunque la API es muy grande me ha parecido fácil de utilizarla.
Por cierto para saber cuantos dÃas faltan para un fecha es tan sencillo como lo siguiente:
Days d = Days.daysBetween(startDate, endDate); int days = d.getDays();
El manejo de la entrada/salida en Java es excelente. La API es compleja porque la E/S es un tema complejo y porque es un área crÃtica en lo referente a desempeño. Pero usar esa API es simple porque la mayorÃa de las tareas se puedan hacer con 3 o 4 lÃneas de código si se la conoce bien.
He ahi el problema con lo que dice el amigo, a veces simplificar es ayuda,
segun su manera de pensar creo que apoyaria la idea de seguir programando
aplicaciones empresariales en Assembler, porque es mas y como las tareas de programacion son “complejas” entonces vale que la solucion para saber la fecha tambien lo sea. Creo que por estas razones se han creado Apis de todo tipo. Si no fuera asi, todavia estariamos accesando a bases de datos usando la Api directa de MySQL. Por alguna razon bien especifica es que se inventan las Apis, para poder usar el codigo sin pasar una semana (o mas) tratando de entender porque se deben necesitar “3 o 4 lineas” de codigo para saber la fecha de hoy.
y creo que antes de poner “ignorante” en el titulo de tu respuesta te analices a ti mismo. ya que aqui quien se nota mas ignorante no es precisamente el primero que escribio presentando a Joda. O tal vez piensas que los que hicieron a Joda lo hicieron porque son mas ignorantes aun ? aqui el unico ignorante eres tu.
Me parece excelente.
De hecho he tenido que trabajar en varios proyectos donde se necesita un constante manejo de fechas, y aunque se pueden hacer en “3 o 4 lineas” es realmente un dolor de cabeza usar el API de Java.
Al final uno termina haciendo un “Joda” para cada aplicacion que crea.