Proyecto en marcha
El proyecto ya ha comenzado, y hago un pequeño resumen de la primera semana:
- La primera tarea, toma de contacto con .NET y elaboración de los primeros objetos de negocio (EEmpleado, EUsuario y EMecanico), se desarrollo con mucha sencillez y rapidez. Habrá que profundizar después en estas clases, ya que de momento sólo ofrecen sus propiedades y punto.
- A continuación creamos un formulario FEmpleado que conectamos usando ObjectDataSource a nuestra clase EEmpleado. Fue muy sencillo, la verdad es que en .NET 2005 han hecho un gran trabajo con esta fuente de datos, al menos en primera instancia (ya le daremos leña más adelante), tardamos 5 minutos en conectar los controles y en ver como se actualizaba el objeto y cómo se actualizaba el control al cambiar el objeto. Una gozada.
- Lo siguiente sabíamos que iba a ser más costoso: la persistencia. Para esto, comenzamos por definir las etiquetas Tabla y Campo para nuestros objetos de negocio, como Attributes de C#. Su utilización fue sencilla, y tras añadir los atributos CampoClave (para la clave primaria) y CampoReferencia (para las claves foráneas), ya esta semana estamos trabajando en aprovechar al máximo esta información de que disponemos, ya no sólo para efectuar la persistencia, sino incluso para crear la estructura de la base de datos a partir de las clases de negocio, o para actualizar una base de datos existente cuando cambie el programa (o sea, la capa de negocio). Todo esto está muy bien, pero para un proyecto de iniciación como es este no queremos pararnos demasiado en estas etapas, así que una vez concluida la generación de tablas vamos a pasar de la actualización y nos meteremos a saco con la persistencia de las clases, la clase CPersistor que nos permita leer y guardar objetos de negocio de la base de datos con un mínimo esfuerzo.
Por otro lado, también han surgido ideas para ampliar la utilización de estos atributos a su uso en el rellenado de combos (nos dan la columna clave, y el contenido lo obtenemos con ToString; aunque quizá no sea lo más conveniente, sino heredar Id de ENegocio y así contar siempre con ese valor igual que contamos siempre con ToString) o la generación automática de consultas (listados) a partir de objetos de negocio, seleccionando qué columnas queremos ver (qué campos), incluso con la posibilidad de navegar entre objetos según sus relaciones (con la información de la etiqueta CampoReferencia podemos construir los JOIN en la consulta).

0 Comments:
Publicar un comentario
<< Home