6 de enero de 2007

arbolProgram1
Aprovechando el nuevo año, la llegada de los Reyes Magos, las vacaciones de Navidad, o todo junto, una entrega más.

En esta ocasión la mayor parte del trabajo ha sido interna y todo el programa ha sido reescrito íntegramente, dentro del entorno de Visual Studio, en un lenguaje de programación distinto al empleado hasta la fecha. Gracias a esto se ha podido mejorar el código, reducir el tamaño del fichero ejecutable, afinar algo en el rendimiento, y abordar algunos matices e ideas que se venían acumulando desde hace algún tiempo: incorporación y extracción de imágenes, uso del portapapeles, flexibilidad con decimales y precisión numérica, control de flujo en ciertos formularios y un muy largo etcétera en cuestiones de menor entidad. En el lado opuesto, la reescritura del monstruito, que ya alcanza sus buenos miles de líneas de código, no ha estado exenta de erratas y errores involuntarios. Tras un razonable tiempo de pruebas todas parecen estar detectadas y corregidas. Espero.

treeiconNo obstante, la novedad más significativa que incorpora está en el Diario de actividad. Por fin cobran pleno sentido las fechas de comienzo y final de actividad, los días no lectivos y los niveles educativos. Una línea horizontal de color verde representa el total de días de clase previstos para un grupo determinado, calculado a partir de las fechas de comienzo y final de actividad, considerando los días de clase de ese grupo según consta en el horario y restando los días no lectivos previamente fijados y que pueden afectar a los días que ese curso tiene clase. Sobre dicha línea verde avanza otra roja que representa los días transcurridos, muy apropiada para ponernos nerviosos a los que tendemos a avanzar más lentos de lo que debiéramos.
Y la segunda novedad: el esquema de la programación asociada al diario de actividad. El durante tanto tiempo enigmático icono de árbol de elementos ahora despliega un campo, recuadro en el que se pueden ir incorporando las materias, temas y actividades de la programación. Cada uno se identifica con un número que sigue las convenciones de la notación decimal, hasta cuatro dígitos, y en función de su nivel quedará convenientemente organizado en el árbol resultante.

Este esquema tiene, por ahora, un doble propósito. Por una parte es un compendio de materiales y guiones útil para tener siempre a mano en el aula; por la otra, actúa como señalador de actividad. A cada elemento se le puede (más bien se le debe) asociar un tiempo estimado en minutos, y ese valor permite conocer el tiempo previsto para un tema o unidad didáctica en concreto, o para todo el curso, y también se emplea para ser contrastado con el tiempo transcurrido de acuerdo con la fecha de inicio, el horario de clase y los días no lectivos. Así, en la pantalla principal del Diario siempre se mostrará un rótulo informando de la actividad o materia que se debe realizar o impartir cada día conforme a lo definido en el árbol de elementos y a los tiempos en él establecidos.

Para todo esto ha habido que modificar la definición de la tabla temprog y añadirle un nuevo campo, asignatura. El programa arranca perfectamente sin necesidad de usar esta tabla, pero para evitar errores que empezarían a manifestarse al acceder al Diario de actividad, se debe corregir esta anomalía cuanto antes. Como viendo siendo norma desde la entrega anterior, nada más finalizar el primer arranque se debe acudir a Archivo->Base de datos->Verificar para que detecte la inexistencia del campo y proceda a crearlo, sin más contratiempo.

Que, por cierto, el menú principal ha cambiado también; ya no es Archivo->Base de datos sino Inp->Base de datos, de la misma forma que ya no hay un menú de Edición sino que sus funciones aparecen en un menú contextual allí donde los campos permiten esta operación. Se ha tratado de avanzar en la coherencia de las formas y las apariencias. "Archivo" en este caso no tenía ninguna razón de ser puesto que el único fichero que maneja el programa no admite intervenciones directas desde éste; era una convención absurda y residual.

Otra novedad a partir de esta entrega es la distribución de un único ejecutable, independientemente de la versión de sistema operativo. Al menos está comprobado su correcto funcionamiento con Pocket PC 2002, Windows Mobile 2003, 2003 SE y Mobile 5.0, y procesadores ARM, XScale (ARMV4) y TI Omap 850, identificado este último por .NET como ARMV4T. Quizá la única rareza que precise ejecutable especial sean los procesadores tipo Hitachi SH3, MIPS... que posiblemente ni les suenen a la mayoría. Esperemos que esta unificación de ejecutables no sea prematura o precipitada.


Seguimos viéndonos y haciendo excelentes amigos en los foros de todopocketpc.com. Feliz Año Nuevo.