domingo, 18 de marzo de 2012

jueves, 15 de marzo de 2012

Creación del Formulario Acerca De


En este formulario se expone la información de los desarrolladores de la aplicación, datos del instructor e información extra trascendente del programa.

sábado, 10 de marzo de 2012

Creación de la clase AlmacenLibreria


Clase AlmacenLibreria: Con ayuda de variables para versiones nos permite escribir y leer la libreria y los documentos y modificar los mismos


Creación de la clase GestorLibrería


Clase GestorLibreria: Maneja las funcionalidaades de una clase para manejar el almacenamiento y modificaciones hechas a una libreria.


miércoles, 29 de febrero de 2012

Creacion del Formulario Gestor Documentos


Maneja las funcionalidaades de una clase para manejar el almacenamiento y modificaciones hechas a una libreria.

Esta clase también agrupa sus controles en group box, con esto se puede agrupar la funcionalidad de los controles, ademas nos da acceso a las propiedades de la librería y los documentos.

martes, 28 de febrero de 2012

lunes, 27 de febrero de 2012

Creación del Formulario Propiedades Libreria



Formulario PropiedadesLibreria Este formulario me va a permitir ver las propiedades de la libreria
y me va a permitir visualizar las propiedades del las librerias.

Este form hereda del form base, en la imagen se puede ver las flechas azules sobre el recuadro blanco que indican los controles que se heredan.

Se puede ver que los controles están almacenados en un panel y un group box que permiten agrupar la funcionalidad de los controles.



Creacion del Formulario Base


Este formulario es el form base que van a heredar los sigueintes formularios como el frmPropiedadesDocumento el frmPropiedadesLibreria por lo tanto los métodos implementados en este form deberán ser protected.


El form base ademas implementara métodos comunes que pueden ser utilizados por los forms que heredan de el, es importante que los métodos sean de tipo virtual, después en las clases que heredan implementaran los métodos override para implementar los métodos.

El propósito de un form base es simplificar y reducir el tamaño del código evitando gastar tiempo innecesario implementado varias veces una funcionalidad que puede ser reutilizada.

martes, 21 de febrero de 2012

Creación de la clase LibreriaDocumento


Clase LibreriaDocumentos – Es una clase de tipo collection de documentos la cual me permitirá el almacenamiento y modificaciones hechas a una librería, manejando también sus elementos.


La clase también implementa dos métodos para agregar y remover elementos de la colección que forma el álbum.


Creación de la clase ControladorLibreria


Clase ControladorLibreria esta clase va a administrar y controlar las librerías creadas en el proyecto.


En esta clase se utilizan solo clases estáticas, que pueden ser instanciadas sin necesidad de crear un objeto.
Se define un dato importante para el almacenamiento de esta con su extensión .lbr, lo que permite que cada documento que se crea con nuestra aplicación es único y solo puede ser abierto por esta.

sábado, 18 de febrero de 2012

Creación de Form de inicio y clases

Después de hacer un reconocimiento de lo que se necesita hacer en el proyecto, se procederá crear los diseños básicos que hemos definido anteriormente.

Se tiene un form inicial con el que abrimos el proyecto, se necesita visualizar los documentos a ser añadidos en cada nueva librería, por lo que utilizaremos un listbox para desplegar la lista de documentos escogidos para añadirlos a nuestra librería.

Esto presenta unas dificultades, como sabemos la librería se compone de varios documentos, por lo que seria necesario una clase de tipo collection que permita manejar este conjunto de documentos. Esta clase se llamara LibreriaDocumentos

Ademas se necesita manejar individualmente cada uno de los datos del documento, por lo que se hace necesario crear esta clase también. Esta clase se llamara Documento

Ademas se necesita una clase que maneje los aspectos de guardar y editar las librerías por lo que se necesita una clase gestor también. Esta clase se llamara GestorLibreria

La creación de estas tres clases se realizara en una librería, un proyecto que contiene las clases y es externo al proyecto que contiene el form, separar así las clases permite que el código mantenga su pureza, ademas de permitirnos mantener el código organizado, y evitar confusiones para el programador.

Comenzaremos con la clase Documento:

Se crean primero una variable miembro para el nombre del documento

Se crea el método para inicializar la variable miembro
Se crean variables y métodos para cada campo que se requiere conocer en un documento


Información sobre cada documento:
•Propietario
•Fecha
•Librería (ejemplo: algebra, física, etc)
•Ubicación del documento
•Notas



















sábado, 11 de febrero de 2012

Brainstorming

Como se menciono en las primeras clases, es importante saber que es lo que se va a hacer antes de hacerlo, por lo que para empezar el proyecto se realizara el brainstorming correspondiente:

El proyecto requiere:


Gestor de Documentos.
–Sistema para gestión de sus documentos.
–Debe permitir clasificar los documentos.
–Debe permitir listar los documentos pertenecientes a una librería en particular.
–Debe permitir agregar metadata sobre los documentos.
–El conjunto de documentos se deberá almacenar en un archivo de texto, con una estructura adecuada.

Con la ayuda de una breve explicación en clase, la cual concuerdo, se ha decidido crear tres clases para el proyecto, una que solamente maneje la parte de las librerías, otra que maneje la parte de documentos, y otra que permita guardar y modificar los cambios realizados.

Se conoce que es importante separar las clases d esta forma para mantener la pureza del código.

Por tanto se creara un form que permita manejar la parte de abrir cualquier documento, no analizarlo pero al menos que presente el path del archivo correspondiente.

Como se dijo que un documento puede pertenecer a algunas librerías, se entiende que esa característica también la escogemos nosotros, es decir, en que librería se almacena cada documento

Se conoce también los datos que se deben tener tanto para las librerías como para los documentos, se tiene:


–Información sobre cada documento:
      • Propietario
      • Fecha
      • Librería (ejemplo: algebra, física, etc)
      • Ubicación del documento
      • Notas
–Información sobre la librería:
      • Descripción
      • Título


Estos datos se podrian ingresar mediante la creacion de otros dos form, para que en cada uno se escriban tales propiedades.

Dos problemas:


1. Si se crea un archivo de tipo librería (podría ser .lib) y después de almacenan los documentos, solamente se podrían guardar los archivos por bloques de librerías... es ese realmente el objetivo?

2. La información que se pretende guardar en un archivo de texto se hace al final de creado este archivo, es decir, después de agregado el conjunto, o por cada uno de los documentos.
Que pasa si se elimina algún archivo?